+ # -------------------------------
+ # BRANCH DEFINITIONS
+ # -------------------------------
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+ # -------------------------------
+ # DEPLOY TYPE DEFINITIONS
+ # -------------------------------
+ deploy_type:
+ - fuel-baremetal:
+ slave-label: 'aarch64_dev'
+ scenario: 'k8-calico-iec-noha'
+ - fuel-virtual:
+ slave-label: 'aarch64_dev'
+ scenario: 'k8-calico-iec-noha'
+ - compass-virtual:
+ slave-label: 'aarch64_dev'
+ scenario: 'k8-calico-iec-noha'
+
+ # -------------------------------
+ # USECASE DEFINITIONS
+ # -------------------------------
+ usecase:
+ - seba_on_arm:
+ slave-label: 'aarch64_dev'
+ scenario: 'k8-calico-iec-noha'
+
+ jobs:
+ - 'iec-{deploy_type}-daily-{stream}'
+ - 'iec-deploy-{deploy_type}-daily-{stream}'
+ - 'iec-install-{usecase}-{deploy_type}-daily-{stream}'
+
+##############
+# PARAMETERS #
+##############
+- parameter:
+ name: 'iec-defaults'
+ parameters:
+ - string:
+ name: INSTALLER_IP
+ default: '10.20.0.2'
+ description: 'IP of the installer'
+ - string:
+ name: SSH_KEY
+ default: '/var/lib/opnfv/mcp.rsa'
+ description: 'Path to private SSH key to access environment nodes'
+ - string:
+ name: EXTERNAL_NETWORK
+ default: 'floating_net'
+ description: 'external network for test'
+ - string:
+ name: CI_DEBUG
+ default: 'false'
+ description: 'Show debug output information'
+ - string:
+ name: ARCHIVE_ARTIFACTS
+ default: '**/*.log'
+ description: Artifacts to archive to the logs server.
+- parameter:
+ name: 'seba_on_arm-defaults'
+ parameters:
+ - string:
+ name: K8S_SSH_USER
+ default: 'ubuntu'
+ description: 'SSH username to connect to the K8s master '
+ - string:
+ name: K8S_SSH_PASSWORD
+ default: ''
+ description: 'SSH password to connect to the K8s master'
+ - string:
+ name: K8S_SSH_KEY
+ default: ''
+ description: 'SSH key to connect to the K8s master'
+
+########################
+# job templates
+########################
+- job-template:
+ name: 'iec-{deploy_type}-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:
+ - '.*-{deploy_type}-daily-.*'
+ blocking-level: 'NODE'
+
+ wrappers:
+ - build-name:
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+
+ triggers:
+ - 'iec-{deploy_type}-daily-{stream}-trigger'
+
+ parameters:
+ - lf-infra-parameters:
+ project: '{project}'
+ stream: '{stream}'
+ branch: '{branch}'
+ - '{project}-defaults'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+
+ builders:
+ - trigger-builds:
+ - project: 'iec-deploy-{deploy_type}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters:
+ DEPLOY_SCENARIO={scenario}
+ same-node: true
+ block: true
+ - project:
+ !j2: |
+ {%- for uc in usecase -%}
+ iec-install-{{ uc | first }}-{{ deploy_type }}-daily-{{ stream }}
+ {%- if not loop.last -%},{%- endif -%}
+ {%- endfor %}
+ current-parameters: false
+ same-node: true
+ block: true
+
+- job-template:
+ name: 'iec-deploy-{deploy_type}-daily-{stream}'
+ concurrent: true
+ node: '{slave-label}'
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 4
+ max-per-node: 1
+ option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - '.*-deploy-{deploy_type}-daily-*'
+ blocking-level: 'NODE'
+
+ parameters:
+ - lf-infra-parameters:
+ project: '{project}'
+ stream: '{stream}'
+ branch: '{branch}'
+ - '{project}-defaults'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+
+ wrappers:
+ - build-name:
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+
+ 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: '{deploy_type}'
+ steps:
+ - shell:
+ !include-raw-escape: ./iec-compass-build.sh
+ - shell:
+ !include-raw-escape: ./iec-compass-deploy.sh
+ - shell:
+ !include-raw-escape: ./iec-fdn-install.sh
+ - shell:
+ !include-raw-escape: ./iec-compass-destroy.sh
+ - conditional-step:
+ condition-kind: regex-match
+ regex: 'fuel-.*'
+ label: '{deploy_type}'
+ steps:
+ - shell:
+ !include-raw-escape: ./iec-fuel-deploy.sh
+
+ publishers:
+ - email:
+ recipients: armband@enea.com
+ - lf-infra-publish
+
+- job-template:
+ name: 'iec-install-{usecase}-{deploy_type}-daily-{stream}'
+ concurrent: true
+ node: '{slave-label}'
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 4
+ max-per-node: 1
+ option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - '.*-deploy-{deploy_type}-daily-*'
+ - '.*-install-{usecase}-{deploy_type}-daily-*'
+ blocking-level: 'NODE'
+
+ parameters:
+ - lf-infra-parameters:
+ project: '{project}'
+ stream: '{stream}'
+ branch: '{branch}'
+ - '{project}-defaults'
+ - '{usecase}-defaults'
+
+ wrappers:
+ - build-name:
+ name: '$BUILD_NUMBER - Usecase: ${usecase} DeployType: ${deploy_type}'
+
+ scm: *scm
+
+ builders:
+ - shell:
+ !include-raw-escape: ./iec-{usecase}.sh
+
+ publishers:
+ - email:
+ recipients: armband@enea.com
+ - lf-infra-publish
+
+########################
+# trigger macros
+########################
+# CI PODs
+# ----------------------------------------------------------------
+# Akraino IEC CI Baremetal Triggers running against master branch
+# ----------------------------------------------------------------
+- trigger:
+ name: 'iec-fuel-virtual-daily-master-trigger'
+ triggers:
+ - timed: '0 1 * * *'
+- trigger:
+ name: 'iec-fuel-baremetal-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'iec-compass-virtual-daily-master-trigger'
+ triggers:
+ - timed: '0 13 * * *'