Build software with unit tests
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
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
docker stop $(docker ps -qa)
docker rm $(docker ps -aq)
docker rmi -f $(docker images -q)
Build docker images (without proxy definition):
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):
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.
2 Comments
kapil gidwani
I have successfully built the project on my local machine. Now how can i run it locally to explore the project functionalities ?
Rajiv Vishwkarma
in all the sections I am confused a bit as no proper comments are given to run the commands.
like in Build software with unit tests this section we are changing the directory to libs but running the commands from maven bin folder.
Should I run the command from the folder where I have created the repository.