Add template to build release docker image 41/51041/5
authorDenes Nemeth <denes.nemeth@nokia.com>
Fri, 8 Jun 2018 13:10:19 +0000 (15:10 +0200)
committerDenes Nemeth <denes.nemeth@nokia.com>
Sun, 10 Jun 2018 21:28:54 +0000 (23:28 +0200)
The release docker image is built from artifacts in the release repo.
This job is only triggered manually by Linux foundation, when a release
needs to be built. The release builder still publishes to the staging repo.
The images is planed to be moved from staging repo to the release repo
manually.

Change-Id: I943494d6826aa8f4e9186faa8c82377aa8c5b09f
Issue-ID: VFC-728
Signed-off-by: Denes Nemeth <denes.nemeth@nokia.com>
jjb/global-templates-docker.yaml
jjb/vfc/vfc-nfvo-driver-vnfm-svnfm-nokiav2.yaml

index 8145efa..b1db09a 100644 (file)
           server: '{server-name}'
           project: '{project}'
           branch: '{branch}'
+
+- job-template:
+    name: '{project-name}-{subproject}-{stream}-release-version-docker-no-sonar'
+    # Job template for Docker final release job
+    #
+    # The purpose of this job template is to run "docker build and docker push"
+    # for projects using this template.
+    #
+    # Required Variables:
+    #     branch:    git branch (eg. stable/lithium or master)
+    <<: *docker_job_boiler_plate
+
+    docker_registry: '$DOCKER_REGISTRY:10003'
+
+    scm:
+      - lf-infra-gerrit-scm:
+          jenkins-ssh-credential: '{jenkins-ssh-credential}'
+          git-url: '$GIT_URL/$PROJECT'
+          refspec: '$GERRIT_REFSPEC'
+          branch: '$GERRIT_BRANCH'
+          submodule-recursive: true
+          choosing-strategy: default
+
+    builders:
+      - lf-infra-docker-login:
+          global-settings-file: 'global-settings'
+          settings-file: '{mvn-settings}'
+      - shell: '{pre_build_script}'
+      - inject:
+          # Docker registry is purposely not using an '_' so as to not conflict
+          # with the Jenkins global env var
+          properties-content: |
+            DOCKER_ARGS={docker_build_args}
+            DOCKER_NAME={docker_name}
+            DOCKER_ROOT={docker_root}
+            DOCKER_TAG={docker_tag}
+            DOCKERREGISTRY={docker_registry}
+            BUILD_MODE=STAGING
+
+      # Do the docker build
+      - shell: !include-raw: ../shell/snapshot-strip.sh
+      - shell: !include-raw: ../shell/docker-build.sh
+      - inject:
+          # Import the docker image information from the build step
+          properties-file: 'env_inject.txt'
+      # Execute any post build clean-up or testing
+      - shell: '{post_build_script}'
+      # Provided all steps have already passed, push the docker image
+      - shell: !include-raw: ../shell/docker-push.sh
+
index 3c8ada8..7a93b8b 100644 (file)
           docker_name: 'onap/vfc/nfvo/svnfm/nokiav2'
           docker_root: '$WORKSPACE/nokiav2/deployment'
           docker_registry: '$DOCKER_REGISTRY:10003'
+      - '{project-name}-{subproject}-{stream}-release-version-docker-no-sonar':
+          docker_build_args: '--build-arg MODE= --build-arg REPO=releases'
+          docker_name: 'onap/vfc/nfvo/svnfm/nokiav2'
+          docker_root: '$WORKSPACE/nokiav2/deployment'
+          docker_registry: '$DOCKER_REGISTRY:10003'
     files: 'nokiav2/**'
     archive-artifacts: ''
     build-node: ubuntu1604-docker-8c-8g