project-name: 'iec'
project: '{project-name}'
views:
- - project-view
+ - common-view:
+ view-name: iec
+ view-regex: '^{project-name}-(sonar|(tox|type1|type2)-(verify|fuel|compass)-.*)'
# -------------------------------
# BRANCH DEFINITIONS
# -------------------------------
disabled: false
# -------------------------------
+ # INSTALLER DEFINITIONS
+ # -------------------------------
+ installer:
+ - fuel
+ - compass
+
+ # -------------------------------
+ # OPERATING SYSTEM DEFINITIONS
+ # -------------------------------
+ os:
+ - ubuntu1804
+ - centos7
+ #--------------------------------
+ # IEC TYPE DEFINITINONS
+ # type1 Mcbin embeded board
+ # type2 Arm Server
+ # -------------------------------
+ iecType:
+ - type1
+ - type2
+ # -------------------------------
# DEPLOY TYPE DEFINITIONS
# -------------------------------
deploy_type:
- - fuel-baremetal:
- slave-label: 'aarch64_dev'
+ - baremetal:
+ slave_label: 'aarch64_baremetal_dev'
scenario: 'k8-calico-iec-noha'
- - fuel-virtual:
- slave-label: 'aarch64_dev'
- scenario: 'k8-calico-iec-noha'
- - compass-virtual:
- slave-label: 'aarch64_dev'
+ - virtual:
+ slave_label: 'aarch64_dev'
scenario: 'k8-calico-iec-noha'
+ exclude:
+ # Compass does not run against baremetal PODs yet
+ - installer: compass
+ deploy_type: baremetal
+ - installer: compass
+ os: centos7
+ - installer: compass
+ os: ubuntu1804
+ - iecType: type1
+ installer: fuel
+ # Fuel baremetal provisioning only supports Ubuntu 18.04
+ - installer: fuel
+ deploy_type: baremetal
+ os: centos7
+ - installer: fuel
+ deploy_type: baremetal
+ os: ubuntu1804
+ # SEBA on virtual PODs should be excluded
+ - deploy_type: virtual
+ usecase: seba_on_arm
+
# -------------------------------
# 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'
+ - seba_on_arm
- parameters:
- - lf-infra-parameters:
- project: '{project}'
- stream: '{stream}'
- branch: '{branch}'
- - '{project}-defaults'
- - string:
- name: DEPLOY_SCENARIO
- default: '{scenario}'
+ phase:
+ - install
+ - test
- 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 * * *'
+ jobs:
+ # - akraino-iec-install
+ # - akraino-iec-deploy
+ # - akraino-iec-destroy
+ # - akraino-usecase-phase-iec
+ - gerrit-sonar:
+ sonar-project-file: ""
+ build-node: centos7-builder-2c-1g
+ submodule-recursive: false
+ submodule-disable: true
+ sonar-properties: |
+ # Required metadata
+ sonar.projectKey=iec
+ sonar.projectName=iec
+ sonar.organization=akraino-edge-stack
+
+ #Source
+ sonar.sources=.
+ sonar.exclusions=**/*_test.go,**/vendor/**
+
+ # Language
+ sonar.language=go
+
+ # Encoding
+ sonar.build.sourceEncoding=UTF-8
+
+ # Inclusions
+ sonar.inclusions=**/**.go
+
+ # Test Execution
+ sonar.tests=.
+ sonar.test.inclusions=**/*_test.go
+ sonar.test.exclusions=**/vendor/**