diff options
author | Gary Wu <gary.i.wu@huawei.com> | 2017-06-16 13:44:28 -0700 |
---|---|---|
committer | Gary Wu <gary.i.wu@huawei.com> | 2017-06-16 13:44:28 -0700 |
commit | 213a8351fd266294e17a862b4d223c1968800a09 (patch) | |
tree | 0eaa87c3253da9f65fcbaf514c6b2baaf06fa162 /bootstrap/jenkins/vagrant/jjb | |
parent | 06a50674c025c198585a6de4e6bb035cde63832d (diff) |
Added vagrant setup for a Jenkins system for ONAP
Add a set of vagrant scripts that will set up a
local Jenkins environment with pre-defined jobs
to build all the ONAP java code and docker images.
Change-Id: I67ed254bcb38a7be989b7c2861fd3ea4ec9c66f2
Signed-off-by: Gary Wu <gary.i.wu@huawei.com>
Diffstat (limited to 'bootstrap/jenkins/vagrant/jjb')
-rw-r--r-- | bootstrap/jenkins/vagrant/jjb/docker-jobs.yaml | 76 | ||||
-rw-r--r-- | bootstrap/jenkins/vagrant/jjb/include-docker-login.sh | 14 | ||||
-rw-r--r-- | bootstrap/jenkins/vagrant/jjb/java-jobs.yaml | 167 | ||||
-rw-r--r-- | bootstrap/jenkins/vagrant/jjb/template.yaml | 76 |
4 files changed, 333 insertions, 0 deletions
diff --git a/bootstrap/jenkins/vagrant/jjb/docker-jobs.yaml b/bootstrap/jenkins/vagrant/jjb/docker-jobs.yaml new file mode 100644 index 000000000..5925b5d01 --- /dev/null +++ b/bootstrap/jenkins/vagrant/jjb/docker-jobs.yaml @@ -0,0 +1,76 @@ +- project: + name: onap-docker-with-pom + jobs: + - 'docker-with-pom' + project: + - 'aai_aai-service_ajsc-aai': + repo: 'aai/aai-service' + pom: 'ajsc-aai/pom.xml' + mvn-options: 'docker:build' + - 'aai_data-router': + repo: 'aai/data-router' + pom: 'pom.xml' + mvn-options: 'docker:build' + - 'aai_model-loader': + repo: 'aai/model-loader' + pom: 'pom.xml' + mvn-options: 'docker:build' + - 'aai_resources_aai-resources': + repo: 'aai/resources' + pom: 'aai-resources/pom.xml' + mvn-options: 'docker:build' + - 'aai_search-data-service': + repo: 'aai/search-data-service' + mvn-options: 'docker:build' + - 'aai_sparky-be': + repo: 'aai/sparky-be' + mvn-options: 'docker:build' + - 'aai_traversal_aai-traversal': + repo: 'aai/traversal' + pom: 'aai-traversal/pom.xml' + mvn-options: 'docker:build' + - 'appc': + repo: 'appc/deployment' + mvn-options: '-P docker' + - 'dcae_dcae-controller': + repo: 'dcae/demo' + shell-cmd: 'bash dcae-demo-controller/src/main/docker-build/build.sh' + - 'dcae_dcae-dmaapbc': + repo: 'dcae/dmaapbc' + shell-cmd: 'docker build -f ./Dockerfile .' + - 'dcae_dcae-inventory': + repo: 'dcae/dcae-inventory' + mvn-options: 'docker:build' + - 'mso': + repo: 'mso' + pom: 'packages/docker/pom.xml' + mvn-options: '-P docker' + - 'policy': + repo: 'policy/docker' + shell-cmd: './docker_build.sh' + - 'portal_ecomp-portal-widget-ms': + repo: 'portal' + pom: 'ecomp-portal-widget-ms/pom.xml' + mvn-options: 'docker:build' + - 'sdc': + repo: 'sdc' + pom: 'pom.xml' + mvn-options: '-P docker' + - 'sdnc': + repo: 'sdnc/oam' + mvn-options: '-P docker' + - 'vid': + repo: 'vid' + mvn-options: '-P docker' + +- project: + name: onap-docker-without-pom + jobs: + - 'docker-without-pom' + project: + - 'dcae_dcae-orch-dispatcher': + repo: 'dcae/orch-dispatcher' + shell-cmd: 'docker build -f ./Dockerfile .' + - 'portal': + repo: 'portal' + shell-cmd: 'git -C ecompsdkos pull || git clone $GIT_NO_PROJECT/ecompsdkos; git -C dmaapbc pull || git clone $GIT_NO_PROJECT/ui/dmaapbc dmaapbc; cd deliveries; chmod +x *.sh; ./run.sh' diff --git a/bootstrap/jenkins/vagrant/jjb/include-docker-login.sh b/bootstrap/jenkins/vagrant/jjb/include-docker-login.sh new file mode 100644 index 000000000..561a91f5f --- /dev/null +++ b/bootstrap/jenkins/vagrant/jjb/include-docker-login.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +# vim: ts=4 sw=4 sts=4 et : + +DOCKER_REPOSITORIES="nexus3.onap.org:10001 \ + nexus3.onap.org:10002 \ + nexus3.onap.org:10003 \ + nexus3.onap.org:10004" + +for DOCKER_REPOSITORY in $DOCKER_REPOSITORIES; +do + echo $DOCKER_REPOSITORY + docker login $DOCKER_REPOSITORY -u "anonymous" -p "anonymous" +done diff --git a/bootstrap/jenkins/vagrant/jjb/java-jobs.yaml b/bootstrap/jenkins/vagrant/jjb/java-jobs.yaml new file mode 100644 index 000000000..570802ee5 --- /dev/null +++ b/bootstrap/jenkins/vagrant/jjb/java-jobs.yaml @@ -0,0 +1,167 @@ +- project: + name: onap-java + jobs: + - 'java-{project}' + project: + - 'aai_aai-common': + repo: 'aai/aai-common' + pom: 'pom.xml' + - 'aai_aai-service': + repo: 'aai/aai-service' + pom: 'pom.xml' + - 'aai_data-router': + repo: 'aai/data-router' + pom: 'pom.xml' + - 'aai_logging-service': + repo: 'aai/logging-service' + pom: 'pom.xml' + - 'aai_model-loader': + repo: 'aai/model-loader' + pom: 'pom.xml' + - 'aai_resources': + repo: 'aai/resources' + pom: 'pom.xml' + - 'aai_rest-client': + repo: 'aai/rest-client' + pom: 'pom.xml' + - 'aai_router-core': + repo: 'aai/router-core' + pom: 'pom.xml' + - 'aai_search-data-service': + repo: 'aai/search-data-service' + pom: 'pom.xml' + - 'aai_sparky-fe': + repo: 'aai/sparky-fe' + pom: 'pom.xml' + - 'aai_traversal': + repo: 'aai/traversal' + pom: 'pom.xml' + - 'appc': + repo: 'appc' + pom: 'pom.xml' + - 'appc_deployment': + repo: 'appc/deployment' + pom: 'pom.xml' + - 'dcae_apod_analytics': + repo: 'dcae/apod/analytics' + pom: 'pom.xml' + - 'dcae_collectors_ves': + repo: 'dcae/collectors/ves' + pom: 'pom.xml' + - 'dcae_controller': + repo: 'dcae/controller' + pom: 'pom.xml' + - 'dcae_controller_analytics': + repo: 'dcae/controller/analytics' + pom: 'pom.xml' + - 'dcae_dcae-inventory': + repo: 'dcae/dcae-inventory' + pom: 'pom.xml' + - 'dcae_demo': + repo: 'dcae/demo' + pom: 'pom.xml' + - 'dcae_dmaapbc': + repo: 'dcae/dmaapbc' + pom: 'pom.xml' + - 'dcae_operation_utils': + repo: 'dcae/operation/utils' + pom: 'pom.xml' + - 'dcae_pgaas_cdf_src_cdf-prop-value_cdf-prop-value': + repo: 'dcae/pgaas' + pom: 'cdf/src/cdf-prop-value/cdf-prop-value/pom.xml' + - 'dcae_pgaas_cdf_src_cdf-prop-value_cdf-util': + repo: 'dcae/pgaas' + pom: 'cdf/src/cdf-prop-value/cdf-util/pom.xml' + - 'demo': + repo: 'demo' + pom: 'pom.xml' + - 'ecompsdkos_ecomp-sdk': + repo: 'ecompsdkos' + pom: 'ecomp-sdk/pom.xml' + - 'mso': + repo: 'mso' + pom: 'pom.xml' + - 'mso_libs': + repo: 'mso/libs' + pom: 'pom.xml' + - 'ncomp_cdap': + repo: 'ncomp/cdap' + pom: 'pom.xml' + - 'ncomp_core': + repo: 'ncomp/core' + pom: 'pom.xml' + - 'ncomp_docker': + repo: 'ncomp/docker' + pom: 'pom.xml' + - 'ncomp_maven': + repo: 'ncomp/maven' + pom: 'pom.xml' + - 'ncomp_openstack': + repo: 'ncomp/openstack' + pom: 'pom.xml' + - 'ncomp_sirius_manager': + repo: 'ncomp/sirius/manager' + pom: 'pom.xml' + - 'ncomp_utils': + repo: 'ncomp/utils' + pom: 'pom.xml' + - 'policy_common': + repo: 'policy/common' + pom: 'pom.xml' + - 'policy_docker': + repo: 'policy/docker' + pom: 'pom.xml' + - 'policy_drools-applications': + repo: 'policy/drools-applications' + pom: 'pom.xml' + - 'policy_drools-pdp': + repo: 'policy/drools-pdp' + pom: 'pom.xml' + - 'policy_engine': + repo: 'policy/engine' + pom: 'pom.xml' + - 'portal': + repo: 'portal' + pom: 'pom.xml' + - 'sdc': + repo: 'sdc' + pom: 'pom.xml' + - 'sdc_jtosca': + repo: 'sdc/jtosca' + pom: 'pom.xml' + - 'sdc_sdc-distribution-client': + repo: 'sdc/sdc-distribution-client' + pom: 'pom.xml' + - 'sdc_sdc-titan-cassandra': + repo: 'sdc/sdc-titan-cassandra' + pom: 'pom.xml' + - 'sdc_sdc-tosca': + repo: 'sdc/sdc-tosca' + pom: 'pom.xml' + - 'sdc_sdc_common': + repo: 'sdc/sdc_common' + pom: 'pom.xml' + - 'sdnc_adaptors': + repo: 'sdnc/adaptors' + pom: 'pom.xml' + - 'sdnc_core': + repo: 'sdnc/core' + pom: 'pom.xml' + - 'sdnc_northbound': + repo: 'sdnc/northbound' + pom: 'pom.xml' + - 'sdnc_oam': + repo: 'sdnc/oam' + pom: 'pom.xml' + - 'sdnc_plugins': + repo: 'sdnc/plugins' + pom: 'pom.xml' + - 'ui_dmaapbc': + repo: 'ui/dmaapbc' + pom: 'pom.xml' + - 'vid': + repo: 'vid' + pom: 'pom.xml' + - 'vid_asdcclient': + repo: 'vid/asdcclient' + pom: 'pom.xml' diff --git a/bootstrap/jenkins/vagrant/jjb/template.yaml b/bootstrap/jenkins/vagrant/jjb/template.yaml new file mode 100644 index 000000000..e035583ed --- /dev/null +++ b/bootstrap/jenkins/vagrant/jjb/template.yaml @@ -0,0 +1,76 @@ +- builder: + name: docker-login + builders: + - shell: !include-raw: include-docker-login.sh + +- job-template: + name: 'java-{project}' + project-type: freestyle + scm: + - git: + url: 'http://gerrit.onap.org/r/{repo}' + branches: + - '*/master' + wipe-workspace: false + skip-tag: true + timeout: 30 + builders: + - maven-target: + goals: '-B clean install' + pom: '{pom}' + properties: + - skipTests=true + +- job-template: + id: docker-with-pom + name: 'docker-{project}' + project-type: freestyle + pom: 'pom.xml' + mvn-options: '' + shell-cmd: '' + scm: + - git: + url: 'http://gerrit.onap.org/r/{repo}' + branches: + - '*/master' + wipe-workspace: false + skip-tag: true + timeout: 30 + properties: + - inject: + properties-content: | + GIT_NO_PROJECT=http://gerrit.onap.org/r + builders: + - docker-login + - maven-target: + goals: '-B clean package {mvn-options}' + pom: '{pom}' + properties: + - skipTests=true + - docker.pull.registry=nexus3.onap.org:10001 + - docker.push.registry=nexus3.onap.org:10003 + - shell: "{shell-cmd}" + +- job-template: + id: docker-without-pom + name: 'docker-{project}' + project-type: freestyle + shell-cmd: '' + scm: + - git: + url: 'http://gerrit.onap.org/r/{repo}' + branches: + - '*/master' + wipe-workspace: false + skip-tag: true + timeout: 30 + properties: + - inject: + properties-content: | + GIT_NO_PROJECT=http://gerrit.onap.org/r + GLOBAL_SETTINGS_FILE=/var/lib/jenkins/.m2/settings.xml + SETTINGS_FILE=/var/lib/jenkins/.m2/settings.xml + MVN=mvn + builders: + - docker-login + - shell: "{shell-cmd}" |