aboutsummaryrefslogtreecommitdiffstats
path: root/docs/developer_info/Building_SO.rst
diff options
context:
space:
mode:
authorseshukm <seshu.kumar.m@huawei.com>2018-08-30 18:47:37 +0800
committerSeshu Kumar M <seshu.kumar.m@huawei.com>2018-08-30 13:22:33 +0000
commit9d632ce8fe51bc7ebda2c58971e8d3b7ca78138c (patch)
tree946f4b173cc29d877ad3ce481ca475384ba85fb1 /docs/developer_info/Building_SO.rst
parentec230e7dddc0835b280cdefda41816113695124a (diff)
Fix the readthedocs
Fix to Increase the modularity of the developer info in readthedocs Issue-ID: SO-675 Change-Id: I9ade5a64c2c60207c38d63f44a583677924b8dd9 Signed-off-by: seshukm <seshu.kumar.m@huawei.com>
Diffstat (limited to 'docs/developer_info/Building_SO.rst')
-rw-r--r--docs/developer_info/Building_SO.rst81
1 files changed, 81 insertions, 0 deletions
diff --git a/docs/developer_info/Building_SO.rst b/docs/developer_info/Building_SO.rst
new file mode 100644
index 0000000000..7d68e433cc
--- /dev/null
+++ b/docs/developer_info/Building_SO.rst
@@ -0,0 +1,81 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+.. Copyright 2018 Huawei Technologies Co., Ltd.
+
+Building SO
+============
+
+Build software with unit tests
+------------------------------
+
+.. code-block:: bash
+
+ cd $HOME/onap/workspace/SO/libs
+
+ $HOME/onap/apache-maven-3.3.9/bin/mvn -s $HOME/onap/.m2/settings.xml clean install
+
+ cd $HOME/onap/workspace/SO/so
+
+ $HOME/onap/apache-maven-3.3.9/bin/mvn -s $HOME/onap/.m2/settings.xml clean install
+
+Build software without unit tests
+----------------------------------
+
+.. code-block:: bash
+
+ cd $HOME/onap/workspace/SO/libs
+
+ $HOME/onap/apache-maven-3.3.9/bin/mvn -s $HOME/onap/.m2/settings.xml -DskipTests -Dmaven.test.skip=true clean install
+
+ cd $HOME/onap/workspace/SO/so
+
+ $HOME/onap/apache-maven-3.3.9/bin/mvn -s $HOME/onap/.m2/settings.xml -DskipTests -Dmaven.test.skip=true clean install
+
+Build docker images
+--------------------
+
+SO docker images are built using the "docker" maven profile.
+
+During the build, the chef-repo and so-docker repositories are cloned from gerrit into the "so" directory structure. Extra definitions are required in the build environment to make this happen. You may need to adjust the definition of mso.chef.git.url.prefix to match the way you authenticate yourself when performing git clone.
+
+If you are behind a corporate firewall, you can specify proxy definitions for the constructed docker images.
+
+**Remove existing docker containers and images**
+
+.. code-block:: bash
+
+ docker stop $(docker ps -qa)
+
+ docker rm $(docker ps -aq)
+
+ docker rmi -f $(docker images -q)
+
+**Build docker images (without proxy definition):**
+
+.. code-block:: bash
+
+ cd $HOME/onap/workspace/SO/so/packages
+
+ $HOME/onap/apache-maven-3.3.9/bin/mvn -s $HOME/onap/.m2/settings.xml clean install -P docker
+ -Dmso.chef.git.url.prefix=ssh://$USER@gerrit.onap.org:29418 -Dmso.chef.git.branchname=master
+ -Dmso.chef.git.url.suffix.chef.repo=so/chef-repo -Dmso.chef.git.url.suffix.chef.config=so/so-config
+ -Ddocker.buildArg.http_proxy=http://one.proxy.att.com:8080
+ -Ddocker.buildArg.https_proxy=http://one.proxy.att.com:8080
+
+**Build docker images (with proxy definition):**
+
+.. code-block:: bash
+
+ cd $HOME/onap/workspace/SO/so/packages
+
+ $HOME/onap/apache-maven-3.3.9/bin/mvn -s $HOME/onap/.m2/settings.xml clean install -P docker
+ -Dmso.chef.git.url.prefix=ssh://$USER@gerrit.onap.org:29418 -Dmso.chef.git.branchname=master
+ -Dmso.chef.git.url.suffix.chef.repo=so/chef-repo -Dmso.chef.git.url.suffix.chef.config=so/so-config
+ -Ddocker.buildArg.http_proxy=http://proxyhost:port -Ddocker.buildArg.https_proxy=http://proxyhost:port
+
+Build with Integration Tests
+-----------------------------
+
+This is done exactly as described for building docker images, except that the maven profile to use is "with-integration-tests" instead of "docker". Integration tests are executed inside docker containers constructed by the build.
+
+