2 ##############################################
3 # job configuration for docker build and push
4 ##############################################
16 branch: 'stable/{stream}'
21 slave_label: 'opnfv-build-ubuntu'
23 slave_label: 'opnfv-build-ubuntu-arm'
25 # settings for jobs run in multijob phases
26 build-job-settings: &build-job-settings
27 current-parameters: false
29 node-parameters: false
30 predefined-parameters: |
31 PUSH_IMAGE=$PUSH_IMAGE
32 CACHE_INVALIDATE=$CACHE_INVALIDATE
34 GERRIT_REFNAME=$GERRIT_REFNAME
35 kill-phase-on: FAILURE
38 manifest-job-settings: &manifest-job-settings
39 current-parameters: false
41 node-parameters: false
42 predefined-parameters:
43 GERRIT_REFNAME=$GERRIT_REFNAME
44 kill-phase-on: FAILURE
48 - "fuel-docker-{stream}"
49 - "fuel-docker-build-{arch_tag}-{stream}"
50 - "fuel-docker-manifest-{stream}"
52 ########################
54 ########################
56 name: 'fuel-docker-{stream}'
58 project-type: multijob
60 disabled: '{obj:disabled}'
63 - fuel-job-parameters:
66 slave_label: 'opnfv-build-ubuntu'
74 use-build-blocker: true
77 blocking-level: 'NODE'
85 - gerrit-trigger-tag-created:
90 name: 'build fuel images'
91 execution-type: PARALLEL
93 - name: 'fuel-docker-build-amd64-{stream}'
94 <<: *build-job-settings
95 - name: 'fuel-docker-build-arm64-{stream}'
96 <<: *build-job-settings
98 name: 'publish fuel manifests'
100 execution-type: PARALLEL
102 - name: 'fuel-docker-manifest-{stream}'
103 <<: *manifest-job-settings
109 name: 'fuel-docker-build-{arch_tag}-{stream}'
110 disabled: '{obj:disabled}'
112 - fuel-job-parameters:
115 slave_label: '{slave_label}'
116 arch_tag: '{arch_tag}'
119 use-build-blocker: true
121 - 'fuel-docker-build-.*'
122 blocking-level: 'NODE'
137 name: 'fuel-docker-manifest-{stream}'
145 default: 'opnfv-build-ubuntu'
146 description: 'Slave label on Jenkins'
148 node-eligibility: 'ignore-offline'
152 description: "Project name used to enable job conditions"
155 default: https://gerrit.opnfv.org/gerrit/$PROJECT
156 description: 'Git URL to use on this Jenkins Slave'
160 description: "Repository name for fuel-docker images"
163 disabled: '{obj:disabled}'
174 sudo manifest-tool push from-args \
175 --platforms linux/amd64,linux/arm64 \
176 --template $REPO/fuel:saltmaster-reclass-ARCH-$tag \
177 --target $REPO/fuel:saltmaster-reclass-$tag
178 sudo manifest-tool push from-args \
179 --platforms linux/amd64,linux/arm64 \
180 --template $REPO/fuel:saltminion-maas-ARCH-$tag \
181 --target $REPO/fuel:saltminion-maas-$tag
186 name: fuel-job-parameters
193 default: '{slave_label}'
194 description: 'Slave label on Jenkins'
196 node-eligibility: 'ignore-offline'
199 default: https://gerrit.opnfv.org/gerrit/$PROJECT
200 description: 'Git URL to use on this Jenkins Slave'
204 description: "To enable/disable pushing the image to Dockerhub."
206 name: CACHE_INVALIDATE
208 description: "Set to any non-zero value to force a Docker cache cleanup"
212 description: "commit id to make a snapshot docker image"
216 description: "Docker tag to be built, e.g. refs/tags/5.0.0, refs/tags/opnfv-5.0.0, refs/tags/5.0.RC1"
220 description: "Project name used to enable job conditions"
224 description: "Repository name for fuel-docker images"