stream:
- 'master':
branch: '{stream}'
- openrc-credentials-file: 'est-jenkins-openrcfile-city-karlskrona-onap'
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
execution-mode: 'packaging'
- gated-projects: 'infra\/engine'
+ gated-projects: 'infra/engine|infra/provisioner/bifrost|infra/provisioner/heat'
successful: false
failed: false
unstable: false
notbuilt: false
+ deploy-scenario: 'k8-calico-nofeature'
distro:
- ubuntu1804
+ dependency-jobs: 'engine-verify-tox-{stream}'
+ dependency-job-var: 'TRIGGER_engine_verify_tox_{stream}_BUILD_RESULT'
+
jobs:
- 'engine-verify-package-{distro}-{stream}'
concurrent: true
parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with.'
- string:
name: EXECUTION_MODE
default: '{execution-mode}'
name: VERBOSITY
default: 'true'
description: 'Verbosity setting for the engine - true or false - default is false'
- - string:
- name: ARTIFACTS_TO_UPLOAD
- default: "k8s-installer-ubuntu1804.bsx"
- description: 'Artifacts to upload'
- - string:
- name: NORDIX_ARM_PUBLIC_IP
- default: '91.106.198.25'
- description: 'Public IP of Nordix Artifactory. Offline deployments can not resolve domain name'
- - string:
- name: NORDIX_ARM_HTTPS_URL
- default: 'https://artifactory.nordix.org/artifactory'
- description: 'URL to Nordix Artifactory'
- - string:
- name: NORDIX_ARM_REPO
- default: 'nordix-kubernetes'
- description: 'Name of the repository to upload and download artifact to/from. Depends on the stack'
- string:
name: CI_LOOP
default: 'verify'
description: 'CI loop type'
- label:
name: SLAVE_LABEL
- default: 'engine-master-offline-{distro}'
+ default: 'engine-package-{distro}-fra'
description: 'Slave label to schedule this job on.'
- project-parameters:
project: $GERRIT_PROJECT
properties:
- logrotate
+ # NOTE (fdegir): throttle categories are controlled in jenkins global configuration
- throttle:
+ enabled: true
max-per-node: 1
- max-total: 3
- option: project
-
- wrappers:
- - build-timeout:
- timeout: 180
- - mask-passwords
- - fix-workspace-permissions
- - openstack:
- single-use: True
+ max-total: 4
+ option: category
+ categories:
+ - engine-verify-package
scm:
- git-scm-gerrit:
ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
+ branch: $GERRIT_BRANCH
refspec: $GERRIT_REFSPEC
wipe_workspace: true
clean_before: false
notbuilt: '{obj:notbuilt}'
custom-url: '* $JOB_NAME $BUILD_URL'
readable-message: 'true'
- dependency-jobs: 'engine-verify-tox-{stream}'
+ dependency-jobs: '{dependency-jobs}'
wrappers:
+ - openstack:
+ single-use: True
- build-timeout:
- timeout: 70
+ timeout: 240
- credentials-binding:
- username-password-separated:
credential-id: 'nordix-cicd-arm-credentials'
username: NORDIX_ARM_USERNAME
password: NORDIX_ARM_TOKEN
- mask-passwords
- - fix-workspace-permissions
+ - pre-scm-buildstep:
+ failOnError: true
+ buildsteps:
+ - system-groovy:
+ command: |
+ def build = this.getProperty('binding').getVariable('build')
+ def listener = this.getProperty('binding').getVariable('listener')
+ if (build.getEnvironment(listener).{dependency-job-var} != "SUCCESS") {{
+ println "WARN : Aborting build since dependent job did not succeed!"
+ throw new InterruptedException()
+ }}
+ - shell: |
+ #!/bin/bash
+ sudo chown -R $USER:$USER $WORKSPACE || exit 1
+
builders:
+ - 'generate-change-metadata-macro'
+ - inject:
+ properties-file: "$WORKSPACE/change.properties"
- 'generate-ssh-keypair-macro'
- 'wait-pkg-mgr-macro'
- 'package-macro'