X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=jjb%2Fakraino-templates%2Fakraino-iec-templates.yaml;fp=jjb%2Fakraino-templates%2Fakraino-iec-templates.yaml;h=0f6230700fae3c4c740599af4b5ef0be9e975f93;hb=885a782ac9fcfd913bcbdbad43aec67493518107;hp=0000000000000000000000000000000000000000;hpb=a50cd8cb04472e00985bb3271fa8dfaddda41d6f;p=ci-management.git diff --git a/jjb/akraino-templates/akraino-iec-templates.yaml b/jjb/akraino-templates/akraino-iec-templates.yaml new file mode 100644 index 0000000..0f62307 --- /dev/null +++ b/jjb/akraino-templates/akraino-iec-templates.yaml @@ -0,0 +1,226 @@ +--- +- job-template: + id: akraino-iec-install + name: 'iec-{iecType}-{installer}-{deploy_type}-{os}-daily-{stream}' + disabled: '{obj:disabled}' + concurrent: false + node: '{slave-label}' + properties: + - throttle: + enabled: true + max-total: 4 + max-per-node: 1 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '.*-fuel-{deploy_type}-.*' + - '.*-compass-{deploy_type}-.*' + block-level: 'NODE' + + wrappers: + - build-name: + name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO $IEC_TYPE' + + triggers: + - 'iec-{iecType}-{installer}-{deploy_type}-{os}-daily-{stream}-trigger' + + parameters: + - lf-infra-parameters: + project: '{project}' + stream: '{stream}' + branch: '{branch}' + - '{project}-defaults' + - '{installer}-{os}-defaults' + - string: + name: DEPLOY_SCENARIO + default: '{scenario}' + - string: + name: IEC_TYPE + default: '{iecType}' + + builders: + - trigger-builds: + - project: 'iec-{iecType}-deploy-{installer}-{deploy_type}-{os}-daily-{stream}' + current-parameters: true + predefined-parameters: + DEPLOY_SCENARIO={scenario} + same-node: true + block: true + - project: 'validation-enea-daily-{stream}' + same-node: true + current-parameters: true + predefined-parameters: | + CLUSTER_MASTER_IP=$K8S_MASTER_IP + CLUSTER_SSH_USER=$K8S_SSH_USER + CLUSTER_SSH_PASSWORD=$K8S_SSH_PASSWORD + CLUSTER_SSH_KEY=$K8S_SSH_KEY + BLUEPRINT={project-name} + LAYER=k8s + VERSION=master + OPTIONAL=false + block: true + - project: + !j2: | + {%- for uc in usecase -%} + iec-{{ iecType }}-install-{{ uc | first }}-{{ installer }}-{{ deploy_type }}-{{ os }}-daily-{{ stream }} + {%- if not loop.last -%},{%- endif -%} + {%- endfor %} + current-parameters: true + same-node: true + block: true + block-thresholds: + build-step-failure-threshold: 'never' + failure-threshold: 'never' + unstable-threshold: 'FAILURE' + - project: 'iec-{iecType}-destroy-{installer}-{deploy_type}-{os}-daily-{stream}' + current-parameters: false + predefined-parameters: | + DEPLOY_SCENARIO={scenario} + IEC_TYPE={iecType} + same-node: true + block: true + +- job-template: + id: akraino-iec-deploy + name: 'iec-{iecType}-deploy-{installer}-{deploy_type}-{os}-daily-{stream}' + concurrent: true + node: '{slave-label}' + properties: &properties + - throttle: + enabled: true + max-total: 4 + max-per-node: 1 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '.*-{iecType}-deploy-{installer}-{deploy_type}-.*' + - '.*-{iecType}-destroy-{installer}-{deploy_type}-.*' + - '.*-{iecType}-install-.*-{installer}-{deploy_type}-.*' + block-level: 'NODE' + + parameters: + - lf-infra-parameters: + project: '{project}' + stream: '{stream}' + branch: '{branch}' + - '{project}-defaults' + - '{installer}-{os}-defaults' + - string: + name: DEPLOY_SCENARIO + default: '{scenario}' + - string: + name: IEC_TYPE + default: '{iecType}' + - string: + name: EXTRA_ARGS + default: '-o {os}' + + wrappers: &wrappers + - build-name: + name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO $IEC_TYPE' + + scm: &scm + - git: + credentials-id: '{jenkins-ssh-credential}' + url: '{git-url}/{project}.git' + refspec: '' + branches: + - 'refs/heads/{branch}' + skip-tag: true + wipe-workspace: true + submodule: + disable: true + recursive: false + timeout: '{submodule-timeout}' + choosing-strategy: default + + builders: + - description-setter: + description: "POD: $NODE_NAME" + - conditional-step: + condition-kind: regex-match + regex: 'compass' + label: '{installer}' + steps: + - shell: + !include-raw-escape: ../iec/iec-compass-build.sh + - shell: + !include-raw-escape: ../iec/iec-compass-deploy.sh + - shell: + !include-raw-escape: ../iec/iec-fdn-install.sh + - conditional-step: + condition-kind: regex-match + regex: 'fuel' + label: '{installer}' + steps: + - shell: + !include-raw-escape: ../iec/iec-fuel-deploy.sh + + publishers: &publishers + - email: + recipients: armband@enea.com + - lf-infra-publish + +- job-template: + id: akraino-iec-destroy + name: 'iec-{iecType}-destroy-{installer}-{deploy_type}-{os}-daily-{stream}' + concurrent: true + node: '{slave-label}' + properties: *properties + parameters: + - lf-infra-parameters: + project: '{project}' + stream: '{stream}' + branch: '{branch}' + - '{project}-defaults' + - '{installer}-{os}-defaults' + - string: + name: DEPLOY_SCENARIO + default: '{scenario}' + - string: + name: IEC_TYPE + default: '{iecType}' + - string: + name: EXTRA_ARGS + default: '-EEE -o {os}' + + wrappers: *wrappers + scm: *scm + + builders: + - description-setter: + description: "POD: $NODE_NAME" + - shell: + !include-raw-escape: ../iec/iec-{installer}-destroy.sh + + publishers: *publishers + +- job-template: + id: akraino-iec-install-usecase + name: 'iec-{iecType}-install-{usecase}-{installer}-{deploy_type}-{os}-daily-{stream}' + concurrent: true + node: '{slave-label}' + properties: *properties + + parameters: + - lf-infra-parameters: + project: '{project}' + stream: '{stream}' + branch: '{branch}' + - '{project}-defaults' + - '{installer}-{os}-defaults' + + wrappers: + - build-name: + name: '$BUILD_NUMBER - Usecase: ${usecase} DeployType: ${installer}-${deploy_type}' + + scm: *scm + + builders: + - shell: + !include-raw-escape: ../iec/iec-{usecase}.sh + + publishers: *publishers +