description: 'Distribution to use for the tests.'
- string:
name: CAPI_VERSION
- default: 'v1alpha3'
+ default: 'v1alpha4'
description: 'Cluster API version. Can be v1alpha3 or v1alpha4.'
- string:
name: TARGET_NODE_OS
description: 'Distribution to use for the tests.'
- string:
name: CAPI_VERSION
- default: 'v1alpha3'
+ default: 'v1alpha4'
description: 'Cluster API version. Can be v1alpha3 or v1alpha4.'
- string:
name: TARGET_NODE_OS
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-set -o pipefail
-
-# This script is a wrapper around actual cloud infra engine deploy.sh script which gets
-# executed when the job that uses this script gets triggered due to Gerrit change.
-#
-# Logic in this script should be kept at minimum and the changes should be pushed into
-# the cloud infra engine deploy.sh script.
-
-# The verify job will verify changes coming to other repositories as well such as
-# infra/swconfig so it needs to be handled here in order to ensure $WORKSPACE contains
-# the actual engine repo clone. This will be added later on.
-
-# PDF and IDF are determined based on the deployment type
-# If DEPLOY_TYPE is virtual, we always use nordix-vpod1 PDF and IDF.
-# If DEPLOY_TYPE is baremetal, we use variable NODE_NAME injected by Jenkins to the job
-# in order to set PDF and IDF for the POD the job is running against.
-
-# be more explicit while determining if we support verification of the given scenario
-case $DEPLOY_SCENARIO in
- onap*)
- echo "Info: $DEPLOY_SCENARIO scenario verification has not been implemented yet!"
- exit 0
- ;;
- os*|armada*)
- if [[ "$PROVISIONER_TYPE" != "bifrost" ]]; then
- echo "Info: $DEPLOY_SCENARIO scenario verification is only available with the provisioner bifrost"
- exit 0
- fi
- ;;
- k8*)
- ;;
- *)
- echo "Error: Scenario $DEPLOY_SCENARIO is not supported!"
- exit 1
- ;;
-esac
-
-echo "Info: Proceeding with $DEPLOY_SCENARIO scenario using provisioner $PROVISIONER_TYPE"
-
-if [[ $DEPLOY_TYPE == "baremetal" ]]; then
- PDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-pdf.yml"
- IDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-idf.yml"
-else
- PDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-pdf.yml"
- IDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-idf.yml"
-fi
-
-if [[ $PROVISIONER_TYPE == "bifrost" ]]; then
- DEPLOY_CMD="./engine/deploy.sh -r $PROVISIONER_TYPE -d $INSTALLER_TYPE -o $DISTRO -s $DEPLOY_SCENARIO -p $PDF -i $IDF"
-elif [[ $PROVISIONER_TYPE == "heat" ]]; then
- DEPLOY_CMD="./engine/deploy.sh -r $PROVISIONER_TYPE -d $INSTALLER_TYPE -o $DISTRO -s $DEPLOY_SCENARIO -u /tmp/openrc -e $HEAT_ENVIRONMENT_FILE"
-else
- echo "Error: Unsupported provisioner type. Must either be bifrost or heat!"
- exit 1
-fi
-
-# execute cloud engine deploy.sh script
-cd $WORKSPACE
-$DEPLOY_CMD
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-- project:
- name: 'cloud-infra-docs'
-
- project: 'cloud-infra-docs'
-
- stream:
- - 'master':
- branch: '{stream}'
- disabled: true
-
- jobs:
- - 'cloud-infra-verify-docs-{stream}'
- - 'cloud-infra-merge-docs-{stream}'
-
-- job-template:
- name: 'cloud-infra-verify-docs-{stream}'
-
- disabled: '{obj:disabled}'
-
- concurrent: true
-
- node: 'infra-tools-docker-slave-ubuntu1804'
-
- parameters:
- - project-parameters:
- project: $GERRIT_PROJECT
- branch: '{branch}'
- - nordix-gerrit-parameters
- - string:
- name: LINT_TYPE
- default: 'docs'
- description: 'Lint type to run'
-
- properties:
- - logrotate
-
- wrappers:
- - build-timeout:
- timeout: 150
- - fix-workspace-permissions
-
- scm:
- - git:
- url: '$GIT_BASE_SSH/$PROJECT'
- credentials-id: nordixinfra-nordix-gerrit-ssh
- branches:
- - 'refs/heads/{branch}'
- refspec: $GERRIT_REFSPEC
- timeout: 15
- per-build-tag: false
- skip-tag: true
- shallow-clone: false
- use-author: false
- ignore-notify: false
- wipe-workspace: true
- prune: false
- clean:
- after: false
- before: false
- choosing-strategy: 'gerrit'
- submodule:
- recursive: true
- tracking: true
-
- triggers:
- - nordix-gerrit-trigger-patchset-created:
- project: 'infra\/engine|infra\/docs'
- branch: '{branch}'
- files: 'docs/**'
- skip-vote:
- successful: false
- failed: false
- unstable: false
- notbuilt: false
- custom-url: '* $JOB_NAME $BUILD_URL'
-
- builders:
- - 'cloud-infra-lint-macro'
-
-- job-template:
- name: 'cloud-infra-merge-docs-{stream}'
-
- disabled: '{obj:disabled}'
-
- concurrent: false
-
- node: 'infra-docs-build'
-
- parameters:
- - project-parameters:
- project: $GERRIT_PROJECT
- branch: '{branch}'
- - nordix-gerrit-parameters
- - string:
- name: LINT_TYPE
- default: 'docs-deploy'
- description: 'Lint type to run'
-
- properties:
- - logrotate
-
- wrappers:
- - build-timeout:
- timeout: 150
- - fix-workspace-permissions
-
- scm:
- - git:
- url: '$GIT_BASE_SSH/$PROJECT'
- credentials-id: nordixinfra-nordix-gerrit-ssh
- branches:
- - 'refs/heads/{branch}'
- refspec: ''
- timeout: 15
- per-build-tag: false
- skip-tag: true
- shallow-clone: false
- use-author: false
- ignore-notify: false
- wipe-workspace: 'true'
- prune: false
- clean:
- after: false
- before: false
- choosing-strategy: 'default'
- submodule:
- recursive: true
- tracking: true
-
- triggers:
- - nordix-gerrit-trigger-change-merged:
- project: 'infra\/docs'
- branch: '{branch}'
- files: 'docs/**'
- custom-url: '* $JOB_NAME $BUILD_URL'
-
- wrappers:
- - nordixinfra-jjb-creds-wrapper
-
- builders:
- - 'cloud-infra-lint-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for verifying patches
-# that are sent to the repositories below
-# - cloud-infra/engine
-#
-# These jobs verify changes that
-# - implement new features or fix bugs for the deployment framework, engine, itself
-# - implement new features or fix bugs to the playbooks and roles used for utilizing
-# open source components such as bifrost, kubespray, and kolla-ansible
-# - bump versions of open source components or the scenarios
-#
-# These jobs are set to run on slaves with label vpod-deploy-ubuntu1604.
-# The slaves have
-# - Ubuntu1604 as the base distro
-# - nested virtualization
-# - internet access
-# - passwordless sudo
-# - 16 CPUs/32GB RAM/200 GB Disk
-# - docker, git vim curl wget zip unzip chrony apt-transport-https ca-certificates curl
-# gnupg-agent software-properties-common docker-ce docker-ce-cli containerd.io openjdk-8-jre
-#
-# The slaves should not have a cloud infra scenario deployed on them.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'cloud-infra-verify-engine'
-
- project: 'infra/engine'
-
- stream:
- - 'master':
- branch: '{stream}'
-
- distro:
- - ubuntu1804:
- disabled: true
- - centos7:
- disabled: true
- cloud:
- - city:
- openrc-credentials-file: 'est-jenkins-openrcfile-city-karlskrona-onap'
-
- type:
- - virtual:
- provisioner-type: 'bifrost'
- slave-type: 'vpod'
- successful: false
- failed: false
- unstable: false
- notbuilt: false
- - cloud:
- provisioner-type: 'heat'
- slave-type: 'jumphost'
- successful: false
- failed: false
- unstable: false
- notbuilt: false
-
- phase:
- - deploy:
- build-timeout: 90
- - functest:
- build-timeout: 60
-
- jobs:
- - 'cloud-infra-verify-engine-{distro}-{cloud}-{type}-{stream}'
- - 'cloud-infra-verify-engine-{distro}-{phase}-{type}-{stream}'
-
-- job-template:
- name: 'cloud-infra-verify-engine-{distro}-{cloud}-{type}-{stream}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: true
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{branch}'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: '{cloud}-{slave-type}-{distro}'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: PROVISIONER_TYPE
- default: '{provisioner-type}'
- description: 'Provisioner type to use'
- - string:
- name: DEPLOY_TYPE
- default: '{type}'
- description: 'Type of the deployment'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: 'heat-environment-{cloud}-{distro}.yaml'
- description: 'Name of heat-environment file to use.'
- - string:
- name: STACK_NAME
- default: "nordix-cicd-verify-engine-{distro}-$BUILD_NUMBER"
- description: 'Name of the created stack'
- - string:
- name: KEYPAIR_NAME
- default: "keypair-nordix-cicd-verify-engine-{distro}-$BUILD_NUMBER"
- description: 'Name of the created keypair'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'true'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: TEST_SUITE
- default: 'healthcheck'
- description: 'Test suite to run'
- - string:
- name: YARDSTICK_DISPATCHER
- default: 'file'
- description: 'Dispatcher to use for Yardstick reporting'
- - string:
- name: DELETE_STACK
- default: 'yes'
- description: 'Delete the stack upon completion of the build'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-engine-.*'
- - 'cloud-infra-verify-scenario-.*'
- - 'cloud-infra-periodic-engine-.*'
- - 'onap-.*'
- - 'k8-.*'
- - 'os-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 3
- option: project
-
- wrappers:
- - credentials-binding:
- - file:
- credential-id: '{openrc-credentials-file}'
- variable: OPENRC_FILE
- - mask-passwords
- - build-timeout:
- timeout: 150
- - fix-workspace-permissions
- - openstack:
- single-use: True
-
- scm:
- - git-scm-gerrit:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: $GERRIT_REFSPEC
- wipe_workspace: true
- clean_before: false
-
- triggers:
- - gerrit:
- server-name: 'Nordix Gerrit'
- trigger-on:
- - patchset-created-event:
- exclude-drafts: 'false'
- exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
- - draft-published-event
- - comment-added-contains-event:
- comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
- projects:
- - project-compare-type: 'REG_EXP'
- project-pattern: 'infra\/engine'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- disable-strict-forbidden-file-verification: 'true'
- forbidden-file-paths:
- - compare-type: ANT
- pattern: 'docs/**'
- skip-vote:
- successful: '{obj:successful}'
- failed: '{obj:failed}'
- unstable: '{obj:unstable}'
- notbuilt: '{obj:notbuilt}'
- custom-url: '* $JOB_NAME $BUILD_URL'
-
- builders:
- - shell: |
- #!/bin/bash
- cp $OPENRC_FILE /tmp/openrc
- - 'cloud-infra-determine-scenario-macro'
- - multijob:
- name: deploy
- condition: SUCCESSFUL
- projects:
- - name: 'cloud-infra-verify-engine-{distro}-deploy-{type}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
- GERRIT_PROJECT=$GERRIT_PROJECT
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- - multijob:
- name: functest
- condition: SUCCESSFUL
- projects:
- - name: 'cloud-infra-verify-engine-{distro}-functest-{type}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- GERRIT_PROJECT=$GERRIT_PROJECT
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
-
- publishers:
- - postbuildscript:
- builders:
- - role: SLAVE
- build-on:
- - SUCCESS
- - FAILURE
- - ABORTED
- - NOT_BUILT
- - UNSTABLE
- build-steps:
- - shell:
- !include-raw-escape: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./delete-heat-stack.sh
-
-- job-template:
- name: 'cloud-infra-verify-engine-{distro}-{phase}-{type}-{stream}'
-
- disabled: true
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - string:
- name: PROJECT
- default: $GERRIT_PROJECT
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.). Overriden by upstream job.'
- - string:
- name: DEPLOY_TYPE
- default: 'virtual'
- description: 'Type of the deployment. Overriden by upstream job.'
- - string:
- name: PROVISIONER_TYPE
- default: 'bifrost'
- description: 'Provisioner type to use. Overriden by upstream job.'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: "heat-environment-city-ubuntu1804.yaml"
- description: 'Name of heat-environment file to use.'
- - string:
- name: HEAT_ENVIRONMENT_FILE
- default: "file://$WORKSPACE/engine/provisioner/heat/playbooks/roles/bootstrap-hwconfig/files/$HEAT_ENVIRONMENT_FILENAME"
- description: 'Location of heat-environment file to use.'
- - string:
- name: STACK_NAME
- default: "nordix-cicd-verify-engine-{distro}-$BUILD_NUMBER"
- description: 'Name of the created stack'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'false'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: TEST_FW
- default: '{phase}'
- description: 'Test framework to use'
- - string:
- name: TEST_SUITE
- default: 'healthcheck'
- description: 'Test suite to run'
- - string:
- name: TEST_REPO_URL
- default: 'https://gerrit.nordix.org/infra/test.git'
- description: 'URL to Nordix Cloud Infra test repository'
- - string:
- name: YARDSTICK_DISPATCHER
- default: 'file'
- description: 'Dispatcher to use for Yardstick reporting'
-
- wrappers:
- - mask-passwords
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
-
- scm:
- - git-scm-gerrit:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: $GERRIT_REFSPEC
- wipe_workspace: true
- clean_before: false
-
- builders:
- - 'cloud-infra-determine-scenario-macro'
- - 'cloud-infra-{phase}-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-# macros used by all job types
-- builder:
- name: 'cloud-infra-deploy-macro'
- builders:
- - shell:
- !include-raw: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./cloud-infra-deploy.sh
-
-- builder:
- name: 'cloud-infra-functest-macro'
- builders:
- - shell:
- !include-raw: ./prepare-for-testfw-verify.sh
- - shell:
- !include-raw: ./cloud-infra-test.sh
-
-- builder:
- name: 'cloud-infra-yardstick-macro'
- builders:
- - shell:
- !include-raw: ./prepare-for-testfw-verify.sh
- - shell:
- !include-raw: ./cloud-infra-test.sh
-
-- builder:
- name: 'cloud-infra-testfw-macro'
- builders:
- - shell:
- !include-raw: ./cloud-infra-test.sh
-
-- builder:
- name: 'cloud-infra-determine-scenario-macro'
- builders:
- - shell:
- !include-raw: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./determine-scenario.sh
- - inject:
- properties-file: "$WORKSPACE/change.properties"
- - description-setter:
- description: $PROVISIONER_TYPE | $INSTALLER_TYPE | $DEPLOY_SCENARIO
-
-- builder:
- name: 'cloud-infra-scenario-deploy-macro'
- builders:
- - shell:
- !include-raw: ./prepare-for-scenario-deploy.sh
- - shell:
- !include-raw: ./cloud-infra-scenario-deploy.sh
-
-- builder:
- name: 'cloud-infra-scenario-functest-macro'
- builders:
- - shell:
- !include-raw: ./prepare-for-scenario-test.sh
- - shell:
- !include-raw: ./cloud-infra-scenario-test.sh
-
-- builder:
- name: 'scenario-deploy-macro'
- builders:
- - shell:
- !include-raw: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./scenario-deploy.sh
-
-- builder:
- name: 'scenario-functest-macro'
- builders:
- - shell:
- !include-raw: ./prepare-for-testfw-verify.sh
- - shell:
- !include-raw: ./scenario-functest.sh
-
-- builder:
- name: 'scenario-yardstick-macro'
- builders:
- - shell:
- !include-raw: ./prepare-for-testfw-verify.sh
- - shell:
- !include-raw: ./scenario-yardstick.sh
-
-- builder:
- name: 'scenario-promote-macro'
- builders:
- - shell:
- !include-raw: ./scenario-promote.sh
-
-- builder:
- name: 'cloud-infra-lint-macro'
- builders:
- - shell:
- !include-raw: ./scripts/cloud-infra-lint.sh
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for verifying cloud-infra
-# engine from the tip of the master branch periodically to check the stability of it.
-#
-# These jobs are set to run on slaves with label vpod-deploy-ubuntu1604.
-# The slaves have
-# - Ubuntu1604 as the base distro
-# - nested virtualization
-# - internet access
-# - passwordless sudo
-# - 16 CPUs/32GB RAM/200 GB Disk
-# - docker, git vim curl wget zip unzip chrony apt-transport-https ca-certificates curl
-# gnupg-agent software-properties-common docker-ce docker-ce-cli containerd.io openjdk-8-jre
-#
-# The slaves should not have a cloud infra scenario deployed on them.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'cloud-infra-periodic-engine'
-
- project: 'infra/engine'
-
- stream:
- - 'master':
- branch: '{stream}'
-
- distro:
- - ubuntu1804:
- slave-label: vpod-deploy-ubuntu1804
- - centos7:
- slave-label: vpod-deploy-centos7
-
- type:
- - virtual:
- yardstick-dispatcher: 'file'
- build-trigger: 'H H/3 * * *'
- disabled: true
-
- phase:
- - deploy:
- build-timeout: 90
- - functest:
- build-timeout: 120
- - yardstick:
- build-timeout: 30
-
- jobs:
- - 'cloud-infra-periodic-engine-{distro}-{type}-{stream}'
- - 'cloud-infra-periodic-{distro}-{phase}-{type}-{stream}'
-
-- job-template:
- name: 'cloud-infra-periodic-engine-{distro}-{type}-{stream}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: true
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{branch}'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: DEPLOY_TYPE
- default: '{type}'
- description: 'Type of the deployment'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'true'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: 'k8-calico-nofeature'
- description: 'Scenario to deploy and test'
- - string:
- name: TEST_SUITE
- default: 'smoke'
- description: 'Test suite to run'
- - string:
- name: YARDSTICK_DISPATCHER
- default: '{yardstick-dispatcher}'
- description: 'Dispatcher to use for Yardstick reporting'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-engine-.*'
- - 'cloud-infra-verify-scenario-.*'
- - 'cloud-infra-periodic-engine-.*'
- - 'onap-.*'
- - 'k8-.*'
- - 'os-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 3
- option: project
-
- wrappers:
- - build-timeout:
- timeout: 240
- - fix-workspace-permissions
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- triggers:
- - timed: '{build-trigger}'
-
- builders:
- - multijob:
- name: deploy
- condition: SUCCESSFUL
- projects:
- - name: 'cloud-infra-periodic-{distro}-deploy-{type}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- git-revision: true
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- - multijob:
- name: functest
- condition: ALWAYS
- projects:
- - name: 'cloud-infra-periodic-{distro}-functest-{type}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: yardstick
- condition: ALWAYS
- projects:
- - name: 'cloud-infra-periodic-{distro}-yardstick-{type}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
-
-- job-template:
- name: 'cloud-infra-periodic-{distro}-{phase}-{type}-{stream}'
-
- disabled: true
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - string:
- name: PROJECT
- default: $GERRIT_PROJECT
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.). Overriden by upstream job.'
- - string:
- name: DEPLOY_TYPE
- default: 'virtual'
- description: 'Type of the deployment. Overriden by upstream job.'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'false'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: ENGINE_ANSIBLE_PARAMS
- default: ' -v '
- description: 'Extra paramters that can be added when run the play books.'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: 'k8-calico-nofeature'
- description: 'Scenario to deploy and test'
- - string:
- name: TEST_FW
- default: '{phase}'
- description: 'Test framework to use'
- - string:
- name: TEST_SUITE
- default: 'smoke'
- description: 'Test suite to run'
- - string:
- name: TEST_REPO_URL
- default: 'https://gerrit.nordix.org/infra/test.git'
- description: 'URL to Nordix Cloud Infra test repository'
- - string:
- name: YARDSTICK_DISPATCHER
- default: 'file'
- description: 'Dispatcher to use for Yardstick reporting'
-
- wrappers:
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - 'cloud-infra-{phase}-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for verifying cloud-infra
-# engine from the tip of the master branch periodically to check the stability of it.
-#
-# These jobs are set to run on slaves with label vpod-deploy-ubuntu1604.
-# The slaves have
-# - Ubuntu1604 as the base distro
-# - nested virtualization
-# - internet access
-# - passwordless sudo
-# - 16 CPUs/32GB RAM/200 GB Disk
-# - docker, git vim curl wget zip unzip chrony apt-transport-https ca-certificates curl
-# gnupg-agent software-properties-common docker-ce docker-ce-cli containerd.io openjdk-8-jre
-#
-# The slaves should not have a cloud infra scenario deployed on them.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'cloud-infra-periodic-kubernetes'
-
- project: 'infra/engine'
-
- stream:
- - 'master':
- branch: '{stream}'
-
- distro:
- - ubuntu1804
-# - centos7:
-# disabled: 'true'
-
- deploy-scenario:
- - k8-calico-nofeature:
- disabled: 'true'
- - k8-flannel-nofeature:
- disabled: 'true'
- - k8-canal-nofeature:
- disabled: 'true'
- - k8-cilium-nofeature:
- disabled: 'true'
- - k8-weave-nofeature:
- disabled: 'true'
- - k8-multus-nofeature:
- disabled: 'true'
-
- ci-loop:
- - daily
-
- type:
- - baremetal:
- pod-name: est-baremetal
- provisioner-type: bifrost
- installer-type: kubespray
- slave-label: baremetal-deploy
- yardstick-dispatcher: 'influxdb'
-
- phase:
- - deploy:
- build-timeout: 90
- - functest:
- build-timeout: 240
- - yardstick:
- build-timeout: 120
- - promote:
- build-timeout: 5
-
- jobs:
- - '{deploy-scenario}-{distro}-kubespray-{type}-{ci-loop}-{stream}'
- - 'kubernetes-{phase}-{distro}-kubespray-{type}-{ci-loop}-{stream}'
-
-- job-template:
- name: '{deploy-scenario}-{distro}-kubespray-{type}-{ci-loop}-{stream}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: true
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{branch}'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: DEPLOY_TYPE
- default: '{type}'
- description: 'Type of the deployment'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'true'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: PROVISIONER_TYPE
- default: '{provisioner-type}'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: '{installer-type}'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: '{deploy-scenario}'
- description: 'Scenario to deploy and test'
- - string:
- name: TEST_SUITE
- default: 'smoke'
- description: 'Test suite to run'
- - string:
- name: YARDSTICK_DISPATCHER
- default: '{yardstick-dispatcher}'
- description: 'Dispatcher to use for Yardstick reporting'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-engine-.*'
- - 'cloud-infra-verify-scenario-.*'
- - 'cloud-infra-periodic-engine-.*'
- - 'onap-.*'
- - 'k8-.*'
- - 'os-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 3
- option: project
-
- wrappers:
- - build-timeout:
- timeout: 455
- - fix-workspace-permissions
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- triggers:
- - timed: '@daily'
-
- builders:
- - description-setter:
- description: $PROVISIONER_TYPE | $INSTALLER_TYPE | $DEPLOY_SCENARIO
- - multijob:
- name: deploy
- condition: SUCCESSFUL
- projects:
- - name: 'kubernetes-deploy-{distro}-{installer-type}-{type}-{ci-loop}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- git-revision: true
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- - multijob:
- name: functest
- condition: ALWAYS
- projects:
- - name: 'kubernetes-functest-{distro}-{installer-type}-{type}-{ci-loop}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: yardstick
- condition: ALWAYS
- projects:
- - name: 'kubernetes-yardstick-{distro}-{installer-type}-{type}-{ci-loop}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: promote
- condition: SUCCESSFUL
- projects:
- - name: 'kubernetes-promote-{distro}-{installer-type}-{type}-{ci-loop}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
-
-- job-template:
- name: 'kubernetes-{phase}-{distro}-kubespray-{type}-{ci-loop}-{stream}'
-
- disabled: true
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - string:
- name: PROJECT
- default: $GERRIT_PROJECT
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.). Overriden by upstream job.'
- - string:
- name: DEPLOY_TYPE
- default: 'virtual'
- description: 'Type of the deployment. Overriden by upstream job.'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'false'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: ENGINE_ANSIBLE_PARAMS
- default: ' -v '
- description: 'Extra paramters that can be added when run the play books.'
- - string:
- name: DEPLOY_SCENARIO
- default: 'k8-calico-nofeature'
- description: 'Scenario to deploy and test'
- - string:
- name: PROVISIONER_TYPE
- default: 'bifrost'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: TEST_FW
- default: '{phase}'
- description: 'Test framework to use'
- - string:
- name: TEST_SUITE
- default: 'smoke'
- description: 'Test suite to run'
- - string:
- name: TEST_REPO_URL
- default: 'https://gerrit.nordix.org/infra/test.git'
- description: 'URL to Nordix Cloud Infra test repository'
- - string:
- name: YARDSTICK_DISPATCHER
- default: 'file'
- description: 'Dispatcher to use for Yardstick reporting'
-
- wrappers:
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $PROVISIONER_TYPE | $INSTALLER_TYPE | $DEPLOY_SCENARIO
- - 'scenario-{phase}-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for deploying and testing
-# ONAP scenario onap-nofeature-noha.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'cloud-infra-periodic-onap-baremetal'
-
- project: 'infra/engine'
-
- onap-branch:
- - 'elalto':
- nordix-branch: master
- onap-version: elalto
- onap-flavor: full
- engine-version: master
- engine-refspec: 'refs/changes/57/4157/12'
- deploy-scenario: 'onap-nofeature-noha'
- deploy-scenario-version: master
- deploy-scenario-refspec: master
- disabled: false
- - 'master':
- nordix-branch: master
- onap-version: master
- onap-flavor: full
- engine-version: master
- engine-refspec: 'refs/changes/57/4157/12'
- deploy-scenario: 'onap-nofeature-noha'
- deploy-scenario-version: master
- deploy-scenario-refspec: master
- disabled: false
-
- distro:
- - ubuntu1804:
- slave-label: 'onap-baremetal-deploy'
- pod-name: est-baremetal
- provisioner-type: bifrost
- installer-type: kubespray
-
- ci-loop:
- - daily:
- daily-trigger: '#@midnight'
-
- onap-other-phases:
- - onap-deploy:
- build-timeout: 420
- - oom-hc:
- build-timeout: 30
- test-type: oom-healthcheck
-# - promote-onap:
-# build-timeout: 240
-
- onap-healthcheck-phases:
- - onap-hc-core:
- build-timeout: 30
- test-type: onap-healthcheck
- - onap-hc-small:
- build-timeout: 30
- test-type: onap-healthcheck
- - onap-hc-medium:
- build-timeout: 30
- test-type: onap-healthcheck
- - onap-hc-full:
- build-timeout: 30
- test-type: onap-healthcheck
- - onap-hc-healthdist:
- build-timeout: 30
- test-type: onap-healthcheck
-
- jobs:
- - 'onap-online-{onap-flavor}-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
- - '{onap-other-phases}-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
- - '{onap-healthcheck-phases}-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
-
-- job-template:
- name: 'onap-online-{onap-flavor}-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: false
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{nordix-branch}'
- - nordix-gerrit-parameters
- - onap-baremetal-parameter-macro-legacy
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: ONAP_VERSION
- default: '{onap-version}'
- description: 'ONAP version to deploy'
- - string:
- name: ONAP_FLAVOR
- default: '{onap-flavor}'
- description: 'ONAP flavor to deploy - could be core, small, medium, full. Also used for xtesting as run_type.'
- - string:
- name: ENGINE_VERSION
- default: '{engine-version}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Could be sha, branch'
- - string:
- name: ENGINE_REFSPEC
- default: '{engine-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Must be refspec.'
- - string:
- name: DEPLOY_SCENARIO_VERSION
- default: '{deploy-scenario-version}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_REFSPEC and could be sha, branch.'
- - string:
- name: DEPLOY_SCENARIO_REFSPEC
- default: '{deploy-scenario-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_VERSION and must be refspec.'
- - string:
- name: POD_NAME
- default: '{pod-name}'
- description: 'Development purposes only! Set to none for disabling test results DB reporting.'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-engine-.*'
- - 'cloud-infra-verify-scenario-.*'
- - 'cloud-infra-periodic-engine-.*'
- - 'onap-.*'
- - 'k8-.*'
- - 'os-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 1
- option: project
-
- wrappers:
- - mask-passwords
- - build-timeout:
- timeout: 630
- - fix-workspace-permissions
-
- triggers:
- - timed: '{daily-trigger}'
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | $ONAP_FLAVOR | baremetal
- - multijob:
- name: Deploy ONAP using OOM
- condition: ALWAYS
- projects:
- - name: 'onap-deploy-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=$ONAP_FLAVOR
- POD_NAME=$POD_NAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- git-revision: true
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: K8S and OOM Healthcheck using xtesting
- condition: ALWAYS
- projects:
- - name: 'oom-hc-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=full
- TEST_TYPE=oom-healthcheck
- POD_NAME=$POD_NAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: ONAP Healthcheck using xtesting
- execution-type: SEQUENTIALLY
- condition: ALWAYS
- projects:
- - name: 'onap-hc-core-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=core
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - name: 'onap-hc-small-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=small
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - name: 'onap-hc-medium-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=medium
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - name: 'onap-hc-full-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=full
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - name: 'onap-hc-healthdist-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=healthdist
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
-# - multijob:
-# name: Promote ONAP (not activated)
-# condition: ALWAYS
-# projects:
-# - name: 'promote-onap-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
-# current-parameters: false
-# predefined-parameters: |
-# SLAVE_LABEL=$SLAVE_LABEL
-# DISTRO=$DISTRO
-# PROVISIONER_TYPE=$PROVISIONER_TYPE
-# INSTALLER_TYPE=$INSTALLER_TYPE
-# DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-# ONAP_VERSION=$ONAP_VERSION
-# ONAP_FLAVOR=core
-# TEST_TYPE=onap-healthcheck
-# POD_NAME=$POD_NAME
-# ENGINE_VERSION=$ENGINE_VERSION
-# ENGINE_REFSPEC=$ENGINE_REFSPEC
-# DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
-# DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
-# XTESTING_REPO_URL=$XTESTING_REPO_URL
-# ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
-# node-parameters: true
-# kill-phase-on: NEVER
-# abort-all-job: false
-
-- job-template:
- name: '{onap-other-phases}-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
-
- disabled: false
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{nordix-branch}'
- - nordix-gerrit-parameters
- - onap-baremetal-parameter-macro-legacy
- - label:
- name: SLAVE_LABEL
- default: 'xerces-jumphost-onap-ubuntu1804'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: ONAP_FLAVOR
- default: '{onap-flavor}'
- description: 'ONAP flavor to deploy - could be core, small, medium, full. Also used for xtesting as run_type.'
- - string:
- name: ONAP_VERSION
- default: '{onap-version}'
- description: 'ONAP version to deploy'
-
- wrappers:
- - mask-passwords
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
- - credentials-binding:
- - username-password-separated:
- credential-id: 'nordix-cicd-arm-credentials'
- username: NORDIX_ARM_USERNAME
- password: NORDIX_ARM_TOKEN
- - username-password-separated:
- credential-id: 'nordix-cicd-harbor-credentials'
- username: NORDIX_HARBOR_USERNAME
- password: NORDIX_HARBOR_PASSWORD
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | $ONAP_FLAVOR | baremetal
- - '{onap-other-phases}-baremetal-macro-legacy'
-
-- job-template:
- name: '{onap-healthcheck-phases}-{distro}-{installer-type}-baremetal-{ci-loop}-{onap-branch}'
-
- disabled: false
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{nordix-branch}'
- - nordix-gerrit-parameters
- - onap-baremetal-parameter-macro-legacy
- - label:
- name: SLAVE_LABEL
- default: 'xerces-jumphost-onap-ubuntu1804'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: ONAP_VERSION
- default: '{onap-version}'
- description: 'ONAP version to deploy'
- - string:
- name: ENGINE_VERSION
- default: '{engine-version}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Could be sha, branch'
- - string:
- name: ENGINE_REFSPEC
- default: '{engine-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Must be refspec.'
- - string:
- name: DEPLOY_SCENARIO_VERSION
- default: '{deploy-scenario-version}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_REFSPEC and could be sha, branch.'
- - string:
- name: DEPLOY_SCENARIO_REFSPEC
- default: '{deploy-scenario-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_VERSION and must be refspec.'
- - string:
- name: POD_NAME
- default: '{pod-name}'
- description: 'Development purposes only! Set to none for disabling test results DB reporting.'
-
- wrappers:
- - mask-passwords
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | $ONAP_FLAVOR | baremetal
- - 'onap-healthcheck-baremetal-macro-legacy'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for deploying and testing
-# ONAP scenario onap-nofeature-noha.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'cloud-infra-periodic-onap'
-
- project: 'infra/engine'
-
- cloud:
- - city:
- slave-label: 'engine-jumphost-online-ubuntu1804'
- openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-onap'
- daily-trigger: '@midnight'
- - xerces:
- slave-label: 'xerces-jumphost-ubuntu1804'
- openrc-credentials-file: 'est-estinfra-openrcfile-xerces-lund-onap'
- daily-trigger: '#@midnight'
-
- onap-branch:
- - 'elalto':
- nordix-branch: master
- onap-version: elalto
- onap-flavor: full
- engine-version: master
- engine-refspec: master
- deploy-scenario: 'onap-nofeature-noha'
- deploy-scenario-version: master
- deploy-scenario-refspec: master
- disabled: true
- delete-stack: 'yes'
- - 'master':
- nordix-branch: master
- onap-version: master
- onap-flavor: full
- engine-version: master
- engine-refspec: master
- deploy-scenario: 'onap-nofeature-noha'
- deploy-scenario-version: master
- deploy-scenario-refspec: master
- disabled: true
- delete-stack: 'yes'
-
- distro:
- - ubuntu1804
-
- ci-loop:
- - daily
-
- type:
- - cloud:
- pod-name: est-cloud
- provisioner-type: heat
- installer-type: kubespray
-
- onap-other-phases:
- - onap-deploy:
- build-timeout: 210
- - oom-hc:
- build-timeout: 30
- test-type: oom-healthcheck
- - promote-onap:
- build-timeout: 240
-
- onap-healthcheck-phases:
- - onap-hc-core:
- build-timeout: 30
- test-type: onap-healthcheck
- - onap-hc-small:
- build-timeout: 30
- test-type: onap-healthcheck
- - onap-hc-medium:
- build-timeout: 30
- test-type: onap-healthcheck
- - onap-hc-full:
- build-timeout: 30
- test-type: onap-healthcheck
- - onap-hc-healthdist:
- build-timeout: 30
- test-type: onap-healthcheck
-
- jobs:
- - 'onap-online-{onap-flavor}-{distro}-{installer-type}-{cloud}-{type}-{ci-loop}-{onap-branch}'
- - '{onap-other-phases}-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
- - '{onap-healthcheck-phases}-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
-
-- job-template:
- name: 'onap-online-{onap-flavor}-{distro}-{installer-type}-{cloud}-{type}-{ci-loop}-{onap-branch}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: false
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{nordix-branch}'
- - nordix-gerrit-parameters
- - onap-parameter-macro-legacy
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: OPENSTACK_CLOUD_PROVIDER
- default: '{cloud}'
- description: 'Name of the cloud where this job is run'
- - string:
- name: ONAP_VERSION
- default: '{onap-version}'
- description: 'ONAP version to deploy'
- - string:
- name: ONAP_FLAVOR
- default: '{onap-flavor}'
- description: 'ONAP flavor to deploy - could be core, small, medium, full. Also used for xtesting as run_type.'
- - string:
- name: STACK_NAME
- default: 'nordix-cicd-{deploy-scenario}-{onap-branch}-{onap-flavor}'
- - string:
- name: KEYPAIR_NAME
- default: 'keypair-nordix-cicd-{deploy-scenario}-{onap-branch}-{onap-flavor}'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: "heat-environment-{cloud}-{distro}-full.yaml"
- description: 'Type of the deployment'
- - string:
- name: ENGINE_VERSION
- default: '{engine-version}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Could be sha, branch'
- - string:
- name: ENGINE_REFSPEC
- default: '{engine-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Must be refspec.'
- - string:
- name: DEPLOY_SCENARIO_VERSION
- default: '{deploy-scenario-version}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_REFSPEC and could be sha, branch.'
- - string:
- name: DEPLOY_SCENARIO_REFSPEC
- default: '{deploy-scenario-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_VERSION and must be refspec.'
- - string:
- name: POD_NAME
- default: '{pod-name}'
- description: 'Development purposes only! Set to none for disabling test results DB reporting.'
- - string:
- name: DELETE_STACK
- default: '{delete-stack}'
- description: 'Development purposes only! Whether delete the stack or not. It must either be yes or no. Setting this to no will increase the cost!'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-engine-.*'
- - 'cloud-infra-verify-scenario-.*'
- - 'cloud-infra-periodic-engine-.*'
- - 'onap-.*'
- - 'k8-.*'
- - 'os-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 1
- option: project
-
- wrappers:
- - credentials-binding:
- - file:
- credential-id: '{openrc-credentials-file}'
- variable: OPENRC_FILE
- - mask-passwords
- - build-timeout:
- timeout: 630
- - fix-workspace-permissions
- - openstack:
- single-use: True
-
- triggers:
- - timed: '{daily-trigger}'
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | $ONAP_FLAVOR
- - shell: |
- #!/bin/bash
- /bin/rm -rf /tmp/openrc && /bin/cp -f $OPENRC_FILE /tmp/openrc
- - multijob:
- name: Deploy ONAP using OOM
- condition: ALWAYS
- projects:
- - name: 'onap-deploy-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=$ONAP_FLAVOR
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- git-revision: true
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: K8S and OOM Healthcheck using xtesting
- condition: ALWAYS
- projects:
- - name: 'oom-hc-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=full
- TEST_TYPE=oom-healthcheck
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: ONAP Healthcheck using xtesting
- execution-type: SEQUENTIALLY
- condition: ALWAYS
- projects:
- - name: 'onap-hc-core-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- DEPLOY_TYPE=$DEPLOY_TYPE
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=core
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - name: 'onap-hc-small-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- DEPLOY_TYPE=$DEPLOY_TYPE
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=small
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - name: 'onap-hc-medium-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- DEPLOY_TYPE=$DEPLOY_TYPE
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=medium
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - name: 'onap-hc-full-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- DEPLOY_TYPE=$DEPLOY_TYPE
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=full
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - name: 'onap-hc-healthdist-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- DEPLOY_TYPE=$DEPLOY_TYPE
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=healthdist
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: Promote ONAP (not activated)
- condition: ALWAYS
- projects:
- - name: 'promote-onap-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- DEPLOY_TYPE=$DEPLOY_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_FLAVOR=$ONAP_FLAVOR
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
-
- publishers:
- - postbuildscript:
- builders:
- - role: SLAVE
- build-on:
- - SUCCESS
- - FAILURE
- - ABORTED
- - NOT_BUILT
- - UNSTABLE
- build-steps:
- - shell:
- !include-raw-escape: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./delete-heat-stack.sh
-
-- job-template:
- name: '{onap-other-phases}-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
-
- disabled: false
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{nordix-branch}'
- - nordix-gerrit-parameters
- - onap-parameter-macro-legacy
- - label:
- name: SLAVE_LABEL
- default: 'xerces-jumphost-onap-ubuntu1804'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: OPENSTACK_CLOUD_PROVIDER
- default: 'city'
- description: 'Name of the cloud where this job is run'
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: ONAP_FLAVOR
- default: '{onap-flavor}'
- description: 'ONAP flavor to deploy - could be core, small, medium, full. Also used for xtesting as run_type.'
- - string:
- name: ONAP_VERSION
- default: '{onap-version}'
- description: 'ONAP version to deploy'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: "heat-environment-full.yaml"
- description: 'Type of the deployment'
- - string:
- name: HEAT_ENVIRONMENT_FILE
- default: "file:///opt/engine/.cache/repos/swconfig/scenarios/$DEPLOY_SCENARIO/$INSTALLER_TYPE/role/$DEPLOY_SCENARIO/files/$HEAT_ENVIRONMENT_FILENAME"
- description: 'Type of the deployment'
-
- wrappers:
- - mask-passwords
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
- - credentials-binding:
- - username-password-separated:
- credential-id: 'nordix-cicd-arm-credentials'
- username: NORDIX_ARM_USERNAME
- password: NORDIX_ARM_TOKEN
- - username-password-separated:
- credential-id: 'nordix-cicd-harbor-credentials'
- username: NORDIX_HARBOR_USERNAME
- password: NORDIX_HARBOR_PASSWORD
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | $ONAP_FLAVOR | $OPENSTACK_CLOUD_PROVIDER
- - '{onap-other-phases}-macro-legacy'
-
-- job-template:
- name: '{onap-healthcheck-phases}-{distro}-{installer-type}-{type}-{ci-loop}-{onap-branch}'
-
- disabled: false
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{nordix-branch}'
- - nordix-gerrit-parameters
- - onap-parameter-macro-legacy
- - label:
- name: SLAVE_LABEL
- default: 'xerces-jumphost-onap-ubuntu1804'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: OPENSTACK_CLOUD_PROVIDER
- default: 'city'
- description: 'Name of the cloud where this job is run'
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: ONAP_VERSION
- default: '{onap-version}'
- description: 'ONAP version to deploy'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: "heat-environment-full.yaml"
- description: 'Type of the deployment'
- - string:
- name: HEAT_ENVIRONMENT_FILE
- default: "file:///opt/engine/.cache/repos/swconfig/scenarios/$DEPLOY_SCENARIO/$INSTALLER_TYPE/role/$DEPLOY_SCENARIO/files/$HEAT_ENVIRONMENT_FILENAME"
- description: 'Type of the deployment'
- - string:
- name: ENGINE_VERSION
- default: '{engine-version}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Could be sha, branch'
- - string:
- name: ENGINE_REFSPEC
- default: '{engine-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Must be refspec.'
- - string:
- name: DEPLOY_SCENARIO_VERSION
- default: '{deploy-scenario-version}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_REFSPEC and could be sha, branch.'
- - string:
- name: DEPLOY_SCENARIO_REFSPEC
- default: '{deploy-scenario-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_VERSION and must be refspec.'
- - string:
- name: POD_NAME
- default: '{pod-name}'
- description: 'Development purposes only! Set to none for disabling test results DB reporting.'
-
- wrappers:
- - mask-passwords
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | $ONAP_FLAVOR | $OPENSTACK_CLOUD_PROVIDER
- - 'onap-healthcheck-macro-legacy'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for verifying cloud-infra
-# engine from the tip of the master branch periodically to check the stability of it.
-#
-# These jobs are set to run on slaves with label vpod-deploy-ubuntu1604.
-# The slaves have
-# - Ubuntu1604 as the base distro
-# - nested virtualization
-# - internet access
-# - passwordless sudo
-# - 16 CPUs/32GB RAM/200 GB Disk
-# - docker, git vim curl wget zip unzip chrony apt-transport-https ca-certificates curl
-# gnupg-agent software-properties-common docker-ce docker-ce-cli containerd.io openjdk-8-jre
-#
-# The slaves should not have a cloud infra scenario deployed on them.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'cloud-infra-periodic-openstack'
-
- project: 'infra/engine'
-
- stream:
- - 'master':
- disabled: 'true'
- engine-branch: 'master'
- openstack-branch: '{stream}'
- - 'train':
- disabled: 'true'
- engine-branch: 'master'
- openstack-branch: '{stream}'
- - 'stein':
- disabled: 'true'
- engine-branch: 'master'
- openstack-branch: '{stream}'
- - 'rocky':
- disabled: 'true'
- engine-branch: 'master'
- openstack-branch: '{stream}'
-
- distro:
- - ubuntu1804
-
- deploy-scenario:
- - os-nosdn-nofeature
-
- type:
- - baremetal:
- pod-name: est-baremetal
- slave-label: baremetal-deploy
- provisioner-type: bifrost
- installer-type: kolla
- test-suite: smoke
- yardstick-dispatcher: 'influxdb'
- ci-loop: daily
- trigger-on: '@daily'
- - virtual:
- pod-name: est-virtual
- slave-label: vpod
- provisioner-type: bifrost
- installer-type: kolla
- test-suite: healthcheck
- yardstick-dispatcher: 'influxdb'
- ci-loop: periodic
- trigger-on: '0 */8 * * *'
-
- phase:
- - deploy:
- build-timeout: 90
- - functest:
- build-timeout: 240
- - yardstick:
- build-timeout: 120
- - promote:
- build-timeout: 5
-
- jobs:
- - '{deploy-scenario}-{distro}-kolla-{type}-{ci-loop}-{stream}'
- - 'openstack-{phase}-{distro}-kolla-{type}-{ci-loop}-{stream}'
-
-- job-template:
- name: '{deploy-scenario}-{distro}-kolla-{type}-{ci-loop}-{stream}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: true
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{engine-branch}'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: CI_LOOP
- default: '{ci-loop}'
- description: 'Type of the deployment'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: DEPLOY_TYPE
- default: '{type}'
- description: 'Type of the deployment'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'true'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: OPENSTACK_VERSION
- default: '{openstack-branch}'
- description: 'OpenStack Version to deploy and test'
- - string:
- name: PROVISIONER_TYPE
- default: '{provisioner-type}'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: '{installer-type}'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: '{deploy-scenario}'
- description: 'Scenario to deploy and test'
- - string:
- name: TEST_SUITE
- default: '{test-suite}'
- description: 'Test suite to run'
- - string:
- name: YARDSTICK_DISPATCHER
- default: '{yardstick-dispatcher}'
- description: 'Dispatcher to use for Yardstick reporting'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-engine-.*'
- - 'cloud-infra-verify-scenario-.*'
- - 'cloud-infra-periodic-engine-.*'
- - 'onap-.*'
- - 'k8-.*'
- - 'os-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 3
- option: project
-
- wrappers:
- - build-timeout:
- timeout: 455
- - fix-workspace-permissions
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{engine-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- triggers:
- - timed: '{trigger-on}'
-
- builders:
- - description-setter:
- description: $PROVISIONER_TYPE | $INSTALLER_TYPE | $DEPLOY_SCENARIO
- - multijob:
- name: deploy
- condition: SUCCESSFUL
- projects:
- - name: 'openstack-deploy-{distro}-{installer-type}-{type}-{ci-loop}-{stream}'
- current-parameters: true
- predefined-parameters: |
- CI_LOOP=$CI_LOOP
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
- OPENSTACK_VERSION=$OPENSTACK_VERSION
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- git-revision: true
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- - multijob:
- name: functest
- condition: ALWAYS
- projects:
- - name: 'openstack-functest-{distro}-{installer-type}-{type}-{ci-loop}-{stream}'
- current-parameters: true
- predefined-parameters: |
- CI_LOOP=$CI_LOOP
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- OPENSTACK_VERSION=$OPENSTACK_VERSION
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: yardstick
- condition: ALWAYS
- projects:
- - name: 'openstack-yardstick-{distro}-{installer-type}-{type}-{ci-loop}-{stream}'
- current-parameters: true
- predefined-parameters: |
- CI_LOOP=$CI_LOOP
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- OPENSTACK_VERSION=$OPENSTACK_VERSION
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: promote
- condition: SUCCESSFUL
- projects:
- - name: 'openstack-promote-{distro}-{installer-type}-{type}-{ci-loop}-{stream}'
- current-parameters: true
- predefined-parameters: |
- CI_LOOP=$CI_LOOP
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- OPENSTACK_VERSION=$OPENSTACK_VERSION
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
-
-- job-template:
- name: 'openstack-{phase}-{distro}-kolla-{type}-{ci-loop}-{stream}'
-
- disabled: false
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - string:
- name: PROJECT
- default: $GERRIT_PROJECT
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.). Overriden by upstream job.'
- - string:
- name: CI_LOOP
- default: '{ci-loop}'
- description: 'Type of the deployment'
- - string:
- name: DEPLOY_TYPE
- default: 'virtual'
- description: 'Type of the deployment. Overriden by upstream job.'
- - string:
- name: OPENSTACK_VERSION
- default: 'stein'
- description: 'OpenStack Version to deploy and test'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'false'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: ENGINE_ANSIBLE_PARAMS
- default: ' -v '
- description: 'Extra paramters that can be added when run the play books.'
- - string:
- name: DEPLOY_SCENARIO
- default: 'k8-calico-nofeature'
- description: 'Scenario to deploy and test'
- - string:
- name: PROVISIONER_TYPE
- default: 'bifrost'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: 'kolla'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: TEST_FW
- default: '{phase}'
- description: 'Test framework to use'
- - string:
- name: TEST_SUITE
- default: 'smoke'
- description: 'Test suite to run'
- - string:
- name: TEST_REPO_URL
- default: 'https://gerrit.nordix.org/infra/test.git'
- description: 'URL to Nordix Cloud Infra test repository'
- - string:
- name: YARDSTICK_DISPATCHER
- default: 'file'
- description: 'Dispatcher to use for Yardstick reporting'
-
- wrappers:
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{engine-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $PROVISIONER_TYPE | $INSTALLER_TYPE | $DEPLOY_SCENARIO
- - 'scenario-{phase}-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for deploying and testing
-# Spinnaker using k8-calico-spinnaker scenario.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'cloud-infra-periodic-spinnaker'
-
- project: 'infra/engine'
-
- cloud:
- - city:
- slave-label: 'engine-jumphost-online-ubuntu1804'
- openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-onap'
- daily-trigger: '@daily'
-
- spinnaker-branch:
- - '1.16':
- nordix-branch: master
- engine-version: master
- engine-refspec: master
- deploy-scenario: 'k8-calico-spinnaker'
- deploy-scenario-version: master
- deploy-scenario-refspec: master
- keypair-name: 'keypair-nordix-cicd-{deploy-scenario}-1_16'
- disabled: true
- delete-stack: 'yes'
-
- distro:
- - ubuntu1804
-
- ci-loop:
- - daily
-
- type:
- - cloud:
- pod-name: est-cloud
- provisioner-type: heat
- installer-type: kubespray
-
- phase:
- - spinnaker-deploy:
- build-timeout: 60
- - spinnaker-test:
- build-timeout: 60
- - promote-spinnaker:
- build-timeout: 60
-
- jobs:
- - 'k8-calico-spinnaker-{distro}-{installer-type}-{cloud}-{type}-{ci-loop}-{spinnaker-branch}'
- - '{phase}-{distro}-{installer-type}-{type}-{ci-loop}-{spinnaker-branch}'
-
-- job-template:
- name: 'k8-calico-spinnaker-{distro}-{installer-type}-{cloud}-{type}-{ci-loop}-{spinnaker-branch}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: false
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{nordix-branch}'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: PROVISIONER_TYPE
- default: 'heat'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: 'k8-calico-spinnaker'
- description: 'Scenario to deploy and test'
- - string:
- name: DEPLOY_TYPE
- default: 'cloud'
- description: 'Type of the deployment'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: OPENSTACK_CLOUD_PROVIDER
- default: '{cloud}'
- description: 'Name of the cloud where this job is run'
- - string:
- name: SPINNAKER_VERSION
- default: '{spinnaker-branch}'
- description: 'Spinnaker version to deploy'
- - string:
- name: STACK_NAME
- default: 'nordix-cicd-{deploy-scenario}-{spinnaker-branch}'
- - string:
- name: KEYPAIR_NAME
- default: '{keypair-name}'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: "heat-environment-full.yaml"
- description: 'Heat environment file to use for creating the stack'
- - string:
- name: ENGINE_VERSION
- default: '{engine-version}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying Spinnaker. Could be sha, branch'
- - string:
- name: ENGINE_REFSPEC
- default: '{engine-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying Spinnaker. Must be refspec.'
- - string:
- name: DEPLOY_SCENARIO_VERSION
- default: '{deploy-scenario-version}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying Spinnaker. Depends on DEPLOY_SCENARIO_REFSPEC and could be sha, branch.'
- - string:
- name: DEPLOY_SCENARIO_REFSPEC
- default: '{deploy-scenario-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying Spinnaker. Depends on DEPLOY_SCENARIO_VERSION and must be refspec.'
- - string:
- name: POD_NAME
- default: '{pod-name}'
- description: 'Development purposes only! Set to none for disabling test results DB reporting.'
- - string:
- name: DELETE_STACK
- default: '{delete-stack}'
- description: 'Development purposes only! Whether delete the stack or not. It must either be yes or no. Setting this to no will increase the cost!'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-engine-.*'
- - 'cloud-infra-verify-scenario-.*'
- - 'cloud-infra-periodic-engine-.*'
- - 'onap-.*'
- - 'k8-.*'
- - 'os-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 1
- option: project
-
- wrappers:
- - credentials-binding:
- - file:
- credential-id: '{openrc-credentials-file}'
- variable: OPENRC_FILE
- - mask-passwords
- - build-timeout:
- timeout: 630
- - fix-workspace-permissions
- - openstack:
- single-use: True
-
- triggers:
- - timed: '{daily-trigger}'
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | Spinnaker $SPINNAKER_VERSION
- - shell: |
- #!/bin/bash
- /bin/rm -rf /tmp/openrc && /bin/cp -f $OPENRC_FILE /tmp/openrc
- - multijob:
- name: Deploy Spinnaker using Helm
- condition: ALWAYS
- projects:
- - name: 'spinnaker-deploy-{distro}-{installer-type}-{type}-{ci-loop}-{spinnaker-branch}'
- current-parameters: false
- predefined-parameters: |
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- SPINNAKER_VERSION=$SPINNAKER_VERSION
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- git-revision: true
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: Test Spinnaker Deployment (not activated)
- condition: ALWAYS
- projects:
- - name: 'spinnaker-test-{distro}-{installer-type}-{type}-{ci-loop}-{spinnaker-branch}'
- current-parameters: false
- predefined-parameters: |
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- SPINNAKER_VERSION=$SPINNAKER_VERSION
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- git-revision: true
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: Promote Spinnaker (not activated)
- condition: ALWAYS
- projects:
- - name: 'promote-spinnaker-{distro}-{installer-type}-{type}-{ci-loop}-{spinnaker-branch}'
- current-parameters: false
- predefined-parameters: |
- DISTRO=$DISTRO
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- DEPLOY_TYPE=$DEPLOY_TYPE
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- SPINNAKER_VERSION=$SPINNAKER_VERSION
- POD_NAME=$POD_NAME
- STACK_NAME=$STACK_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- git-revision: true
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
-
- publishers:
- - postbuildscript:
- builders:
- - role: SLAVE
- build-on:
- - SUCCESS
- - FAILURE
- - ABORTED
- - NOT_BUILT
- - UNSTABLE
- build-steps:
- - shell:
- !include-raw-escape: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./delete-heat-stack.sh
-
-- job-template:
- name: '{phase}-{distro}-{installer-type}-{type}-{ci-loop}-{spinnaker-branch}'
-
- disabled: false
-
- concurrent: false
-
- properties:
- - logrotate
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{nordix-branch}'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: 'engine-jumphost-online-ubuntu1804'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: PROVISIONER_TYPE
- default: 'heat'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: 'k8-calico-spinnaker'
- description: 'Scenario to deploy and test'
- - string:
- name: DEPLOY_TYPE
- default: 'cloud'
- description: 'Type of the deployment'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: OPENSTACK_CLOUD_PROVIDER
- default: '{cloud}'
- description: 'Name of the cloud where this job is run'
- - string:
- name: SPINNAKER_VERSION
- default: '{spinnaker-branch}'
- description: 'Spinnaker version to deploy'
- - string:
- name: STACK_NAME
- default: 'nordix-cicd-{deploy-scenario}-{spinnaker-branch}'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: "heat-environment-full.yaml"
- description: 'Heat environment filename to use for creating the stack'
- - string:
- name: HEAT_ENVIRONMENT_FILE
- default: "file:///opt/engine/.cache/repos/swconfig/scenarios/$DEPLOY_SCENARIO/$INSTALLER_TYPE/role/$DEPLOY_SCENARIO/files/$HEAT_ENVIRONMENT_FILENAME"
- description: 'Heat environment file location to use for creating the stack'
- - string:
- name: ENGINE_VERSION
- default: '{engine-version}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying Spinnaker. Could be sha, branch'
- - string:
- name: ENGINE_REFSPEC
- default: '{engine-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying Spinnaker. Must be refspec.'
- - string:
- name: DEPLOY_SCENARIO_VERSION
- default: '{deploy-scenario-version}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying Spinnaker. Depends on DEPLOY_SCENARIO_REFSPEC and could be sha, branch.'
- - string:
- name: DEPLOY_SCENARIO_REFSPEC
- default: '{deploy-scenario-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying Spinnaker. Depends on DEPLOY_SCENARIO_VERSION and must be refspec.'
- - string:
- name: POD_NAME
- default: '{pod-name}'
- description: 'Development purposes only! Set to none for disabling test results DB reporting.'
- - string:
- name: DELETE_STACK
- default: '{delete-stack}'
- description: 'Development purposes only! Whether delete the stack or not. It must either be yes or no. Setting this to no will increase the cost!'
-
- wrappers:
- - mask-passwords
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
- - credentials-binding:
- - username-password-separated:
- credential-id: 'nordix-cicd-arm-credentials'
- username: NORDIX_ARM_USERNAME
- password: NORDIX_ARM_TOKEN
- - username-password-separated:
- credential-id: 'nordix-cicd-harbor-credentials'
- username: NORDIX_HARBOR_USERNAME
- password: NORDIX_HARBOR_PASSWORD
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | Spinnaker $SPINNAKER_VERSION | $OPENSTACK_CLOUD_PROVIDER
- - '{phase}-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-
-# vim: set ts=2 sw=2 expandtab:
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-set -o pipefail
-
-# execute cloud engine test.sh script with arguments
-echo "Info: Testing scenario $DEPLOY_SCENARIO deployed using $INSTALLER_TYPE"
-cd $WORKSPACE
-./test/test.sh -f $TEST_FW -t $TEST_SUITE -s $DEPLOY_SCENARIO
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-set -o pipefail
-
-# This script is a wrapper around actual cloud infra engine test.sh script which gets
-# executed when the job that uses this script gets triggered due to Gerrit change.
-#
-# Logic in this script should be kept at minimum and the changes should be pushed into
-# the cloud infra test test.sh script.
-
-# we don't support ONAP scenario verification because it is expensive
-# TODO: we need to find a way to verify those patches in a cheaper way
-if [[ "$DEPLOY_SCENARIO" =~ "onap" ]]; then
- echo "Info: ONAP scenario verification has not been implemented yet!"
- exit 0
-fi
-
-# we don't support testing of the deployments done on OpenStack cloud using heat yet
-if [[ $DEPLOY_TYPE == "cloud" ]]; then
- echo "Info: Testing of cloud deployments has not been implemented yet!"
- exit 0
-fi
-
-# execute cloud engine test.sh script with arguments
-cd $WORKSPACE
-./test/test.sh -f $TEST_FW -t $TEST_SUITE -s $DEPLOY_SCENARIO -d $YARDSTICK_DISPATCHER
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-- project:
- name: 'cloud-infra-lint'
-
- project: 'cloud-infra-lint'
-
- stream:
- - 'master':
- branch: '{stream}'
-
- lint-type:
- - ansible-lint:
- repos-to-enable: 'infra\/engine|infra\/test|infra\/swconfig'
- disabled: true
- - yamllint:
- repos-to-enable: 'infra\/engine|infra\/test|infra\/swconfig|infra\/hwconfig'
- disabled: true
- - shellcheck:
- repos-to-enable: 'infra\/engine|infra\/test|infra\/swconfig'
- disabled: true
-
- jobs:
- - 'cloud-infra-verify-{lint-type}-{stream}'
-
-- job-template:
- name: 'cloud-infra-verify-{lint-type}-{stream}'
-
- disabled: '{obj:disabled}'
-
- concurrent: true
-
- node: infra-tools-docker-slave-ubuntu1804
-
- parameters:
- - project-parameters:
- project: $GERRIT_PROJECT
- branch: '{branch}'
- - nordix-gerrit-parameters
- - string:
- name: LINT_TYPE
- default: '{lint-type}'
- description: 'Lint type to run'
-
- properties:
- - logrotate
-
- wrappers:
- - build-timeout:
- timeout: 150
- - fix-workspace-permissions
-
- scm:
- - git-scm-gerrit:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: $GERRIT_REFSPEC
- wipe_workspace: true
- clean_before: false
-
- triggers:
- - gerrit:
- server-name: 'Nordix Gerrit'
- trigger-on:
- - patchset-created-event:
- exclude-drafts: 'false'
- exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
- - draft-published-event
- - comment-added-contains-event:
- comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
- projects:
- - project-compare-type: 'REG_EXP'
- project-pattern: '{repos-to-enable}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- disable-strict-forbidden-file-verification: 'false'
- forbidden-file-paths:
- - compare-type: ANT
- pattern: 'docs/**|.gitignore'
- custom-url: '* $JOB_NAME $BUILD_URL'
-
- builders:
- - 'cloud-infra-lint-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for verifying patches
-# that are sent to the repositories below
-# - cloud-infra/swconfig
-#
-# These jobs verify changes that
-# - implement new scenarios or fix bugs in the existing scenarios
-#
-# These jobs are set to run on slaves with label vpod-deploy-ubuntu1604.
-# The slaves have
-# - Ubuntu1604 as the base distro
-# - nested virtualization
-# - internet access
-# - passwordless sudo
-# - 16 CPUs/32GB RAM/200 GB Disk
-# - docker, git vim curl wget zip unzip chrony apt-transport-https ca-certificates curl
-# gnupg-agent software-properties-common docker-ce docker-ce-cli containerd.io openjdk-8-jre
-#
-# The slaves should not have a cloud infra scenario deployed on them.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'cloud-infra-verify-scenario'
-
- project: 'infra/swconfig'
-
- stream:
- - 'master':
- branch: '{stream}'
-
- distro:
- - ubuntu1804:
- slave-label: vpod-deploy-ubuntu1804
- disabled: true
- successful: true
- failed: true
- unstable: true
- notbuilt: true
- - centos7:
- slave-label: vpod-deploy-centos7
- disabled: true
- successful: true
- failed: true
- unstable: true
- notbuilt: true
-
- type:
- - virtual
-
- phase:
- - deploy:
- build-timeout: 120
- - functest:
- build-timeout: 60
-
- jobs:
- - 'cloud-infra-verify-scenario-{distro}-{type}-{stream}'
- - 'cloud-infra-verify-scenario-{distro}-{phase}-{type}-{stream}'
-
-- job-template:
- name: 'cloud-infra-verify-scenario-{distro}-{type}-{stream}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: true
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{branch}'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: DEPLOY_TYPE
- default: '{type}'
- description: 'Type of the deployment'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'true'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: TEST_SUITE
- default: 'healthcheck'
- description: 'Test suite to run'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-engine-.*'
- - 'cloud-infra-verify-scenario-.*'
- - 'cloud-infra-periodic-engine-.*'
- - 'onap-.*'
- - 'k8-.*'
- - 'os-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 3
- option: project
-
- wrappers:
- - build-timeout:
- timeout: 180
- - fix-workspace-permissions
- - openstack:
- single-use: True
-
- scm:
- - git-scm-gerrit:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: $GERRIT_REFSPEC
- wipe_workspace: true
- clean_before: false
-
- triggers:
- - nordix-gerrit-trigger-patchset-created:
- project: 'infra\/swconfig'
- branch: '{branch}'
- files: '**'
- custom-url: '* $JOB_NAME $BUILD_URL'
- skip-vote:
- successful: '{obj:successful}'
- failed: '{obj:failed}'
- unstable: '{obj:unstable}'
- notbuilt: '{obj:notbuilt}'
-
- builders:
- - 'cloud-infra-determine-scenario-macro'
- - multijob:
- name: deploy
- condition: SUCCESSFUL
- projects:
- - name: 'cloud-infra-verify-scenario-{distro}-deploy-{type}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
- GERRIT_PROJECT=$GERRIT_PROJECT
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- - multijob:
- name: functest
- condition: SUCCESSFUL
- projects:
- - name: 'cloud-infra-verify-scenario-{distro}-functest-{type}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
- TEST_SUITE=$TEST_SUITE
- GERRIT_PROJECT=$GERRIT_PROJECT
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
-
-- job-template:
- name: 'cloud-infra-verify-scenario-{distro}-{phase}-{type}-{stream}'
-
- disabled: true
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - string:
- name: PROJECT
- default: $GERRIT_PROJECT
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.). Overriden by upstream job.'
- - string:
- name: DEPLOY_TYPE
- default: 'virtual'
- description: 'Type of the deployment. Overriden by upstream job.'
- - string:
- name: USE_PREBUILT_DEPLOYMENT_IMAGE
- default: 'false'
- description: 'Use prebuilt deployment image while running as part of CI/CD'
- - string:
- name: TEST_FW
- default: '{phase}'
- description: 'Test framework to use'
- - string:
- name: TEST_SUITE
- default: 'healthcheck'
- description: 'Test suite to run'
- - string:
- name: ENGINE_REPO_URL
- default: 'https://gerrit.nordix.org/infra/engine.git'
- description: 'URL to Nordix Cloud Infra engine repository'
- - string:
- name: TEST_REPO_URL
- default: 'https://gerrit.nordix.org/infra/test.git'
- description: 'URL to Nordix Cloud Infra test repository'
-
- wrappers:
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
-
- scm:
- - git-scm-gerrit:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: $GERRIT_REFSPEC
- wipe_workspace: true
- clean_before: false
-
- builders:
- - 'cloud-infra-determine-scenario-macro'
- - 'cloud-infra-scenario-{phase}-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for verifying patches
-# that are sent to the repositories below
-# - cloud-infra/test
-#
-# These jobs verify changes that
-# - implement new features or fix bugs to the playbooks and roles used for utilizing
-# open source test frameworks such as opnfv/functest and opnfv/yardstick
-# - bump versions of the open source test frameworks
-#
-# These jobs are set to run on slaves with label vpod-test-ubuntu1604.
-# The slaves have
-# - Ubuntu1604 as the base distro
-# - nested virtualization
-# - internet access
-# - passwordless sudo
-# - 16 CPUs/32GB RAM/200 GB Disk
-# - docker, git vim curl wget zip unzip chrony apt-transport-https ca-certificates curl
-# gnupg-agent software-properties-common docker-ce docker-ce-cli containerd.io openjdk-8-jre
-#
-# The slaves should have a promoted version of a cloud infra scenario deployed on them.
-# Currently k8-calico-nofeature scenario is deployed on the slaves.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'cloud-infra-verify-test'
-
- project: 'infra/test'
-
- stream:
- - 'master':
- branch: '{stream}'
- disabled: 'true'
-
- distro:
- - ubuntu1804:
- disabled: 'true'
- slave-label: vpod-test-ubuntu1804
-
- type:
- - virtual
-
- phase:
- - functest
- - yardstick
-
- jobs:
- - 'cloud-infra-verify-testfw-{distro}-{type}-{stream}'
- - 'cloud-infra-verify-testfw-{distro}-{phase}-{type}-{stream}'
-
-- job-template:
- name: 'cloud-infra-verify-testfw-{distro}-{type}-{stream}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: true
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{branch}'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on. These slaves have cloud infra installed on them.'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: DEPLOY_TYPE
- default: '{type}'
- description: 'Type of the deployment'
- - string:
- name: DEPLOY_SCENARIO
- default: 'k8-calico-nofeature'
- description: 'Scenario to deploy and test'
- - string:
- name: TEST_SUITE
- default: 'healthcheck'
- description: 'Test suite to run'
- - string:
- name: YARDSTICK_DISPATCHER
- default: 'file'
- description: 'Dispatcher to use for Yardstick reporting'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-testfw-{distro}-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 3
- option: project
-
- wrappers:
- - build-timeout:
- timeout: 120
- - fix-workspace-permissions
-
- scm:
- - git-scm-gerrit:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: $GERRIT_REFSPEC
- wipe_workspace: true
- clean_before: false
-
- triggers:
- - nordix-gerrit-trigger-patchset-created:
- project: 'infra\/test'
- branch: '{branch}'
- files: '**'
-
- builders:
- - multijob:
- name: functest
- condition: SUCCESSFUL
- projects:
- - name: 'cloud-infra-verify-testfw-{distro}-functest-{type}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- GERRIT_PROJECT=$GERRIT_PROJECT
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- - multijob:
- name: yardstick
- condition: SUCCESSFUL
- projects:
- - name: 'cloud-infra-verify-testfw-{distro}-yardstick-{type}-{stream}'
- current-parameters: true
- predefined-parameters: |
- DISTRO=$DISTRO
- DEPLOY_TYPE=$DEPLOY_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- TEST_SUITE=$TEST_SUITE
- YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
- GERRIT_PROJECT=$GERRIT_PROJECT
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
-
-- job-template:
- name: 'cloud-infra-verify-testfw-{distro}-{phase}-{type}-{stream}'
-
- disabled: true
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - string:
- name: PROJECT
- default: $GERRIT_PROJECT
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.). Overriden by upstream job.'
- - string:
- name: DEPLOY_TYPE
- default: 'virtual'
- description: 'Type of the deployment. Overriden by upstream job.'
- - string:
- name: DEPLOY_SCENARIO
- default: 'k8-calico-nofeature'
- description: 'Scenario to deploy and test'
- - string:
- name: TEST_FW
- default: '{phase}'
- description: 'Test framework to use'
- - string:
- name: TEST_SUITE
- default: 'healthcheck'
- description: 'Test suite to run'
- - string:
- name: TEST_REPO_URL
- default: 'https://gerrit.nordix.org/infra/test.git'
- description: 'URL to Nordix Cloud Infra test repository'
- - string:
- name: YARDSTICK_DISPATCHER
- default: 'file'
- description: 'Dispatcher to use for Yardstick reporting'
-
- wrappers:
- - build-timeout:
- timeout: 120
- - fix-workspace-permissions
-
- scm:
- - git-scm-gerrit:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{branch}'
- refspec: $GERRIT_REFSPEC
- wipe_workspace: true
- clean_before: false
-
- builders:
- - 'cloud-infra-testfw-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-# proceed only if the deployment is done on openstack
-if [[ $DEPLOY_TYPE != "cloud" ]]; then
- echo "-------------------------------------------------------------------------"
- echo "Info: It is not an OpenStack deployment so nothing to delete!"
- echo "-------------------------------------------------------------------------"
- exit 0
-fi
-
-# do not delete the stack if not explicitly set to delete
-if [[ "$DELETE_STACK" != "yes" ]]; then
- echo "-------------------------------------------------------------------------"
- echo "Info: Stack will not be deleted upon the completion of the job!"
- echo "-------------------------------------------------------------------------"
- exit 0
-fi
-
-# k8s and onap scenario have stacks so exit for others
-if [[ ! "$DEPLOY_SCENARIO" =~ ^k8-.*|^onap-.* ]]; then
- echo "-------------------------------------------------------------------------"
- echo "Info: Nothing to delete!"
- echo "-------------------------------------------------------------------------"
- exit 0
-fi
-
-echo
-echo
-echo "-------------------------------------------------------------------------"
-echo "Info: Please wait while deleting the stack and do not abort the job!"
-echo "-------------------------------------------------------------------------"
-echo
-echo
-
-cd $WORKSPACE
-sudo apt install -y -qq python-dev python-virtualenv > /dev/null
-virtualenv -q $WORKSPACE/.venv
-set +u
-source $WORKSPACE/.venv/bin/activate
-set -u
-pip install -q openstacksdk python-openstackclient python-heatclient
-echo "Info: Deleting stack $STACK_NAME and keypair $KEYPAIR_NAME"
-echo "-------------------------------------------------------------------------"
-source /tmp/openrc && /bin/rm -f /tmp/openrc
-openstack stack delete $STACK_NAME --wait --yes
-openstack keypair delete $KEYPAIR_NAME
-echo "-------------------------------------------------------------------------"
-echo "Info: Stack $STACK_NAME and keypair $KEYPAIR_NAME have been deleted!"
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-set -o pipefail
-
-# this function processes commit message to determine the impacted scenario
-# using the input provided by the committer.
-#
-# provisioner type, installer type and scenario should be placed at the beginning of
-# lines separately and the format of the entry in commit message is as below
-#
-# provisioner-type: <provisioner type>
-# installer-type: <installer type>
-# deploy-scenario: <scenario name>
-#
-# example is
-#
-# provisioner-type: bifrost
-# installer-type: kubespray
-# deploy-scenario: k8-calico-nofeature
-function override_installer_scenario() {
- echo "Info: Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC to determine the provisioner, installer and, scenario"
- cd $WORKSPACE
- COMMIT_MESSAGE=$(git show -s --format=%B)
-
- if [[ "$COMMIT_MESSAGE" =~ "provisioner-type:" ]]; then
- # we support heat as well so ensure we capture it
- export PROVISIONER_TYPE=$(echo "$COMMIT_MESSAGE" | grep '^provisioner-type:' | cut -d":" -f2 | sed 's/\s*//g')
- else
- # default is almost always bifrost
- if [[ "$PROVISIONER_TYPE" == "" ]]; then
- export PROVISIONER_TYPE=bifrost
- fi
- fi
-
- if [[ "$COMMIT_MESSAGE" =~ "deploy-scenario:" && "$COMMIT_MESSAGE" =~ "installer-type:" ]]; then
- export INSTALLER_TYPE=$(echo "$COMMIT_MESSAGE" | grep '^installer-type:' | cut -d":" -f2 | sed 's/\s*//g')
- export DEPLOY_SCENARIO=$(echo "$COMMIT_MESSAGE" | grep '^deploy-scenario:' | cut -d":" -f2 | sed 's/\s*//g')
- write_change_metadata
- else
- echo "Info: Installer type or deploy scenario is not specified."
- echo "Info: Falling back to programmatically determining them."
- fi
-}
-
-# this function will process the changed files to determine the impacted scenario
-# if it is no specified by the committer. only one scenario per change should be
-# touched.
-# TODO: this is not implented yet.
-function determine_scenario() {
- # for infra/engine repo, we set INSTALLER_TYPE and DEPLOY_SCENARIO to their defaults
- echo "Info: Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
- if [[ "$GERRIT_PROJECT" == "infra/engine" ]]; then
- echo "Info: Setting INSTALLER_TYPE and DEPLOY_SCENARIO to defaults for project $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
- export PROVISIONER_TYPE=$PROVISIONER_TYPE
- export INSTALLER_TYPE=kubespray
- export DEPLOY_SCENARIO=k8-calico-nofeature
- write_change_metadata
- else
- cd $WORKSPACE
- COMMIT_MESSAGE=$(git show -s --format=%B)
- export PROVISIONER_TYPE=none
- export INSTALLER_TYPE=none
- export DEPLOY_SCENARIO=none
- write_change_metadata
- echo "Info: Not implemented!"
- exit 0
- fi
-}
-
-function write_change_metadata() {
- echo "Info: Writing change metadata to $WORKSPACE/change.properties"
- cat << EOF > $WORKSPACE/change.properties
-PROJECT_GIT_URL=$GIT_BASE_HTTPS/$GERRIT_PROJECT
-PROVISIONER_TYPE=$PROVISIONER_TYPE
-INSTALLER_TYPE=$INSTALLER_TYPE
-DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION
-GERRIT_REFSPEC=$GERRIT_REFSPEC
-EOF
-
- echo "Info: Content of change.properties"
- echo "-------------------------------------------------------------------------"
- cat $WORKSPACE/change.properties
- echo "-------------------------------------------------------------------------"
-
- # need to exit here to ensure we don't go further while determining scenario
- exit 0
-}
-
-echo "Info: Determining the provisioner, installer, and scenario"
-
-declare -a PROVISIONER_TYPE
-declare -a INSTALLER_TYPE
-declare -a DEPLOY_SCENARIO
-
-override_installer_scenario
-determine_scenario
-
-# vim: set ts=2 sw=2 expandtab:
stream:
- 'master':
branch: '{stream}'
+ deploy-scenario: 'k8-multus-plugins'
environment-type:
- online:
provisioner-type: 'heat'
slave-type: 'jumphost'
gated-projects: 'infra/engine|infra/provisioner/heat'
- pdf: "https://gerrit.nordix.org/gitweb?p=infra/provisioner/heat.git;a=blob_plain;f=playbooks/roles/create-stack/files/heat-environment-city-ubuntu1804.yaml"
+ pdf: "https://gerrit.nordix.org/gitweb?p=infra/provisioner/heat.git;a=blob_plain;f=playbooks/roles/create-stack/files/heat-environment-ci-city-ubuntu1804.yaml"
idf: "https://gerrit.nordix.org/gitweb?p=infra/provisioner/heat.git;a=blob_plain;f=playbooks/roles/create-stack/files/heat-idf.yaml"
distro:
concurrent: true
parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with.'
+ - string:
+ name: DISTRO
+ default: '{distro}'
+ description: 'Distribution to use for configuring target nodes (networking etc.)'
- label:
name: SLAVE_LABEL
default: 'engine-{slave-type}-{environment-type}-{distro}-fra'
name: IDF
default: '{idf}'
description: 'IDF file to use for deployment'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: 'heat-environment-{cloud}-{distro}.yaml'
- description: 'Name of heat-environment file to use.'
- string:
name: HEAT_STACK_NAME
default: "nordix-cicd-verify-engine-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER"
failed: false
unstable: false
notbuilt: false
+ deploy-scenario: 'k8-calico-nofeature'
distro:
- ubuntu1804
concurrent: true
parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with.'
- string:
name: EXECUTION_MODE
default: '{execution-mode}'
- compare-type: ANT
pattern: '.gitignore|.gitreview|.yamllint|README.md|bindep.txt|setup.cfg|setup.py'
custom-url: '* $JOB_NAME $BUILD_URL'
+ readable-message: 'true'
builders:
- multijob:
- shell:
!include-raw: ./scripts/generate-change-metadata.sh
+- builder:
+ name: 'generate-release-metadata-macro'
+ builders:
+ - shell:
+ !include-raw: ./scripts/generate-release-metadata.sh
+
- builder:
name: 'promote-macro'
builders:
--- /dev/null
+---
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 Nordix Foundation.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+- project:
+ name: 'ironic-release'
+
+ project: 'ironic-release'
+
+ stream:
+ - 'master':
+ branch: 'master'
+ deploy-scenario: 'k8-multus-plugins'
+ promote-stack: 'true'
+
+ environment-type:
+ - offline:
+ disabled: false
+ execution-mode: offline-deployment
+ pdf: 'file:///opt/engine/offline/git/hwconfig/pods'
+ idf: 'file:///opt/engine/offline/git/hwconfig/pods'
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
+
+ distro:
+ - ubuntu1804
+ - centos7
+
+ phase:
+ - package
+ - promote
+
+ jobs:
+ - 'ironic-release-{distro}-{stream}'
+ - 'ironic-package-{distro}-{stream}'
+ - 'ironic-release-{environment-type}-provision-{distro}-baremetal-{stream}'
+ - 'ironic-promote-{distro}-{stream}'
+
+- job-template:
+ name: 'ironic-release-{distro}-{stream}'
+
+ project-type: multijob
+
+ disabled: '{obj:disabled}'
+
+ node: 'engine-package-{distro}-fra'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: BRANCH
+ default: '{branch}'
+ description: 'Branch the job is created for. DO NOT MODIFY!'
+ - string:
+ name: DISTRO
+ default: '{distro}'
+ description: 'Distribution to provision and configre target nodes with. DO NOT MODIFY!'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with. This depends on the branch of the stack.'
+ - string:
+ name: CI_LOOP
+ default: 'release'
+ description: 'CI loop type. DO NOT MODIFY!'
+ - string:
+ name: VERBOSITY
+ default: 'false'
+ description: 'Engine verbosity'
+ - string:
+ name: NORDIX_ENGINE_VERSION
+ default: 'master'
+ description: 'Engine version of engine to package, deploy, test, release'
+ - string:
+ name: STACK_TYPE
+ default: 'ironic'
+ description: 'Stack to package, deploy, test, release'
+ - string:
+ name: STACK_VERSION
+ default: '{branch}'
+ description: 'Stack version of engine to package, deploy, test, release'
+ - string:
+ name: NORDIX_BIFROST_VERSION
+ default: 'master'
+ description: 'Bifrost version of engine to package, deploy, test, release'
+ - string:
+ name: PROMOTE_STACK
+ default: '{promote-stack}'
+ description: 'Heat version of engine to package, deploy, test, release'
+
+ properties:
+ - logrotate
+ # NOTE (fdegir): throttle categories are controlled in jenkins global configuration
+ - throttle:
+ enabled: true
+ max-per-node: 1
+ max-total: 1
+ option: category
+ categories:
+ - engine-verify-package
+
+ wrappers:
+ - build-timeout:
+ timeout: 600
+ - mask-passwords
+ - fix-workspace-permissions
+ - openstack:
+ single-use: True
+
+ triggers:
+ - pollscm:
+ cron: "#H 0,8,16 * * *"
+
+ scm:
+ - git:
+ url: https://gerrit.nordix.org/infra/engine.git
+ branches:
+ - master
+ timeout: 15
+ wipe-workspace: true
+
+ builders:
+ - 'generate-release-metadata-macro'
+ - inject:
+ properties-file: "$WORKSPACE/release.properties"
+ - 'generate-ssh-keypair-macro'
+ - 'wait-pkg-mgr-macro'
+ - multijob:
+ name: Packaging
+ condition: SUCCESSFUL
+ execution-type: PARALLEL
+ projects:
+ - name: 'ironic-package-{distro}-{stream}'
+ current-parameters: false
+ git-revision: true
+ node-parameters: true
+ property-file: "$WORKSPACE/release.properties"
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ - multijob:
+ name: Provisioning
+ condition: SUCCESSFUL
+ execution-type: PARALLEL
+ projects:
+ - name: 'ironic-release-offline-provision-{distro}-baremetal-{stream}'
+ current-parameters: false
+ git-revision: true
+ node-parameters: false
+ property-file: "$WORKSPACE/release.properties"
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ - multijob:
+ name: Promotion
+ condition: SUCCESSFUL
+ execution-type: PARALLEL
+ projects:
+ - name: 'ironic-promote-{distro}-{stream}'
+ current-parameters: false
+ git-revision: true
+ node-parameters: true
+ property-file: "$WORKSPACE/release.properties"
+ kill-phase-on: FAILURE
+ abort-all-job: true
+
+- job-template:
+ name: 'ironic-package-{distro}-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: EXECUTION_MODE
+ default: 'packaging'
+ description: 'Execution mode to run engine'
+
+ properties:
+ - logrotate
+
+ wrappers:
+ - build-timeout:
+ timeout: 70
+ - credentials-binding:
+ - username-password-separated:
+ credential-id: 'nordix-cicd-arm-credentials'
+ username: NORDIX_ARM_USERNAME
+ password: NORDIX_ARM_TOKEN
+ - mask-passwords
+ - fix-workspace-permissions
+
+ scm:
+ - git:
+ url: https://gerrit.nordix.org/infra/engine.git
+ branches:
+ - master
+ timeout: 15
+ wipe-workspace: true
+
+ builders:
+ - 'package-macro'
+ - 'upload-artifact-macro'
+
+- job-template:
+ name: 'ironic-promote-{distro}-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ properties:
+ - logrotate
+
+ wrappers:
+ - build-timeout:
+ timeout: 30
+ - credentials-binding:
+ - username-password-separated:
+ credential-id: 'nordix-cicd-arm-credentials'
+ username: NORDIX_ARM_USERNAME
+ password: NORDIX_ARM_TOKEN
+ - mask-passwords
+ - fix-workspace-permissions
+
+ scm:
+ - git:
+ url: https://gerrit.nordix.org/infra/engine.git
+ branches:
+ - master
+ timeout: 15
+ wipe-workspace: true
+
+ builders:
+ - 'promote-macro'
+
+- job-template:
+ name: 'ironic-release-{environment-type}-provision-{distro}-baremetal-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ node: baremetal-deploy
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: EXECUTION_MODE
+ default: 'offline-deployment'
+ description: 'Engine execution mode'
+ - string:
+ name: PDF
+ default: '{pdf}/${{NODE_NAME}}-pdf.yml'
+ description: 'PDF file to use for deployment. DO NOT MODIFY!'
+ - string:
+ name: IDF
+ default: '{idf}/${{NODE_NAME}}-idf.yml'
+ description: 'IDF file to use for deployment. DO NOT MODIFY!'
+ - string:
+ name: SLAVE_LABEL
+ default: 'baremetal-deploy'
+ description: 'Type of the slave'
+
+ properties:
+ - logrotate
+ - throttle:
+ max-per-node: 1
+ max-total: 1
+ option: project
+
+ wrappers:
+ - build-timeout:
+ timeout: 60
+ - mask-passwords
+ - fix-workspace-permissions
+ - credentials-binding:
+ - file:
+ credential-id: '{openrc-credentials-file}'
+ variable: OPENRC_FILE
+ - pre-scm-buildstep:
+ failOnError: true
+ buildsteps:
+ - shell: |
+ #!/bin/bash
+ sudo chown -R $USER:$USER $WORKSPACE || exit 1
+ # offline nodes can not resolve Nordix Artifactory and Gerrit
+ if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
+ echo "Info : Offline deployment. Adding City OpenStack Endpoint, Nordix Artifactory and Gerrit Public IP to /etc/hosts"
+ sudo sed -i 's/^search/# search/' /etc/resolv.conf
+ sudo bash -c "cat << EOF >> /etc/hosts
+ # managed by engine
+ 91.106.198.25 artifactory.nordix.org
+ 91.106.198.142 gerrit.nordix.org
+ 86.107.242.50 fra1.citycloud.com
+ # managed by engine
+ EOF"
+ # we need to get rid of search domain as well
+ sudo sed -i 's/^search/# search/' /etc/resolv.conf
+ fi
+
+ scm:
+ - git:
+ url: https://gerrit.nordix.org/infra/engine.git
+ branches:
+ - master
+ timeout: 15
+ wipe-workspace: true
+
+ builders:
+ - description-setter:
+ description: provisioning
+ - 'download-artifact-macro'
+ - 'deploy-macro'
+
+# vim: set ts=2 sw=2 expandtab:
--- /dev/null
+---
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 Nordix Foundation.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+- project:
+ name: 'ironic-verify-package'
+
+ project: 'ironic-verify-package'
+
+ stream:
+ - 'master':
+ branch: '{stream}'
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
+ execution-mode: 'packaging'
+ gated-projects: 'infra/stack/ironic|infra/provisioner/bifrost'
+ successful: false
+ failed: false
+ unstable: false
+ notbuilt: false
+ deploy-scenario: 'k8-multus-plugins'
+
+ distro:
+ - ubuntu1804
+ - centos7
+
+ dependency-jobs: 'ironic-verify-tox-{stream}'
+ dependency-job-var: 'TRIGGER_ironic_verify_tox_{stream}_BUILD_RESULT'
+
+ jobs:
+ - 'ironic-verify-package-{distro}-{stream}'
+
+- job-template:
+ name: 'ironic-verify-package-{distro}-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ node: 'engine-package-{distro}-fra'
+
+ concurrent: true
+
+ parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with.'
+ - string:
+ name: EXECUTION_MODE
+ default: '{execution-mode}'
+ description: 'Engine execution mode - packaging'
+ - string:
+ name: DISTRO
+ default: '{distro}'
+ description: 'Distribution to use for configuring target nodes (networking etc.)'
+ - string:
+ name: VERBOSITY
+ default: 'true'
+ description: 'Verbosity setting for the engine - true or false - default is false'
+ - string:
+ name: CI_LOOP
+ default: 'verify'
+ description: 'CI loop type'
+ - project-parameters:
+ project: $GERRIT_PROJECT
+ branch: '{branch}'
+ description: 'The project and branch which the change is proposed for'
+ - nordix-gerrit-parameters
+
+ properties:
+ - logrotate
+ # NOTE (fdegir): throttle categories are controlled in jenkins global configuration
+ - throttle:
+ enabled: true
+ max-per-node: 1
+ max-total: 4
+ option: category
+ categories:
+ - engine-verify-package
+
+ scm:
+ - git-scm-gerrit:
+ ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
+ branch: $GERRIT_BRANCH
+ refspec: $GERRIT_REFSPEC
+ wipe_workspace: true
+ clean_before: false
+
+ triggers:
+ - gerrit:
+ server-name: 'Nordix Gerrit'
+ trigger-on:
+ - patchset-created-event:
+ exclude-drafts: 'false'
+ exclude-trivial-rebase: 'false'
+ exclude-no-code-change: 'false'
+ - draft-published-event
+ - comment-added-contains-event:
+ comment-contains-value: 'recheck'
+ - comment-added-contains-event:
+ comment-contains-value: 'reverify'
+ projects:
+ - project-compare-type: 'REG_EXP'
+ project-pattern: '{gated-projects}'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+ disable-strict-forbidden-file-verification: 'true'
+ forbidden-file-paths:
+ - compare-type: ANT
+ pattern: 'docs/**|releasenotes/**'
+ skip-vote:
+ successful: '{obj:successful}'
+ failed: '{obj:failed}'
+ unstable: '{obj:unstable}'
+ notbuilt: '{obj:notbuilt}'
+ custom-url: '* $JOB_NAME $BUILD_URL'
+ readable-message: 'true'
+ dependency-jobs: '{dependency-jobs}'
+
+ wrappers:
+ - openstack:
+ single-use: True
+ - build-timeout:
+ timeout: 240
+ - credentials-binding:
+ - username-password-separated:
+ credential-id: 'nordix-cicd-arm-credentials'
+ username: NORDIX_ARM_USERNAME
+ password: NORDIX_ARM_TOKEN
+ - mask-passwords
+ - 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'
+ - 'upload-artifact-macro'
--- /dev/null
+---
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 Nordix Foundation.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+- project:
+ name: 'ironic-verify-provision'
+
+ project: 'ironic-verify-provision'
+
+ stream:
+ - 'master':
+ branch: '{stream}'
+ deploy-scenario: 'k8-multus-plugins'
+
+ environment-type:
+ - online:
+ disabled: false
+ execution-mode: online-deployment
+ successful: false
+ failed: false
+ unstable: false
+ notbuilt: false
+ - offline:
+ disabled: false
+ execution-mode: offline-deployment
+ successful: false
+ failed: false
+ unstable: false
+ notbuilt: false
+
+ phase:
+ - deploy
+
+ type:
+ - virtual:
+ provisioner-type: 'bifrost'
+ slave-type: 'vpod'
+ gated-projects: 'infra/stack/ironic|infra/provisioner/bifrost'
+ pdf: 'https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-pdf.yml'
+ idf: 'https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-idf.yml'
+
+ distro:
+ - ubuntu1804
+ - centos7
+
+ cloud:
+ - city:
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
+
+ dependency-jobs: 'ironic-verify-package-{distro}-{stream}'
+ dependency-job-var: 'TRIGGER_ironic_verify_package_{distro}_{stream}_BUILD_RESULT'
+
+ jobs:
+ - 'ironic-verify-{environment-type}-provision-{distro}-{cloud}-{type}-{stream}'
+
+- job-template:
+ name: 'ironic-verify-{environment-type}-provision-{distro}-{cloud}-{type}-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: true
+
+ parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with. This depends on the branch of the stack'
+ - string:
+ name: DISTRO
+ default: '{distro}'
+ description: 'Distribution to use for configuring target nodes (networking etc.)'
+ - label:
+ name: SLAVE_LABEL
+ default: 'engine-{slave-type}-{environment-type}-{distro}-fra'
+ description: 'Slave label to schedule this job on.'
+ - string:
+ name: HW_TYPE
+ default: '{type}'
+ description: 'Hardware type - could be virtual, cloud, or baremetal'
+ - string:
+ name: EXECUTION_MODE
+ default: '{execution-mode}'
+ description: 'Execution mode to run in'
+ - string:
+ name: PDF
+ default: '{pdf}'
+ description: 'PDF file to use for deployment'
+ - string:
+ name: IDF
+ default: '{idf}'
+ description: 'IDF file to use for deployment'
+ - string:
+ name: HEAT_STACK_NAME
+ default: "nordix-cicd-verify-ironic-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER"
+ description: 'Name of the created stack'
+ - string:
+ name: KEYPAIR_NAME
+ default: "keypair-nordix-cicd-verify-ironic-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER"
+ description: 'Name of the created keypair'
+ - string:
+ name: USE_PREBUILT_DEPLOYMENT_IMAGE
+ default: 'true'
+ description: 'Use prebuilt deployment image while running as part of CI/CD'
+ - string:
+ name: TEST_REPO_URL
+ default: 'https://gerrit.nordix.org/infra/test.git'
+ description: 'URL to clone the test repo from'
+ - string:
+ name: TEST_FW
+ default: 'functest'
+ description: 'Test framework to use'
+ - string:
+ name: TEST_SUITE
+ default: 'healthcheck'
+ description: 'Test suite to run'
+ - string:
+ name: YARDSTICK_DISPATCHER
+ default: 'file'
+ description: 'Dispatcher to use for Yardstick reporting'
+ - string:
+ name: DELETE_STACK
+ default: 'true'
+ description: 'Delete the stack upon completion of the build'
+ - string:
+ name: VERBOSITY
+ default: 'true'
+ description: 'Verbosity setting for the engine - true or false - default is false'
+ - string:
+ name: CI_LOOP
+ default: "verify"
+ description: 'CI loop the job belongs to'
+ - project-parameters:
+ project: $GERRIT_PROJECT
+ branch: '{branch}'
+ description: 'The project and branch which the change is proposed for'
+ - nordix-gerrit-parameters
+
+ properties:
+ - logrotate
+ # NOTE (fdegir): throttle categories are controlled in jenkins global configuration
+ - throttle:
+ enabled: true
+ max-per-node: 1
+ max-total: 8
+ option: category
+ categories:
+ - engine-verify-deploy-test
+
+ scm:
+ - git-scm-gerrit:
+ ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
+ branch: $GERRIT_BRANCH
+ refspec: $GERRIT_REFSPEC
+ wipe_workspace: true
+ clean_before: false
+
+ triggers:
+ - gerrit:
+ server-name: 'Nordix Gerrit'
+ trigger-on:
+ - patchset-created-event:
+ exclude-drafts: 'false'
+ exclude-trivial-rebase: 'false'
+ exclude-no-code-change: 'false'
+ - draft-published-event
+ - comment-added-contains-event:
+ comment-contains-value: 'recheck'
+ - comment-added-contains-event:
+ comment-contains-value: 'reverify'
+ projects:
+ - project-compare-type: 'REG_EXP'
+ project-pattern: '{gated-projects}'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+ disable-strict-forbidden-file-verification: 'true'
+ forbidden-file-paths:
+ - compare-type: ANT
+ pattern: 'docs/**|releasenotes/**'
+ skip-vote:
+ successful: '{obj:successful}'
+ failed: '{obj:failed}'
+ unstable: '{obj:unstable}'
+ notbuilt: '{obj:notbuilt}'
+ custom-url: '* $JOB_NAME $BUILD_URL'
+ readable-message: 'true'
+ dependency-jobs: '{dependency-jobs}'
+
+ wrappers:
+ - fix-workspace-permissions
+ - build-timeout:
+ timeout: 180
+ - credentials-binding:
+ - file:
+ credential-id: '{openrc-credentials-file}'
+ variable: OPENRC_FILE
+ - username-password-separated:
+ credential-id: 'nordix-cicd-arm-credentials'
+ username: NORDIX_ARM_USERNAME
+ password: NORDIX_ARM_TOKEN
+ - mask-passwords
+ - openstack:
+ single-use: True
+ - 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
+ # offline nodes can not resolve Nordix Artifactory and Gerrit
+ if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
+ echo "Info : Offline deployment. Adding City OpenStack Endpoint, Nordix Artifactory and Gerrit Public IP to /etc/hosts"
+ sudo sed -i 's/^search/# search/' /etc/resolv.conf
+ sudo bash -c "cat << EOF >> /etc/hosts
+ # managed by engine
+ 91.106.198.25 artifactory.nordix.org
+ 91.106.198.142 gerrit.nordix.org
+ 86.107.242.50 fra1.citycloud.com
+ # managed by engine
+ EOF"
+ # we need to get rid of search domain as well
+ sudo sed -i 's/^search/# search/' /etc/resolv.conf
+ fi
+
+ builders:
+ - 'generate-change-metadata-macro'
+ - inject:
+ properties-file: "$WORKSPACE/change.properties"
+ - 'generate-ssh-keypair-macro'
+ - 'download-artifact-macro'
+ - 'wait-pkg-mgr-macro'
+ - 'deploy-macro'
+
+ publishers:
+ - postbuildscript:
+ builders:
+ - role: SLAVE
+ build-on:
+ - SUCCESS
+ - FAILURE
+ - ABORTED
+ - NOT_BUILT
+ - UNSTABLE
+ build-steps:
+ - 'wait-pkg-mgr-macro'
+ - 'delete-stack-macro'
--- /dev/null
+---
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 Nordix Foundation.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+- project:
+ name: 'ironic-tox'
+
+ project: 'ironic-tox'
+
+ stream:
+ - 'master':
+ branch: '{stream}'
+ gated-projects: 'infra/stack/ironic|infra/provisioner/bifrost'
+
+ lint-type:
+ - ansible-lint:
+ disabled: false
+ repos-to-ignore: ''
+ - shellcheck:
+ disabled: false
+ repos-to-ignore: ''
+ - yamllint:
+ disabled: false
+ repos-to-ignore: ''
+
+ jobs:
+ - 'ironic-verify-tox-{stream}'
+ - 'ironic-verify-{lint-type}-{stream}'
+
+- job-template:
+ name: 'ironic-verify-tox-{stream}'
+
+ project-type: multijob
+
+ concurrent: true
+
+ node: infra-tools-docker-slave-ubuntu1804
+
+ parameters:
+ - project-parameters:
+ project: $GERRIT_PROJECT
+ branch: '{branch}'
+ description: 'The project and branch which the change is proposed for'
+ - string:
+ name: VERBOSITY
+ default: 'false'
+ description: 'Verbosity setting for the tox script'
+ - nordix-gerrit-parameters
+
+ properties:
+ - logrotate
+ # NOTE (fdegir): throttle categories are controlled in jenkins global configuration
+ - throttle:
+ enabled: true
+ max-per-node: 1
+ max-total: 4
+ option: category
+ categories:
+ - engine-verify-tox
+
+ wrappers:
+ - build-timeout:
+ timeout: 60
+ - fix-workspace-permissions
+
+ scm:
+ - git-scm-gerrit:
+ ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
+ branch: $GERRIT_BRANCH
+ refspec: $GERRIT_REFSPEC
+ wipe_workspace: true
+ clean_before: false
+
+ triggers:
+ - gerrit:
+ server-name: 'Nordix Gerrit'
+ trigger-on:
+ - patchset-created-event:
+ exclude-drafts: 'false'
+ exclude-trivial-rebase: 'false'
+ exclude-no-code-change: 'false'
+ - draft-published-event
+ - comment-added-contains-event:
+ comment-contains-value: 'recheck'
+ - comment-added-contains-event:
+ comment-contains-value: 'reverify'
+ projects:
+ - project-compare-type: 'REG_EXP'
+ project-pattern: '{gated-projects}'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+ disable-strict-forbidden-file-verification: 'false'
+ forbidden-file-paths:
+ - compare-type: ANT
+ pattern: '.gitignore|.gitreview|.yamllint|README.md|bindep.txt|setup.cfg|setup.py'
+ custom-url: '* $JOB_NAME $BUILD_URL'
+ readable-message: 'true'
+
+ builders:
+ - multijob:
+ name: Static Analysis
+ condition: ALWAYS
+ execution-type: PARALLEL
+ projects:
+ - name: 'ironic-verify-ansible-lint-{stream}'
+ current-parameters: true
+ kill-phase-on: NEVER
+ abort-all-job: false
+ - name: 'ironic-verify-shellcheck-{stream}'
+ current-parameters: true
+ kill-phase-on: NEVER
+ abort-all-job: false
+ - name: 'ironic-verify-yamllint-{stream}'
+ current-parameters: true
+ kill-phase-on: NEVER
+ abort-all-job: false
+
+- job-template:
+ name: 'ironic-verify-{lint-type}-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: true
+
+ node: infra-tools-docker-slave-ubuntu1804
+
+ parameters:
+ - string:
+ name: LINT_TYPE
+ default: '{lint-type}'
+ description: 'Lint type to run'
+ - string:
+ name: REPOS_TO_IGNORE
+ default: '{repos-to-ignore}'
+ description: 'Repos to ignore for the specific lint type'
+
+ properties:
+ - logrotate
+
+ wrappers:
+ - build-timeout:
+ timeout: 150
+ - fix-workspace-permissions
+
+ scm:
+ - git-scm-gerrit:
+ ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
+ branch: $GERRIT_BRANCH
+ refspec: $GERRIT_REFSPEC
+ wipe_workspace: true
+ clean_before: false
+
+ builders:
+ - 'tox-macro'
+
+# vim: set ts=2 sw=2 expandtab:
--- /dev/null
+---
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 Nordix Foundation.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+- project:
+ name: 'kubernetes-deploy-test'
+
+ project: 'kubernetes-deploy-test'
+
+ stream:
+ - 'master':
+ branch: 'master'
+ deploy-scenario: 'k8-multus-plugins'
+ - '1_18':
+ branch: '1.18'
+ deploy-scenario: 'k8-multus-plugins'
+ - '1_17':
+ branch: '1.17'
+ deploy-scenario: 'k8-multus-plugins'
+ - '1_16':
+ branch: '1.16'
+ deploy-scenario: 'k8-calico-nofeature'
+ - '1_15':
+ branch: '1.15'
+ deploy-scenario: 'k8-calico-nofeature'
+
+ distro:
+ - ubuntu1804
+
+ environment-type:
+ - offline:
+ disabled: false
+ execution-mode: offline-deployment
+ pdf: 'file:///opt/engine/offline/git/hwconfig/pods'
+ idf: 'file:///opt/engine/offline/git/hwconfig/pods'
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
+
+ phase:
+ - deploy:
+ build-timeout: 60
+ execution-mode: offline-deployment
+ - functest:
+ build-timeout: 210
+ execution-mode: online-test
+ - yardstick:
+ build-timeout: 30
+ execution-mode: online-test
+
+ jobs:
+ - 'kubernetes-release-{environment-type}-deploy-test-{distro}-baremetal-{stream}'
+ - 'kubernetes-release-{environment-type}-{phase}-{distro}-baremetal-{stream}'
+
+- job-template:
+ name: 'kubernetes-release-{environment-type}-deploy-test-{distro}-baremetal-{stream}'
+
+ project-type: multijob
+
+ disabled: '{obj:disabled}'
+
+ node: baremetal-deploy
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: EXECUTION_MODE
+ default: 'offline-deployment'
+ description: 'Engine execution mode'
+ - string:
+ name: PDF
+ default: '{pdf}/${{NODE_NAME}}-pdf.yml'
+ description: 'PDF file to use for deployment. DO NOT MODIFY!'
+ - string:
+ name: IDF
+ default: '{idf}/${{NODE_NAME}}-idf.yml'
+ description: 'IDF file to use for deployment. DO NOT MODIFY!'
+ - string:
+ name: SLAVE_LABEL
+ default: 'baremetal-deploy'
+ description: 'Type of the slave'
+
+ properties:
+ - logrotate
+ - throttle:
+ max-per-node: 1
+ max-total: 1
+ option: project
+
+ wrappers:
+ - build-timeout:
+ timeout: 300
+ - mask-passwords
+ - pre-scm-buildstep:
+ failOnError: true
+ buildsteps:
+ - shell: |
+ #!/bin/bash
+ sudo chown -R $USER:$USER $WORKSPACE || exit 1
+ # offline nodes can not resolve Nordix Artifactory and Gerrit
+ if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
+ echo "Info : Offline deployment. Adding City OpenStack Endpoint, Nordix Artifactory and Gerrit Public IP to /etc/hosts"
+ sudo sed -i 's/^search/# search/' /etc/resolv.conf
+ sudo bash -c "cat << EOF >> /etc/hosts
+ # managed by engine
+ 91.106.198.25 artifactory.nordix.org
+ 91.106.198.142 gerrit.nordix.org
+ 86.107.242.50 fra1.citycloud.com
+ # managed by engine
+ EOF"
+ # we need to get rid of search domain as well
+ sudo sed -i 's/^search/# search/' /etc/resolv.conf
+ fi
+
+ scm:
+ - git:
+ url: https://gerrit.nordix.org/infra/engine.git
+ branches:
+ - master
+ timeout: 15
+ wipe-workspace: true
+
+ builders:
+ - description-setter:
+ description: $DEPLOY_SCENARIO
+ - 'download-artifact-macro'
+ - multijob:
+ name: "Offline Deployment on Baremetal using {deploy-scenario}"
+ condition: SUCCESSFUL
+ execution-type: PARALLEL
+ projects:
+ - name: 'kubernetes-release-{environment-type}-deploy-{distro}-baremetal-{stream}'
+ current-parameters: true
+ git-revision: true
+ node-parameters: true
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ - multijob:
+ name: Functional Testing
+ condition: ALWAYS
+ projects:
+ - name: 'kubernetes-release-{environment-type}-functest-{distro}-baremetal-{stream}'
+ current-parameters: true
+ git-revision: false
+ node-parameters: true
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ - multijob:
+ name: Platform Benchmarking
+ condition: ALWAYS
+ projects:
+ - name: 'kubernetes-release-{environment-type}-yardstick-{distro}-baremetal-{stream}'
+ current-parameters: true
+ git-revision: false
+ node-parameters: true
+ kill-phase-on: FAILURE
+ abort-all-job: true
+
+- job-template:
+ name: 'kubernetes-release-{environment-type}-{phase}-{distro}-baremetal-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ parameters:
+ - string:
+ name: EXECUTION_MODE
+ default: '{execution-mode}'
+ description: 'Execution mode'
+ - string:
+ name: TEST_REPO_URL
+ default: 'https://gerrit.nordix.org/infra/test.git'
+ description: 'URL to clone the test repo from'
+ - string:
+ name: TEST_FW
+ default: '{phase}'
+ description: 'Test framework to use'
+ - string:
+ name: TEST_SUITE
+ default: 'smoke'
+ description: 'Test suite to run'
+ - string:
+ name: YARDSTICK_DISPATCHER
+ default: 'file'
+ description: 'Dispatcher to use for Yardstick reporting'
+
+ properties:
+ - logrotate
+ - throttle:
+ max-per-node: 1
+ max-total: 1
+ option: project
+
+ wrappers:
+ - build-timeout:
+ timeout: '{build-timeout}'
+ - mask-passwords
+ - fix-workspace-permissions
+ - credentials-binding:
+ - file:
+ credential-id: '{openrc-credentials-file}'
+ variable: OPENRC_FILE
+
+ builders:
+ - description-setter:
+ description: $DEPLOY_SCENARIO
+ - '{phase}-macro'
# ============LICENSE_END=========================================================
- project:
- name: 'onap-release-online'
-
- project: 'onap-release-online'
+ name: 'kubernetes-release'
+
+ project: 'kubernetes-release'
+
+ stream:
+ - 'master':
+ branch: 'master'
+ deploy-scenario: 'k8-multus-plugins'
+ promote-stack: 'false'
+ - '1_18':
+ branch: '1.18'
+ deploy-scenario: 'k8-multus-plugins'
+ promote-stack: 'true'
+ - '1_17':
+ branch: '1.17'
+ deploy-scenario: 'k8-multus-plugins'
+ promote-stack: 'true'
+ - '1_16':
+ branch: '1.16'
+ deploy-scenario: 'k8-calico-nofeature'
+ promote-stack: 'true'
+ - '1_15':
+ branch: '1.15'
+ deploy-scenario: 'k8-calico-nofeature'
+ promote-stack: 'true'
environment-type:
- - online:
- disabled: true
- execution-mode: online-deployment
-
- onap-branch:
- - elalto:
- onap-version: elalto
- - master:
- onap-version: master
-
- onap-profile:
- - sdc
- - so
+ - offline:
+ disabled: false
+ execution-mode: offline-deployment
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
distro:
- ubuntu1804
- phase:
- - package
- - promote
-
- cloud:
- - city:
- openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
-
jobs:
- - 'onap-{onap-profile}-periodic-release-{environment-type}-{distro}-{onap-branch}'
- - 'onap-{onap-profile}-periodic-package-{distro}-{onap-branch}'
- - 'onap-{onap-profile}-periodic-promote-{distro}-{onap-branch}'
+ - 'kubernetes-release-{distro}-{stream}'
+ - 'kubernetes-package-{distro}-{stream}'
+ - 'kubernetes-promote-{distro}-{stream}'
- job-template:
- name: 'onap-{onap-profile}-periodic-release-{environment-type}-{distro}-{onap-branch}'
+ name: 'kubernetes-release-{distro}-{stream}'
project-type: multijob
disabled: '{obj:disabled}'
+ node: 'engine-package-{distro}-fra'
+
concurrent: false
parameters:
- string:
- name: EXECUTION_MODE
- default: '{execution-mode}'
- description: 'Engine execution mode - online-deployment or offline-deployment - default is online-deployment'
+ name: BRANCH
+ default: '{branch}'
+ description: 'Branch the job is created for. DO NOT MODIFY!'
- string:
name: DISTRO
default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer type to use'
+ description: 'Distribution to provision and configre target nodes with. DO NOT MODIFY!'
- string:
name: DEPLOY_SCENARIO
- default: 'k8-calico-onap'
- description: 'Scenario to deploy and test'
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with. This depends on the branch of the stack.'
- string:
- name: ONAP_PROFILE
- default: '{onap-profile}'
- description: 'ONAP Profile to deploy and test'
+ name: CI_LOOP
+ default: 'release'
+ description: 'CI loop type. DO NOT MODIFY!'
- string:
name: VERBOSITY
- default: 'true'
- description: 'Verbosity setting for the engine - true or false - default is false'
+ default: 'false'
+ description: 'Engine verbosity'
- string:
- name: ARTIFACTS_TO_UPLOAD
- default: "onap-{onap-profile}-installer-ubuntu1804.bsx offline-package.tgz"
- description: 'Artifacts to upload'
+ name: NORDIX_ENGINE_VERSION
+ default: 'master'
+ description: 'Engine version of engine to package, deploy, test, release'
- string:
- name: ARTIFACT_TO_DOWNLOAD
- default: "onap-{onap-profile}-installer-ubuntu1804.bsx"
- description: 'Artifact to download'
+ name: STACK_TYPE
+ default: 'kubernetes'
+ description: 'Stack to package, deploy, test, release'
- string:
- name: NORDIX_ARM_PUBLIC_IP
- default: '91.106.198.25'
- description: 'Public IP of Nordix Artifactory. Offline deployments can not resolve domain name'
+ name: STACK_VERSION
+ default: '{branch}'
+ description: 'Stack version of engine to package, deploy, test, release'
- string:
- name: NORDIX_ARM_HTTPS_URL
- default: 'https://artifactory.nordix.org/artifactory'
- description: 'URL to Nordix Artifactory'
+ name: NORDIX_KUBESPRAY_VERSION
+ default: '{branch}'
+ description: 'Kubespray version of engine to package, deploy, test, release'
- string:
- name: NORDIX_ARM_REPO
- default: 'nordix-onap'
- description: 'Name of the repository to upload and download artifact to/from. Depends on the stack'
+ name: NORDIX_BIFROST_VERSION
+ default: 'master'
+ description: 'Bifrost version of engine to package, deploy, test, release'
- string:
- name: CI_LOOP
- default: 'periodic'
- description: 'CI loop type'
- - label:
- name: SLAVE_LABEL
- default: 'engine-package-ubuntu1804-fra'
- description: 'Slave label to schedule this job on.'
+ name: NORDIX_HEAT_VERSION
+ default: 'master'
+ description: 'Heat version of engine to package, deploy, test, release'
+ - string:
+ name: PROMOTE_STACK
+ default: '{promote-stack}'
+ description: 'Heat version of engine to package, deploy, test, release'
properties:
- logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'engine-verify-package-.*'
- - 'onap-sdc-periodic-release-offline-.*'
- - 'onap-so-periodic-release-offline-.*'
- - 'kubernetes-periodic-release-offline-.*'
- block-level: 'NODE'
+ # NOTE (fdegir): throttle categories are controlled in jenkins global configuration
+ - throttle:
+ enabled: true
+ max-per-node: 1
+ max-total: 1
+ option: category
+ categories:
+ - engine-verify-package
wrappers:
- build-timeout:
timeout: 600
- mask-passwords
- fix-workspace-permissions
+ - openstack:
+ single-use: True
triggers:
- pollscm:
- cron: "H 0,8,16 * * *"
+ cron: "#H 0,8,16 * * *"
scm:
- git:
wipe-workspace: true
builders:
+ - 'generate-release-metadata-macro'
+ - inject:
+ properties-file: "$WORKSPACE/release.properties"
- 'generate-ssh-keypair-macro'
- - 'generate-build-metadata-macro'
- 'wait-pkg-mgr-macro'
- multijob:
- name: package
+ name: Packaging
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'onap-{onap-profile}-periodic-package-{distro}-{onap-branch}'
- current-parameters: true
+ - name: 'kubernetes-package-{distro}-{stream}'
+ current-parameters: false
git-revision: true
node-parameters: true
- property-file: "$WORKSPACE/build.properties"
+ property-file: "$WORKSPACE/release.properties"
kill-phase-on: FAILURE
abort-all-job: true
- multijob:
- name: release test k8-calico-onap {onap-profile}
+ name: Release Test {deploy-scenario}
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'k8-calico-onap-{onap-profile}-online-ubuntu1804-city-cloud-periodic-{onap-branch}'
+ - name: 'kubernetes-release-offline-deploy-test-{distro}-baremetal-{stream}'
current-parameters: false
- git-revision: false
+ git-revision: true
node-parameters: false
- property-file: "$WORKSPACE/build.properties"
- predefined-parameters: |
- EXECUTION_MODE=$EXECUTION_MODE
- NORDIX_ARM_PUBLIC_IP=$NORDIX_ARM_PUBLIC_IP
- ARTIFACT_TO_DOWNLOAD=$ARTIFACT_TO_DOWNLOAD
- VERBOSITY=$VERBOSITY
+ property-file: "$WORKSPACE/release.properties"
kill-phase-on: FAILURE
abort-all-job: true
- multijob:
- name: promotion
+ name: Promotion
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'onap-{onap-profile}-periodic-promote-{distro}-{onap-branch}'
- current-parameters: true
+ - name: 'kubernetes-promote-{distro}-{stream}'
+ current-parameters: false
git-revision: true
node-parameters: true
- property-file: "$WORKSPACE/build.properties"
+ property-file: "$WORKSPACE/release.properties"
kill-phase-on: FAILURE
abort-all-job: true
- job-template:
- name: 'onap-{onap-profile}-periodic-package-{distro}-{onap-branch}'
+ name: 'kubernetes-package-{distro}-{stream}'
disabled: '{obj:disabled}'
concurrent: false
+ parameters:
+ - string:
+ name: EXECUTION_MODE
+ default: 'packaging'
+ description: 'Execution mode to run engine'
+
properties:
- logrotate
wipe-workspace: true
builders:
- - 'onap-package-builder-macro'
+ - 'package-macro'
+ - 'upload-artifact-macro'
- job-template:
- name: 'onap-{onap-profile}-periodic-promote-{distro}-{onap-branch}'
+ name: 'kubernetes-promote-{distro}-{stream}'
disabled: '{obj:disabled}'
wipe-workspace: true
builders:
- - 'onap-promote-builder-macro'
+ - 'promote-macro'
stream:
- 'master':
branch: 'master'
+ deploy-scenario: 'k8-multus-plugins'
+ - '1_18':
+ branch: '1.18'
+ deploy-scenario: 'k8-multus-plugins'
- '1_17':
branch: '1.17'
+ deploy-scenario: 'k8-multus-plugins'
+ - '1_16':
+ branch: '1.16'
+ deploy-scenario: 'k8-calico-nofeature'
- '1_15':
branch: '1.15'
+ deploy-scenario: 'k8-calico-nofeature'
environment-type:
- online:
provisioner-type: 'heat'
slave-type: 'jumphost'
gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray'
- pdf: "https://gerrit.nordix.org/gitweb?p=infra/provisioner/heat.git;a=blob_plain;f=playbooks/roles/create-stack/files/heat-environment-city-ubuntu1804.yaml"
+ pdf: "https://gerrit.nordix.org/gitweb?p=infra/provisioner/heat.git;a=blob_plain;f=playbooks/roles/create-stack/files/heat-environment-ci-city-ubuntu1804.yaml"
idf: "https://gerrit.nordix.org/gitweb?p=infra/provisioner/heat.git;a=blob_plain;f=playbooks/roles/create-stack/files/heat-idf.yaml"
distro:
concurrent: true
parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with. This depends on the branch of the stack'
+ - string:
+ name: DISTRO
+ default: '{distro}'
+ description: 'Distribution to use for configuring target nodes (networking etc.)'
- label:
name: SLAVE_LABEL
default: 'engine-{slave-type}-{environment-type}-{distro}-fra'
name: IDF
default: '{idf}'
description: 'IDF file to use for deployment'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: 'heat-environment-{cloud}-{distro}.yaml'
- description: 'Name of heat-environment file to use.'
- string:
name: HEAT_STACK_NAME
default: "nordix-cicd-verify-kubernetes-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER"
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'kubernetes-verify-{environment-type}-deploy-{distro}-city-{type}-master'
+ - name: 'kubernetes-verify-{environment-type}-deploy-{distro}-city-{type}-{stream}'
current-parameters: true
git-revision: true
node-parameters: true
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'kubernetes-verify-{environment-type}-functest-{distro}-city-{type}-master'
+ - name: 'kubernetes-verify-{environment-type}-functest-{distro}-city-{type}-{stream}'
current-parameters: true
git-revision: false
node-parameters: true
failed: false
unstable: false
notbuilt: false
+ deploy-scenario: 'k8-multus-plugins'
+ - '1_18':
+ branch: '1.18'
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
+ execution-mode: 'packaging'
+ gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray'
+ successful: false
+ failed: false
+ unstable: false
+ notbuilt: false
+ deploy-scenario: 'k8-multus-plugins'
- '1_17':
branch: '1.17'
openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
failed: false
unstable: false
notbuilt: false
+ deploy-scenario: 'k8-multus-plugins'
+ - '1_16':
+ branch: '1.16'
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
+ execution-mode: 'packaging'
+ gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray'
+ successful: false
+ failed: false
+ unstable: false
+ notbuilt: false
+ deploy-scenario: 'k8-calico-nofeature'
- '1_15':
branch: '1.15'
openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
failed: false
unstable: false
notbuilt: false
+ deploy-scenario: 'k8-calico-nofeature'
distro:
- ubuntu1804
concurrent: true
parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with.'
- string:
name: EXECUTION_MODE
default: '{execution-mode}'
- 'master':
branch: 'master'
gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray'
+ - '1_18':
+ branch: '1.18'
+ gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray'
- '1_17':
branch: '1.17'
gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray'
+ - '1_16':
+ branch: '1.16'
+ gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray'
- '1_15':
branch: '1.15'
gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray'
- compare-type: ANT
pattern: '.gitignore|.gitreview|.yamllint|README.md|bindep.txt|setup.cfg|setup.py'
custom-url: '* $JOB_NAME $BUILD_URL'
+ readable-message: 'true'
builders:
- multijob:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-cd $WORKSPACE
-echo "Info: Preparing for ONAP deployment"
-
-# checkout given engine version
-if [[ "$ENGINE_VERSION" != "master" ]]; then
- echo "Warning: Checking out $ENGINE_VERSION"
- git checkout -q $ENGINE_VERSION
-fi
-
-# checkout given engine refspec
-if [[ "$ENGINE_REFSPEC" != "master" ]]; then
- echo "Warning: Checking out engine $ENGINE_REFSPEC"
- echo "-------------------------------------------------------------------------"
- git fetch https://gerrit.nordix.org/infra/engine $ENGINE_REFSPEC && git checkout -q FETCH_HEAD
- echo "-------------------------------------------------------------------------"
-fi
-
-# update scenario version and refspec in engine/envine/var/sdf.yml
-if [[ "$DEPLOY_SCENARIO_VERSION" != "master" && "$DEPLOY_SCENARIO_REFSPEC" != "master" ]]; then
- echo "Warning: Adding $DEPLOY_SCENARIO_VERSION as scenario version and $DEPLOY_SCENARIO_REFSPEC as scenario refspec"
-cat << EOF > $WORKSPACE/engine/var/sdf.yml
-scenario:
- $DEPLOY_SCENARIO:
- scm: git
- src: https://gerrit.nordix.org/infra/swconfig.git
- version: $DEPLOY_SCENARIO_VERSION
- refspec: $DEPLOY_SCENARIO_REFSPEC
- provisioners:
- - $PROVISIONER_TYPE
- installers:
- $INSTALLER_TYPE:
- role: scenarios/$DEPLOY_SCENARIO/$INSTALLER_TYPE/role/$DEPLOY_SCENARIO
- distros:
- - $DISTRO
-EOF
-
- echo "Info: Temporary SDF content"
- echo "-------------------------------------------------------------------------"
- cat $WORKSPACE/engine/var/sdf.yml
- echo "-------------------------------------------------------------------------"
-fi
-
-echo "Info: Starting K8S cluster creation and ONAP deployment"
-echo "-------------------------------------------------------------------------"
-cd $WORKSPACE
-./engine/deploy.sh -d $INSTALLER_TYPE -r $PROVISIONER_TYPE -s $DEPLOY_SCENARIO -v \
- -p "https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-pdf.yml" \
- -i "https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-idf.yml"
-
-cd $WORKSPACE
-/bin/cp -f /opt/engine/.cache/config/inventory.ini ../inventory.ini || true
-/bin/cp -f /opt/engine/.cache/config/inventory.ini /tmp/inventory.ini || true
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-cd $WORKSPACE
-/bin/rm -f ../inventory.ini
-echo "Info: Preparing for ONAP deployment"
-
-# checkout given engine version
-if [[ "$ENGINE_VERSION" != "master" ]]; then
- echo "Warning: Checking out $ENGINE_VERSION"
- git checkout -q $ENGINE_VERSION
-fi
-
-# checkout given engine refspec
-if [[ "$ENGINE_REFSPEC" != "master" ]]; then
- echo "Warning: Checking out engine $ENGINE_REFSPEC"
- echo "-------------------------------------------------------------------------"
- git fetch https://gerrit.nordix.org/infra/engine $ENGINE_REFSPEC && git checkout -q FETCH_HEAD
- echo "-------------------------------------------------------------------------"
-fi
-
-# update scenario version and refspec in engine/envine/var/sdf.yml
-if [[ "$DEPLOY_SCENARIO_VERSION" != "master" && "$DEPLOY_SCENARIO_REFSPEC" != "master" ]]; then
- echo "Warning: Adding $DEPLOY_SCENARIO_VERSION as scenario version and $DEPLOY_SCENARIO_REFSPEC as scenario refspec"
-cat << EOF > $WORKSPACE/engine/var/sdf.yml
-scenario:
- $DEPLOY_SCENARIO:
- scm: git
- src: https://gerrit.nordix.org/infra/swconfig.git
- version: $DEPLOY_SCENARIO_VERSION
- refspec: $DEPLOY_SCENARIO_REFSPEC
- provisioners:
- - $PROVISIONER_TYPE
- installers:
- $INSTALLER_TYPE:
- role: scenarios/$DEPLOY_SCENARIO/$INSTALLER_TYPE/role/$DEPLOY_SCENARIO
- distros:
- - $DISTRO
-EOF
-
- echo "Info: Temporary SDF content"
- echo "-------------------------------------------------------------------------"
- cat $WORKSPACE/engine/var/sdf.yml
- echo "-------------------------------------------------------------------------"
-fi
-
-echo "Info: Starting K8S cluster creation and ONAP deployment"
-echo "-------------------------------------------------------------------------"
-cd $WORKSPACE
-./engine/deploy.sh -r $PROVISIONER_TYPE -u /tmp/openrc \
- -s $DEPLOY_SCENARIO -e $HEAT_ENVIRONMENT_FILE
-
-cd $WORKSPACE
-/bin/cp /opt/engine/.cache/config/inventory.ini ../inventory.ini
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-cd $WORKSPACE
-echo "Info: Starting ${TEST_TYPE}-${ONAP_FLAVOR} using Xtesting"
-echo "-------------------------------------------------------------------------"
-echo "Info: Cloning opnfv/xtesting-onap repository"
-cd $HOME && /bin/rm -rf $WORKSPACE
-git clone -q $XTESTING_REPO_URL $WORKSPACE && cd $WORKSPACE
-/bin/cp -f /opt/engine/.cache/config/inventory.ini /tmp/inventory.ini || true
-/bin/cp -f /tmp/inventory.ini inventory/inventory.ini || true
-$WORKSPACE/xtesting.sh
-
-# vim: set ts=2 sw=2 expandtab:
stream:
- 'master':
branch: '{stream}'
+ deploy-scenario: 'onap-sdc-full'
- 'frankfurt':
branch: '{stream}'
+ deploy-scenario: 'onap-sdc-full'
- 'elalto':
branch: '{stream}'
+ deploy-scenario: 'onap-sdc-full'
environment-type:
- online:
provisioner-type: 'heat'
slave-type: 'jumphost'
gated-projects: 'infra/stack/onap|infra/installer/oom'
- pdf: "https://gerrit.nordix.org/gitweb?p=infra/provisioner/heat.git;a=blob_plain;f=playbooks/roles/create-stack/files/heat-environment-city-ubuntu1804.yaml"
+ pdf: "https://gerrit.nordix.org/gitweb?p=infra/provisioner/heat.git;a=blob_plain;f=playbooks/roles/create-stack/files/heat-environment-ci-city-ubuntu1804.yaml"
idf: "https://gerrit.nordix.org/gitweb?p=infra/provisioner/heat.git;a=blob_plain;f=playbooks/roles/create-stack/files/heat-idf.yaml"
distro:
concurrent: true
parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with.'
+ - string:
+ name: DISTRO
+ default: '{distro}'
+ description: 'Distribution to use for configuring target nodes (networking etc.)'
- label:
name: SLAVE_LABEL
default: 'engine-{slave-type}-{environment-type}-{distro}-fra'
name: IDF
default: '{idf}'
description: 'IDF file to use for deployment'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: 'heat-environment-{cloud}-{distro}.yaml'
- description: 'Name of heat-environment file to use.'
- string:
name: HEAT_STACK_NAME
default: "nordix-cicd-verify-onap-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER"
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'onap-verify-{environment-type}-deploy-{distro}-city-{type}-master'
+ - name: 'onap-verify-{environment-type}-deploy-{distro}-city-{type}-{stream}'
current-parameters: true
git-revision: true
node-parameters: true
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'onap-verify-{environment-type}-functest-{distro}-city-{type}-master'
+ - name: 'onap-verify-{environment-type}-functest-{distro}-city-{type}-{stream}'
current-parameters: true
git-revision: false
node-parameters: true
failed: false
unstable: false
notbuilt: false
+ deploy-scenario: 'onap-sdc-full'
- 'frankfurt':
branch: '{stream}'
openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
failed: false
unstable: false
notbuilt: false
+ deploy-scenario: 'onap-sdc-full'
- 'elalto':
branch: '{stream}'
openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
failed: false
unstable: false
notbuilt: false
+ deploy-scenario: 'onap-sdc-full'
distro:
- ubuntu1804
concurrent: true
parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with.'
- string:
name: EXECUTION_MODE
default: '{execution-mode}'
- compare-type: ANT
pattern: '.gitignore|.gitreview|.yamllint|README.md|bindep.txt|setup.cfg|setup.py'
custom-url: '* $JOB_NAME $BUILD_URL'
+ readable-message: 'true'
builders:
- multijob:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-# macros used by all job types on cloud
-- parameter:
- name: 'onap-parameter-macro-legacy'
- parameters:
- - string:
- name: PROVISIONER_TYPE
- default: 'heat'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: 'onap-nofeature-noha'
- description: 'Scenario to deploy and test'
- - string:
- name: DEPLOY_TYPE
- default: 'cloud'
- description: 'Type of the deployment'
- - string:
- name: TEST_TYPE
- default: 'oom-healthcheck'
- description: 'Test type to run. Could be oom-healthcheck or onap-healthcheck'
- - string:
- name: NORDIX_ARM_REPO_URL
- default: 'https://artifactory.nordix.org/artifactory'
- description: 'URL to Nordix Artifactory'
- - string:
- name: NORDIX_HARBOR_REPO_URL
- default: 'registry.nordix.org'
- description: 'URL to Nordix Harbor'
- - string:
- name: XTESTING_REPO_URL
- default: 'https://gerrit.nordix.org/opnfv/xtesting-onap.git'
- description: 'URL to Nordix xtesting-onap repository'
- - string:
- name: ENGINE_ANSIBLE_PARAMS
- default: ''
- description: 'Extra parameters that can be added when run the play books.'
-
-# macros used by all job types on baremetal
-- parameter:
- name: 'onap-baremetal-parameter-macro-legacy'
- parameters:
- - string:
- name: PROVISIONER_TYPE
- default: 'bifrost'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: 'onap-nofeature-noha'
- description: 'Scenario to deploy and test'
- - string:
- name: DEPLOY_TYPE
- default: 'baremetal'
- description: 'Type of the deployment'
- - string:
- name: TEST_TYPE
- default: 'oom-healthcheck'
- description: 'Test type to run. Could be oom-healthcheck or onap-healthcheck'
- - string:
- name: NORDIX_ARM_REPO_URL
- default: 'https://artifactory.nordix.org/artifactory'
- description: 'URL to Nordix Artifactory'
- - string:
- name: NORDIX_HARBOR_REPO_URL
- default: 'registry.nordix.org'
- description: 'URL to Nordix Harbor'
- - string:
- name: XTESTING_REPO_URL
- default: 'https://gerrit.nordix.org/opnfv/xtesting-onap.git'
- description: 'URL to Nordix xtesting-onap repository'
- - string:
- name: ENGINE_ANSIBLE_PARAMS
- default: ''
- description: 'Extra parameters that can be added when run the play books.'
-
-- builder:
- name: 'onap-deploy-macro-legacy'
- builders:
- - shell:
- !include-raw: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./onap-deploy.sh
-
-- builder:
- name: 'onap-deploy-baremetal-macro-legacy'
- builders:
- - shell:
- !include-raw: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./onap-deploy-baremetal.sh
-
-- builder:
- name: 'oom-hc-macro-legacy'
- builders:
- - shell:
- !include-raw: ./oom-healthcheck.sh
-
-- builder:
- name: 'oom-hc-baremetal-macro-legacy'
- builders:
- - shell:
- !include-raw: ./oom-healthcheck.sh
-
-- builder:
- name: 'onap-healthcheck-macro-legacy'
- builders:
- - shell:
- !include-raw: ./onap-healthcheck.sh
-
-- builder:
- name: 'onap-healthcheck-baremetal-macro-legacy'
- builders:
- - shell:
- !include-raw: ./onap-healthcheck.sh
-
-- builder:
- name: 'promote-onap-macro-legacy'
- builders:
- - shell:
- !include-raw: ./promote-onap.sh
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-cd $WORKSPACE
-echo "Info: Starting ${TEST_TYPE}-${ONAP_FLAVOR} using Xtesting"
-echo "-------------------------------------------------------------------------"
-echo "Info: Cloning opnfv/xtesting-onap repository"
-cd $HOME && /bin/rm -rf $WORKSPACE
-git clone -q $XTESTING_REPO_URL $WORKSPACE && cd $WORKSPACE
-/bin/cp -f /opt/engine/.cache/config/inventory.ini /tmp/inventory.ini || true
-/bin/cp -f /tmp/inventory.ini inventory/inventory.ini || true
-$WORKSPACE/xtesting.sh
-
-# vim: set ts=2 sw=2 expandtab:
# ============LICENSE_END=========================================================
- project:
- name: 'kubernetes-deploy-test-offline'
+ name: 'openstack-deploy-test'
- project: 'kubernetes-deploy-test-offline'
+ project: 'openstack-deploy-test'
stream:
- 'master':
- branch: '{stream}'
+ branch: 'master'
+ deploy-scenario: 'os-nosdn-nofeature'
+ - 'train':
+ branch: 'train'
+ deploy-scenario: 'os-nosdn-nofeature'
distro:
- ubuntu1804
- deploy-scenario:
- - k8-multus-plugins
-
- type:
- - baremetal:
- pod-name: est-baremetal
- provisioner-type: bifrost
- installer-type: kubespray
- slave-label: baremetal-deploy
- yardstick-dispatcher: 'file'
-
environment-type:
- offline:
disabled: false
execution-mode: offline-deployment
pdf: 'file:///opt/engine/offline/git/hwconfig/pods'
idf: 'file:///opt/engine/offline/git/hwconfig/pods'
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
phase:
- deploy:
- build-timeout: 60
+ build-timeout: 120
+ execution-mode: offline-deployment
- functest:
- build-timeout: 210
+ build-timeout: 240
+ execution-mode: online-test
- yardstick:
- build-timeout: 30
+ build-timeout: 60
+ execution-mode: online-test
jobs:
- - '{deploy-scenario}-{environment-type}-{distro}-{type}-periodic'
- - 'kubernetes-{environment-type}-{phase}-{distro}-{type}-periodic'
+ - 'openstack-release-{environment-type}-deploy-test-{distro}-baremetal-{stream}'
+ - 'openstack-release-{environment-type}-{phase}-{distro}-baremetal-{stream}'
- job-template:
- name: '{deploy-scenario}-{environment-type}-{distro}-{type}-periodic'
+ name: 'openstack-release-{environment-type}-deploy-test-{distro}-baremetal-{stream}'
project-type: multijob
disabled: '{obj:disabled}'
- concurrent: true
+ node: baremetal-deploy
+
+ concurrent: false
parameters:
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on.'
- - string:
- name: PROVISIONER_TYPE
- default: '{provisioner-type}'
- description: 'Provisioner type to use'
- - string:
- name: INSTALLER_TYPE
- default: '{installer-type}'
- description: 'Installer type to use'
- string:
- name: DEPLOY_SCENARIO
- default: '{deploy-scenario}'
- description: 'Scenario to deploy and test'
+ name: EXECUTION_MODE
+ default: 'offline-deployment'
+ description: 'Engine execution mode'
- string:
name: PDF
default: '{pdf}/${{NODE_NAME}}-pdf.yml'
- description: 'PDF file to use for deployment'
+ description: 'PDF file to use for deployment. DO NOT MODIFY!'
- string:
name: IDF
default: '{idf}/${{NODE_NAME}}-idf.yml'
- description: 'IDF file to use for deployment'
+ description: 'IDF file to use for deployment. DO NOT MODIFY!'
- string:
- name: CI_LOOP
- default: 'periodic'
- description: 'CI loop type'
+ name: SLAVE_LABEL
+ default: 'baremetal-deploy'
+ description: 'Type of the slave'
properties:
- logrotate
- throttle:
max-per-node: 1
- max-total: 3
+ max-total: 1
option: project
wrappers:
- build-timeout:
timeout: 300
- mask-passwords
- - fix-workspace-permissions
+ - pre-scm-buildstep:
+ failOnError: true
+ buildsteps:
+ - shell: |
+ #!/bin/bash
+ sudo chown -R $USER:$USER $WORKSPACE || exit 1
+ # offline nodes can not resolve Nordix Artifactory and Gerrit
+ if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
+ echo "Info : Offline deployment. Adding City OpenStack Endpoint, Nordix Artifactory and Gerrit Public IP to /etc/hosts"
+ sudo sed -i 's/^search/# search/' /etc/resolv.conf
+ sudo bash -c "cat << EOF >> /etc/hosts
+ # managed by engine
+ 91.106.198.25 artifactory.nordix.org
+ 91.106.198.142 gerrit.nordix.org
+ 86.107.242.50 fra1.citycloud.com
+ # managed by engine
+ EOF"
+ # we need to get rid of search domain as well
+ sudo sed -i 's/^search/# search/' /etc/resolv.conf
+ fi
+
+ scm:
+ - git:
+ url: https://gerrit.nordix.org/infra/engine.git
+ branches:
+ - master
+ timeout: 15
+ wipe-workspace: true
builders:
- description-setter:
- description: $DEPLOY_SCENARIO | $PROVISIONER_TYPE | $INSTALLER_TYPE
+ description: $DEPLOY_SCENARIO
- 'download-artifact-macro'
- multijob:
- name: "Offline Deployment on {type}"
+ name: "Offline Deployment on Baremetal using {deploy-scenario}"
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'kubernetes-{environment-type}-deploy-{distro}-{type}-periodic'
+ - name: 'openstack-release-{environment-type}-deploy-{distro}-baremetal-{stream}'
current-parameters: true
+ git-revision: true
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
- multijob:
- name: functest
+ name: Functional Testing
condition: ALWAYS
projects:
- - name: 'kubernetes-{environment-type}-functest-{distro}-{type}-periodic'
+ - name: 'openstack-release-{environment-type}-functest-{distro}-baremetal-{stream}'
current-parameters: true
+ git-revision: false
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
- multijob:
- name: yardstick
+ name: Platform Benchmarking
condition: ALWAYS
projects:
- - name: 'kubernetes-{environment-type}-yardstick-{distro}-{type}-periodic'
+ - name: 'openstack-release-{environment-type}-yardstick-{distro}-baremetal-{stream}'
current-parameters: true
+ git-revision: false
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
- job-template:
- name: 'kubernetes-{environment-type}-{phase}-{distro}-{type}-periodic'
+ name: 'openstack-release-{environment-type}-{phase}-{distro}-baremetal-{stream}'
disabled: '{obj:disabled}'
parameters:
+ - string:
+ name: EXECUTION_MODE
+ default: '{execution-mode}'
+ description: 'Execution mode'
- string:
name: TEST_REPO_URL
default: 'https://gerrit.nordix.org/infra/test.git'
description: 'Test suite to run'
- string:
name: YARDSTICK_DISPATCHER
- default: '{yardstick-dispatcher}'
+ default: 'file'
description: 'Dispatcher to use for Yardstick reporting'
properties:
- logrotate
- throttle:
max-per-node: 1
- max-total: 3
+ max-total: 1
option: project
wrappers:
timeout: '{build-timeout}'
- mask-passwords
- fix-workspace-permissions
+ - credentials-binding:
+ - file:
+ credential-id: '{openrc-credentials-file}'
+ variable: OPENRC_FILE
builders:
- description-setter:
- description: $DEPLOY_SCENARIO | $PROVISIONER_TYPE | $INSTALLER_TYPE
+ description: $DEPLOY_SCENARIO
- '{phase}-macro'
# ============LICENSE_END=========================================================
- project:
- name: 'kubernetes-release-offline'
+ name: 'openstack-release'
- project: 'kubernetes-release-offline'
+ project: 'openstack-release'
+
+ stream:
+ - 'master':
+ branch: 'master'
+ deploy-scenario: 'os-nosdn-nofeature'
+ promote-stack: 'false'
+ - 'train':
+ branch: 'train'
+ deploy-scenario: 'os-nosdn-nofeature'
+ promote-stack: 'true'
environment-type:
- offline:
disabled: false
execution-mode: offline-deployment
+ openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
distro:
- ubuntu1804
- phase:
- - package
- - promote
-
- cloud:
- - city:
- openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
-
jobs:
- - 'kubernetes-periodic-release-{environment-type}-{distro}'
- - 'kubernetes-periodic-package-{distro}'
- - 'kubernetes-periodic-promote-{distro}'
+ - 'openstack-release-{distro}-{stream}'
+ - 'openstack-package-{distro}-{stream}'
+ - 'openstack-promote-{distro}-{stream}'
- job-template:
- name: 'kubernetes-periodic-release-{environment-type}-{distro}'
+ name: 'openstack-release-{distro}-{stream}'
project-type: multijob
disabled: '{obj:disabled}'
+ node: 'engine-package-{distro}-fra'
+
concurrent: false
parameters:
- string:
- name: EXECUTION_MODE
- default: '{execution-mode}'
- description: 'Engine execution mode - online-deployment or offline-deployment - default is online-deployment'
+ name: BRANCH
+ default: '{branch}'
+ description: 'Branch the job is created for. DO NOT MODIFY!'
- string:
name: DISTRO
default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer type to use'
+ description: 'Distribution to provision and configre target nodes with. DO NOT MODIFY!'
- string:
name: DEPLOY_SCENARIO
- default: 'k8-multus-plugins'
- description: 'Scenario to deploy and test'
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with. This depends on the branch of the stack.'
+ - string:
+ name: CI_LOOP
+ default: 'release'
+ description: 'CI loop type. DO NOT MODIFY!'
- string:
name: VERBOSITY
- default: 'true'
- description: 'Verbosity setting for the engine - true or false - default is false'
+ default: 'false'
+ description: 'Engine verbosity'
- string:
- name: ARTIFACTS_TO_UPLOAD
- default: "k8s-installer-ubuntu1804.bsx offline-package.tgz"
- description: 'Artifacts to upload'
+ name: NORDIX_ENGINE_VERSION
+ default: 'master'
+ description: 'Engine version of engine to package, deploy, test, release'
- string:
- name: ARTIFACT_TO_DOWNLOAD
- default: "k8s-installer-ubuntu1804.bsx"
- description: 'Artifact to download'
+ name: STACK_TYPE
+ default: 'openstack'
+ description: 'Stack to package, deploy, test, release'
- string:
- name: NORDIX_ARM_PUBLIC_IP
- default: '91.106.198.25'
- description: 'Public IP of Nordix Artifactory. Offline deployments can not resolve domain name'
+ name: STACK_VERSION
+ default: '{branch}'
+ description: 'Stack version of engine to package, deploy, test, release'
- string:
- name: NORDIX_ARM_HTTPS_URL
- default: 'https://artifactory.nordix.org/artifactory'
- description: 'URL to Nordix Artifactory'
+ name: NORDIX_KOLLA_VERSION
+ default: '{branch}'
+ description: 'Kolla version of engine to package, deploy, test, release'
- string:
- name: NORDIX_ARM_REPO
- default: 'nordix-kubernetes'
- description: 'Name of the repository to upload and download artifact to/from. Depends on the stack'
+ name: NORDIX_BIFROST_VERSION
+ default: 'master'
+ description: 'Bifrost version of engine to package, deploy, test, release'
- string:
- name: CI_LOOP
- default: 'periodic'
- description: 'CI loop type'
- - label:
- name: SLAVE_LABEL
- default: 'engine-package-ubuntu1804-fra'
- description: 'Slave label to schedule this job on.'
+ name: PROMOTE_STACK
+ default: '{promote-stack}'
+ description: 'Heat version of engine to package, deploy, test, release'
properties:
- logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'engine-verify-package-.*'
- - 'onap-sdc-periodic-release-offline-.*'
- - 'onap-so-periodic-release-offline-.*'
- - 'kubernetes-periodic-release-offline-.*'
- block-level: 'NODE'
+ # NOTE (fdegir): throttle categories are controlled in jenkins global configuration
+ - throttle:
+ enabled: true
+ max-per-node: 1
+ max-total: 1
+ option: category
+ categories:
+ - engine-verify-package
wrappers:
- build-timeout:
timeout: 600
- mask-passwords
- fix-workspace-permissions
+ - openstack:
+ single-use: True
triggers:
- pollscm:
- cron: "H 0,8,16 * * *"
+ cron: "#H 0,8,16 * * *"
scm:
- git:
wipe-workspace: true
builders:
+ - 'generate-release-metadata-macro'
+ - inject:
+ properties-file: "$WORKSPACE/release.properties"
- 'generate-ssh-keypair-macro'
- - 'generate-build-metadata-macro'
- 'wait-pkg-mgr-macro'
- multijob:
- name: package
+ name: Packaging
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'kubernetes-periodic-package-{distro}'
- current-parameters: true
+ - name: 'openstack-package-{distro}-{stream}'
+ current-parameters: false
git-revision: true
node-parameters: true
- property-file: "$WORKSPACE/build.properties"
+ property-file: "$WORKSPACE/release.properties"
kill-phase-on: FAILURE
abort-all-job: true
- multijob:
- name: release test k8-multus-plugins
+ name: Release Test {deploy-scenario}
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'k8-multus-plugins-offline-{distro}-baremetal-periodic'
+ - name: 'openstack-release-offline-deploy-test-{distro}-baremetal-{stream}'
current-parameters: false
- git-revision: false
+ git-revision: true
node-parameters: false
- property-file: "$WORKSPACE/build.properties"
- predefined-parameters: |
- EXECUTION_MODE=$EXECUTION_MODE
- NORDIX_ARM_PUBLIC_IP=$NORDIX_ARM_PUBLIC_IP
- ARTIFACT_TO_DOWNLOAD=$ARTIFACT_TO_DOWNLOAD
- VERBOSITY=$VERBOSITY
+ property-file: "$WORKSPACE/release.properties"
kill-phase-on: FAILURE
abort-all-job: true
- multijob:
- name: promotion
+ name: Promotion
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'kubernetes-periodic-promote-{distro}'
- current-parameters: true
+ - name: 'openstack-promote-{distro}-{stream}'
+ current-parameters: false
git-revision: true
node-parameters: true
- property-file: "$WORKSPACE/build.properties"
+ property-file: "$WORKSPACE/release.properties"
kill-phase-on: FAILURE
abort-all-job: true
- job-template:
- name: 'kubernetes-periodic-package-{distro}'
+ name: 'openstack-package-{distro}-{stream}'
disabled: '{obj:disabled}'
concurrent: false
+ parameters:
+ - string:
+ name: EXECUTION_MODE
+ default: 'packaging'
+ description: 'Execution mode to run engine'
+
properties:
- logrotate
- 'upload-artifact-macro'
- job-template:
- name: 'kubernetes-periodic-promote-{distro}'
+ name: 'openstack-promote-{distro}-{stream}'
disabled: '{obj:disabled}'
stream:
- 'master':
branch: '{stream}'
+ deploy-scenario: 'os-nosdn-nofeature'
- 'train':
branch: '{stream}'
- - 'stein':
- branch: '{stream}'
+ deploy-scenario: 'os-nosdn-nofeature'
environment-type:
- online:
concurrent: true
parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with.'
+ - string:
+ name: DISTRO
+ default: '{distro}'
+ description: 'Distribution to use for configuring target nodes (networking etc.)'
- label:
name: SLAVE_LABEL
default: 'engine-{slave-type}-{environment-type}-{distro}-fra'
name: IDF
default: '{idf}'
description: 'IDF file to use for deployment'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: 'heat-environment-{cloud}-{distro}.yaml'
- description: 'Name of heat-environment file to use.'
- string:
name: HEAT_STACK_NAME
default: "nordix-cicd-verify-openstack-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER"
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'openstack-verify-{environment-type}-deploy-{distro}-city-{type}-master'
+ - name: 'openstack-verify-{environment-type}-deploy-{distro}-city-{type}-{stream}'
current-parameters: true
git-revision: true
node-parameters: true
condition: SUCCESSFUL
execution-type: PARALLEL
projects:
- - name: 'openstack-verify-{environment-type}-functest-{distro}-city-{type}-master'
+ - name: 'openstack-verify-{environment-type}-functest-{distro}-city-{type}-{stream}'
current-parameters: true
git-revision: false
node-parameters: true
failed: false
unstable: false
notbuilt: false
+ deploy-scenario: 'os-nosdn-nofeature'
- 'train':
branch: '{stream}'
openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
failed: false
unstable: false
notbuilt: false
- - 'stein':
- branch: '{stream}'
- openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
- execution-mode: 'packaging'
- gated-projects: 'infra/stack/openstack|infra/installer/kolla'
- successful: false
- failed: false
- unstable: false
- notbuilt: false
+ deploy-scenario: 'os-nosdn-nofeature'
distro:
- ubuntu1804
concurrent: true
parameters:
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{deploy-scenario}'
+ description: 'Scenario to test change with.'
- string:
name: EXECUTION_MODE
default: '{execution-mode}'
- 'train':
branch: '{stream}'
gated-projects: 'infra/stack/openstack|infra/installer/kolla'
- - 'stein':
- branch: '{stream}'
- gated-projects: 'infra/stack/openstack|infra/installer/kolla'
lint-type:
- ansible-lint:
- compare-type: ANT
pattern: '.gitignore|.gitreview|.yamllint|README.md|bindep.txt|setup.cfg|setup.py'
custom-url: '* $JOB_NAME $BUILD_URL'
+ readable-message: 'true'
builders:
- multijob:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-echo "Info: Cloning infra/engine repository"
-cd $HOME && /bin/rm -rf $WORKSPACE
-git clone -q $ENGINE_REPO_URL $WORKSPACE
-
-echo "Info: Generating temporary SDF"
-cat << EOF > $WORKSPACE/sdf.yml
-scenario:
- $DEPLOY_SCENARIO:
- scm: git
- src: $PROJECT_GIT_URL
- version: $GERRIT_PATCHSET_REVISION
- refspec: $GERRIT_REFSPEC
- provisioners:
- - $PROVISIONER_TYPE
- installers:
- $INSTALLER_TYPE:
- role: scenarios/$DEPLOY_SCENARIO/$INSTALLER_TYPE/role/$DEPLOY_SCENARIO
- distros:
- - $DISTRO
-EOF
-echo "Info: Temporary SDF content"
-echo "-------------------------------------------------------------------------"
-cat $WORKSPACE/sdf.yml
-echo "-------------------------------------------------------------------------"
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-echo "Info: Cloning infra/test repository"
-cd $HOME && /bin/rm -rf $WORKSPACE
-git clone -q $TEST_REPO_URL $WORKSPACE
-
-echo "Info: Generating temporary SDF"
-cat << EOF > $WORKSPACE/sdf.yml
-scenario:
- $DEPLOY_SCENARIO:
- scm: git
- src: $PROJECT_GIT_URL
- version: $GERRIT_PATCHSET_REVISION
- refspec: $GERRIT_REFSPEC
- provisioners:
- - $PROVISIONER_TYPE
- installers:
- $INSTALLER_TYPE:
- role: scenarios/$DEPLOY_SCENARIO/$INSTALLER_TYPE/role/$DEPLOY_SCENARIO
- distros:
- - $DISTRO
-EOF
-echo "Info: Temporary SDF content"
-echo "-------------------------------------------------------------------------"
-cat $WORKSPACE/sdf.yml
-echo "-------------------------------------------------------------------------"
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-cd $WORKSPACE
-echo "Info: Promoting ONAP. Please note that this may take about 3 hours to complete. Do not interrupt!"
-echo "-------------------------------------------------------------------------"
-cd /tmp && /bin/rm -rf $WORKSPACE
-git clone -q https://gerrit.nordix.org/infra/swconfig.git $WORKSPACE
-cd $WORKSPACE/scenarios/onap-nofeature-noha/kubespray/playbooks
-# avoid PS1: unbound variable issue
-set +u
-source /opt/engine/.venv/bin/activate
-set -u
-ansible-playbook -i /tmp/inventory.ini promote.yml
-echo "-------------------------------------------------------------------------"
-echo "Info: Promotion done!"
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-set -o pipefail
-
-# This script is a wrapper around actual cloud infra engine deploy.sh script which gets
-# executed when the job that uses this script gets triggered due to Gerrit change.
-#
-# Logic in this script should be kept at minimum and the changes should be pushed into
-# the cloud infra engine deploy.sh script.
-
-# The verify job will verify changes coming to other repositories as well such as
-# infra/swconfig so it needs to be handled here in order to ensure $WORKSPACE contains
-# the actual engine repo clone. This will be added later on.
-
-# PDF and IDF are determined based on the deployment type
-# If DEPLOY_TYPE is virtual, we always use nordix-vpod1 PDF and IDF.
-# If DEPLOY_TYPE is baremetal, we use variable NODE_NAME injected by Jenkins to the job
-# in order to set PDF and IDF for the POD the job is running against.
-
-if [[ $DEPLOY_TYPE == "baremetal" ]]; then
- PDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-pdf.yml"
- IDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-idf.yml"
-else
- PDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-pdf.yml"
- IDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-idf.yml"
-fi
-
-# execute cloud engine deploy.sh script
-cd $WORKSPACE
-./engine/deploy.sh -d $INSTALLER_TYPE -o $DISTRO -s $DEPLOY_SCENARIO -p $PDF -i $IDF -c
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-set -o pipefail
-
-# This script is a wrapper around actual cloud infra engine test.sh script which gets
-# executed when the job that uses this script gets triggered due to Gerrit change.
-#
-# Logic in this script should be kept at minimum and the changes should be pushed into
-# the cloud infra test test.sh script.
-
-# execute cloud engine test.sh script with arguments
-cd $WORKSPACE
-./test/test.sh -f $TEST_FW -t $TEST_SUITE -s $DEPLOY_SCENARIO -d $YARDSTICK_DISPATCHER
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-set -o pipefail
-
-cd $WORKSPACE
-echo "Info: Not implemented!"
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-set -o pipefail
-
-# This script is a wrapper around actual cloud infra engine test.sh script which gets
-# executed when the job that uses this script gets triggered due to Gerrit change.
-#
-# Logic in this script should be kept at minimum and the changes should be pushed into
-# the cloud infra test test.sh script.
-
-# execute cloud engine test.sh script with arguments
-cd $WORKSPACE
-./test/test.sh -f $TEST_FW -t $TEST_SUITE -s $DEPLOY_SCENARIO -d $YARDSTICK_DISPATCHER
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o nounset
-set -o errexit
-set -o pipefail
-
-# ensure we are in job build WORKSPACE
-cd "$WORKSPACE"
-
-export DEBIAN_FRONTEND=noninteractive
-
-# install dependencies
-echo "Info: Install python3.6-minimal python3-distutils virtualenv using apt"
-sudo apt update -q=3 > /dev/null 2>&1
-sudo apt install -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confnew -q=3 -y python3.6-minimal python3-distutils virtualenv > /dev/null 2>&1
-
-# create and activate virtualenv
-echo "Info: Create and activate python virtualenv"
-virtualenv -p python3.6 .venv > /dev/null 2>&1
-set +u
-source .venv/bin/activate > /dev/null 2>&1
-set -u
-
-# install test-requirements
-echo "Info: Install python packages listed in test-requirements.txt using pip"
-pip install --force-reinstall --quiet -r test-requirements.txt > /dev/null 2>&1
-
-# set default lint type
-export LINT_TYPE="${LINT_TYPE:-ansible-lint}"
-
-# run tox
-echo "Info: Run $LINT_TYPE using tox"
-echo "----------------------------------------------------"
-tox -e "$LINT_TYPE"
-echo "----------------------------------------------------"
-echo "Info: Done!"
-
-# vim: set ts=2 sw=2 expandtab:
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================
-set -o nounset
set -o errexit
set -o pipefail
cd "$WORKSPACE"
fi
+# NOTE (fdegir): this variable is set by generate-change-metadata.sh script
+# if a dependency to engine repo is determined so we check out that refspec
+# to ensure we respect the dependency
+if [[ ! -z "${NORDIX_ENGINE_REFSPEC+x}" ]]; then
+ echo "Info : Fetching dependent change ${NORDIX_ENGINE_REFSPEC} infra/engine"
+ git fetch "https://gerrit.nordix.org/infra/engine" ${NORDIX_ENGINE_REFSPEC} && git checkout FETCH_HEAD
+fi
+
if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
ENGINE_ROOT_DIR="/opt/engine/offline/git/engine"
else
ENGINE_ROOT_DIR="$WORKSPACE"
fi
-# TODO (fdegir): this is temporarily here to develop the jobs
-if [[ "$GERRIT_PROJECT" != "infra/engine" ]]; then
- cd $ENGINE_ROOT_DIR
- git fetch "https://gerrit.nordix.org/infra/engine" refs/changes/23/4823/18 && git checkout FETCH_HEAD
-fi
-
-# NOTE (fdegir): for bifrost based deployments, we don't need these files so we fake them
+# NOTE (fdegir): for bifrost based deployments, we don't need openrc file so we fake it
OPENRC_FILE=${OPENRC_FILE:-/tmp/openrc}
-HEAT_ENVIRONMENT_FILENAME=${HEAT_ENVIRONMENT_FILENAME:-/tmp/heat}
/bin/cp -f $OPENRC_FILE /tmp/openrc
cd "$ENGINE_ROOT_DIR/engine"
-./deploy.sh -d -s "$STACK_TYPE" -v "$STACK_VERSION" -p "$PDF" -i "$IDF" -o /tmp/openrc
+./deploy.sh -s "$STACK_TYPE" -b "$STACK_VERSION" -c "$DEPLOY_SCENARIO" -p "$PDF" -i "$IDF" -o /tmp/openrc -d "$DISTRO" -v
+
+# NOTE (fdegir): we need inventory.ini for test execution
+/bin/rm -f /tmp/inventory.ini
+/bin/cp -f /opt/engine/.cache/config/inventory.ini /tmp/inventory.ini
# vim: set ts=2 sw=2 expandtab:
if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
# ensure we delete leftovers due to lack of disk space
- sudo /bin/rm -rf /tmp/$INSTALLER_FILE ~/.ara \
+ sudo /bin/rm -rf $OFFLINE_INSTALLER_FILE ~/.ara \
/opt/test /opt/stack /httpboot > /dev/null 2>&1 || true
sudo docker ps -a --format {{.ID}} | xargs -n 1 sudo docker stop > /dev/null 2>&1 || true
sudo docker ps -a --format {{.ID}} | xargs -n 1 sudo docker rm > /dev/null 2>&1 || true
sudo docker images -a --format {{.ID}} | xargs -n 1 sudo docker rmi -f > /dev/null 2>&1 || true
sudo docker volume rm $(sudo docker volume ls -qf dangling=true) > /dev/null 2>&1 || true
+ REMOTE_ARTIFACT=$(echo $OFFLINE_INSTALLER_FILE | sed 's/.*\///g')
+
echo "Info : Downloading artifact from Nordix ARM..."
- echo " $NORDIX_ARTIFACT_URL/$INSTALLER_FILE"
+ echo " $NORDIX_ARTIFACT_URL/$REMOTE_ARTIFACT"
cd /tmp
- curl -s -S -O $NORDIX_ARTIFACT_URL/$INSTALLER_FILE
+ curl -s -S -O $NORDIX_ARTIFACT_URL/$REMOTE_ARTIFACT
echo "Info : Downloaded the artifact for offline deployment. Extracting..."
- echo " $(ls -al /tmp/$INSTALLER_FILE)"
- chmod +x /tmp/$INSTALLER_FILE
- /tmp/$INSTALLER_FILE
- sudo /bin/rm -rf /tmp/$INSTALLER_FILE
+ echo " $(ls -al $OFFLINE_INSTALLER_FILE)"
+ chmod +x $OFFLINE_INSTALLER_FILE
+ $OFFLINE_INSTALLER_FILE
+ sudo /bin/rm -rf $OFFLINE_INSTALLER_FILE
else
echo "Info : Online deployment. Skipping artifact download."
fi
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================
-set -o nounset
set -o errexit
set -o pipefail
cd $HOME && /bin/rm -rf $WORKSPACE
git clone -q $TEST_REPO_URL $WORKSPACE
+# NOTE (fdegir): we need to override execution mode variable coming from change.properties file
+if [[ "$CI_LOOP" != "release" ]]; then
+ export EXECUTION_MODE=$(echo "$EXECUTION_MODE" | sed 's/deployment/test/g')
+else
+ export EXECUTION_MODE=online-test
+fi
+
cd $WORKSPACE/test
-./test.sh -f $TEST_FW -t $TEST_SUITE -s $STACK_TYPE -y $YARDSTICK_DISPATCHER -d
+./test.sh -s "$STACK_TYPE" -b "$BRANCH" -c "$DEPLOY_SCENARIO" -f "$TEST_FW" -t "$TEST_SUITE" \
+ -o /tmp/openrc -i /tmp/inventory.ini -y "$YARDSTICK_DISPATCHER" -v
# vim: set ts=2 sw=2 expandtab:
--- /dev/null
+#!/bin/bash
+
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+
+set -o nounset
+set -o errexit
+set -o pipefail
+
+# NOTE (fdegir): in case if a change depends on another open change in different repo
+# we determine it here and override the version and refspec for that repo
+function determine_dependency() {
+ echo "Info : Determining dependency"
+ echo "Info : Commit message is"
+ echo "-------------------------------------------------------------------------"
+ echo "$GERRIT_CHANGE_COMMIT_MESSAGE"
+ echo "-------------------------------------------------------------------------"
+
+ if ! echo "$GERRIT_CHANGE_COMMIT_MESSAGE" | grep -qs "^Depends-On:"; then
+ echo "Info : No dependency found"
+ return
+ else
+ echo "Info : Dependency found!"
+ DEPENDENT_CHANGE_ID=$(echo "$GERRIT_CHANGE_COMMIT_MESSAGE" | grep "^Depends-On:" | cut -d":" -f2 | sed 's/\s*//g')
+ fi
+
+ echo "Info : Processing change $DEPENDENT_CHANGE_ID"
+ declare -a DEPENDENT_CHANGE_METADATA
+ readarray -t DEPENDENT_CHANGE_METADATA < <(curl -s "https://gerrit.nordix.org/changes/?q=$DEPENDENT_CHANGE_ID&o=CURRENT_REVISION" 2>&1 \
+ | grep "project\|status\|current_revision\|ref.*," | sed -e 's/\s//g' -e 's/,//g' -e 's/"//g'| cut -d: -f2)
+
+ # NOTE (fdegir): check if the dependeny change exists
+ # and ignore if it doesn't
+ if [[ -z "${DEPENDENT_CHANGE_METADATA+x}" ]]; then
+ echo "Warn : Unable to determine dependent change. Ignoring dependency!"
+ return
+ fi
+
+ DEPENDENT_CHANGE_PROJECT="${DEPENDENT_CHANGE_METADATA[0]}"
+ DEPENDENT_CHANGE_STATUS="${DEPENDENT_CHANGE_METADATA[1]}"
+ DEPENDENT_CHANGE_REVISION="${DEPENDENT_CHANGE_METADATA[2]}"
+ DEPENDENT_CHANGE_REFSPEC="${DEPENDENT_CHANGE_METADATA[3]}"
+ echo "-------------------------------------------------------------------------"
+ echo " DEPENDENT_CHANGE_PROJECT=$DEPENDENT_CHANGE_PROJECT"
+ echo " DEPENDENT_CHANGE_STATUS=$DEPENDENT_CHANGE_STATUS"
+ echo " DEPENDENT_CHANGE_REVISION=$DEPENDENT_CHANGE_REVISION"
+ echo " DEPENDENT_CHANGE_REFSPEC=$DEPENDENT_CHANGE_REFSPEC"
+ echo "-------------------------------------------------------------------------"
+
+ # NOTE (fdegir): we only follow the dependency if the change status is NEW
+ if [[ "$DEPENDENT_CHANGE_STATUS" != "NEW" ]]; then
+ echo "Warn : Change is not open. Ignoring dependency!"
+ return
+ fi
+
+ # NOTE (fdegir): we do not accept dependency of a change that is sent to same project as the dependent change
+ if [[ "$DEPENDENT_CHANGE_PROJECT" == "$GERRIT_PROJECT" ]]; then
+ echo "Warn : Change is for the same project. Ignoring dependency!"
+ return
+ fi
+
+ DEPENDENT_COMPONENT="${DEPENDENT_CHANGE_PROJECT//*\//}"
+
+ echo "# dependent change" >> "$CHANGE_METADATA_FILE"
+
+ # NOTE (fdegir): if dependent change is on stack repo, we need to treat it
+ # differently
+ if [[ "$DEPENDENT_CHANGE_PROJECT" =~ /stack/ ]]; then
+ # set vars
+ echo "STACK_TYPE=$DEPENDENT_COMPONENT" >> "$CHANGE_METADATA_FILE"
+ echo "STACK_VERSION=$DEPENDENT_CHANGE_REVISION" >> "$CHANGE_METADATA_FILE"
+ echo "STACK_REFSPEC=$DEPENDENT_CHANGE_REFSPEC" >> "$CHANGE_METADATA_FILE"
+ else
+ echo "NORDIX_$(echo $DEPENDENT_COMPONENT | tr a-z A-Z)_VERSION=$DEPENDENT_CHANGE_REVISION" >> "$CHANGE_METADATA_FILE"
+ echo "NORDIX_$(echo $DEPENDENT_COMPONENT | tr a-z A-Z)_REFSPEC=$DEPENDENT_CHANGE_REFSPEC" >> "$CHANGE_METADATA_FILE"
+ fi
+
+}
+
+# file to record change metadata
+export CHANGE_METADATA_FILE="$WORKSPACE/change.properties"
+/bin/rm -f "$CHANGE_METADATA_FILE"
+
+echo "Info : Generating change metadata"
+
+# determine the project
+# this scripts is used by all engine repos so we need to determine what this change is for
+export ENGINE_COMPONENT="${GERRIT_PROJECT//*\//}"
+
+echo "Info : Setting STACK_TYPE and STACK_VERSION"
+if [[ "$GERRIT_PROJECT" =~ /stack/ ]]; then
+ # set vars
+ export STACK_TYPE="$ENGINE_COMPONENT"
+ export STACK_VERSION="$GERRIT_PATCHSET_REVISION"
+ export STACK_REFSPEC="$GERRIT_REFSPEC"
+
+ # record vars to properties file
+ echo "STACK_TYPE=$STACK_TYPE" >> "$CHANGE_METADATA_FILE"
+ echo "DEPLOY_SCENARIO=$DEPLOY_SCENARIO" >> "$CHANGE_METADATA_FILE"
+ echo "STACK_VERSION=$STACK_VERSION" >> "$CHANGE_METADATA_FILE"
+ echo "STACK_REFSPEC=$STACK_REFSPEC" >> "$CHANGE_METADATA_FILE"
+elif [[ "$GERRIT_PROJECT" =~ /installer/ ]]; then
+ # set vars
+ case "${ENGINE_COMPONENT}" in
+ kolla)
+ export STACK_TYPE="openstack"
+ echo "Info : Deploy scenario is overriden by job to $DEPLOY_SCENARIO"
+ ;;
+ kubespray)
+ export STACK_TYPE="kubernetes"
+ echo "Info : Deploy scenario is overriden by job to $DEPLOY_SCENARIO"
+ ;;
+ oom)
+ export STACK_TYPE="onap"
+ echo "Info : Deploy scenario is overriden by job to $DEPLOY_SCENARIO"
+ ;;
+ *) echo "ERROR : Invalid engine component $ENGINE_COMPONENT"; exit 1;;
+ esac
+ export STACK_VERSION="$GERRIT_BRANCH"
+
+ # record vars to properties file
+ echo "STACK_TYPE=$STACK_TYPE" >> "$CHANGE_METADATA_FILE"
+ echo "DEPLOY_SCENARIO=$DEPLOY_SCENARIO" >> "$CHANGE_METADATA_FILE"
+ echo "STACK_VERSION=$STACK_VERSION" >> "$CHANGE_METADATA_FILE"
+ echo "NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_VERSION=$GERRIT_PATCHSET_REVISION" >> "$CHANGE_METADATA_FILE"
+ echo "NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_REFSPEC=$GERRIT_REFSPEC" >> "$CHANGE_METADATA_FILE"
+else
+ # set vars
+ export STACK_TYPE=kubernetes
+ export STACK_VERSION=$GERRIT_BRANCH
+
+ # record vars to properties file
+ echo "STACK_TYPE=$STACK_TYPE" >> "$CHANGE_METADATA_FILE"
+ echo "DEPLOY_SCENARIO=$DEPLOY_SCENARIO" >> "$CHANGE_METADATA_FILE"
+ echo "STACK_VERSION=$STACK_VERSION" >> "$CHANGE_METADATA_FILE"
+ echo "NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_VERSION=$GERRIT_PATCHSET_REVISION" >> "$CHANGE_METADATA_FILE"
+ echo "NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_REFSPEC=$GERRIT_REFSPEC" >> "$CHANGE_METADATA_FILE"
+fi
+
+# global vars
+export NORDIX_ARM_HTTPS_URL="https://artifactory.nordix.org/artifactory"
+export ARTIFACT_ARM_FOLDER="gerrit"
+export BUILD_IDENTIFIER=$GERRIT_CHANGE_NUMBER
+export OFFLINE_INSTALLER_FILE="/tmp/${STACK_TYPE}-${GERRIT_BRANCH}-${DISTRO}.bsx"
+export BUILD_ARTIFACTS="/tmp/${STACK_TYPE}-${GERRIT_BRANCH}-${DISTRO}.bsx"
+export NORDIX_ARM_REPO="nordix-${STACK_TYPE}"
+export NORDIX_ARTIFACT_URL="$NORDIX_ARM_HTTPS_URL/$NORDIX_ARM_REPO/oss/$ARTIFACT_ARM_FOLDER/$BUILD_IDENTIFIER"
+
+cat << EOF >> "$CHANGE_METADATA_FILE"
+BUILD_IDENTIFIER=$BUILD_IDENTIFIER
+BUILD_DATE=$(date '+%Y%m%d%H%M')
+BUILT_BY=$BUILD_URL
+DISTRO=$DISTRO
+CI_LOOP=$CI_LOOP
+ENGINE_SHA=$(git rev-parse HEAD)
+OFFLINE_INSTALLER_FILE=$OFFLINE_INSTALLER_FILE
+BUILD_ARTIFACTS=$BUILD_ARTIFACTS
+NORDIX_ARM_REPO=nordix-${STACK_TYPE}
+NORDIX_ARTIFACT_URL=$NORDIX_ARTIFACT_URL
+EOF
+
+# NOTE (fdegir): we generated the change metadata file normally until here
+# we now determine the dependency as the last step to ensure we override vars
+determine_dependency
+
+echo "Info : Change metadata"
+echo "-------------------------------------------------------------------------"
+cat "$CHANGE_METADATA_FILE"
+echo "-------------------------------------------------------------------------"
+
+# vim: set ts=2 sw=2 expandtab:
--- /dev/null
+#!/bin/bash
+
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+set -o nounset
+set -o errexit
+set -o pipefail
+
+# NOTE (Fdegir): stacks use different tools so we need to record tool versions
+# depending on which stack we are releasing
+function record_component_versions() {
+ case "${STACK_TYPE}" in
+ ironic)
+ echo "NORDIX_BIFROST_VERSION=$NORDIX_BIFROST_VERSION" >> $RELEASE_METADATA_FILE
+ ;;
+ kubernetes)
+ echo "NORDIX_BIFROST_VERSION=$NORDIX_BIFROST_VERSION" >> $RELEASE_METADATA_FILE
+ echo "NORDIX_HEAT_VERSION=$NORDIX_HEAT_VERSION" >> $RELEASE_METADATA_FILE
+ echo "NORDIX_KUBESPRAY_VERSION=$NORDIX_KUBESPRAY_VERSION" >> $RELEASE_METADATA_FILE
+ ;;
+ onap)
+ echo "NORDIX_HEAT_VERSION=$NORDIX_HEAT_VERSION" >> $RELEASE_METADATA_FILE
+ echo "NORDIX_OOM_VERSION=$NORDIX_OOM_VERSION" >> $RELEASE_METADATA_FILE
+ ;;
+ openstack)
+ echo "NORDIX_BIFROST_VERSION=$NORDIX_BIFROST_VERSION" >> $RELEASE_METADATA_FILE
+ echo "NORDIX_KOLLA_VERSION=$NORDIX_KOLLA_VERSION" >> $RELEASE_METADATA_FILE
+ ;;
+ *) echo "ERROR : Invalid stack $STACK_TYPE"; exit 1;;
+ esac
+}
+
+# file to record release metadata
+export RELEASE_METADATA_FILE="$WORKSPACE/release.properties"
+/bin/rm -f "$RELEASE_METADATA_FILE" /tmp/release.properties
+
+echo "Info : Generating release metadata"
+
+# global vars
+export NORDIX_ARM_HTTPS_URL="https://artifactory.nordix.org/artifactory"
+export ARTIFACT_ARM_FOLDER="release/${BRANCH}/stack"
+export BUILD_IDENTIFIER="$(date '+%Y%m%d%H%M')"
+export OFFLINE_INSTALLER_FILE="/tmp/${STACK_TYPE}-${BRANCH}-${DISTRO}.bsx"
+export BUILD_ARTIFACTS="/tmp/${STACK_TYPE}-${BRANCH}-${DISTRO}.bsx /tmp/offline-package.tgz $WORKSPACE/release.properties"
+export NORDIX_ARM_REPO="nordix-${STACK_TYPE}"
+export NORDIX_ARTIFACT_URL="$NORDIX_ARM_HTTPS_URL/$NORDIX_ARM_REPO/oss/$ARTIFACT_ARM_FOLDER/$BUILD_IDENTIFIER"
+
+cat << EOF >> "$RELEASE_METADATA_FILE"
+BUILD_IDENTIFIER=$BUILD_IDENTIFIER
+BUILD_DATE=$BUILD_IDENTIFIER
+BRANCH=$BRANCH
+RELEASE_JOB=$BUILD_URL
+DISTRO=$DISTRO
+DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+CI_LOOP=$CI_LOOP
+STACK_TYPE=$STACK_TYPE
+STACK_VERSION=$STACK_VERSION
+PROMOTE_STACK=$PROMOTE_STACK
+OFFLINE_INSTALLER_FILE=$OFFLINE_INSTALLER_FILE
+BUILD_ARTIFACTS=$BUILD_ARTIFACTS
+NORDIX_ARM_REPO=nordix-${STACK_TYPE}
+NORDIX_ARTIFACT_URL=$NORDIX_ARTIFACT_URL
+NORDIX_ENGINE_VERSION=$NORDIX_ENGINE_VERSION
+EOF
+
+record_component_versions
+
+echo "Info : Release metadata"
+echo "-------------------------------------------------------------------------"
+cat "$RELEASE_METADATA_FILE"
+echo "-------------------------------------------------------------------------"
+
+# NOTE (fdegir): release.properties file will be included in the tarball if the packaging
+# is run for release purposes
+/bin/cp -f $RELEASE_METADATA_FILE /tmp/release.properties
+
+# vim: set ts=2 sw=2 expandtab:
# ============LICENSE_END=========================================================
set -o errexit
-set -o nounset
set -o pipefail
-# determine PDF
-if [[ $DEPLOY_TYPE == "baremetal" ]]; then
- PDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-pdf.yml"
- IDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-idf.yml"
-else
- PDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-pdf.yml"
- IDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-idf.yml"
+# NOTE (fdegir): we need to remove $WORKSPACE and clone infra/engine repository
+# as infra/engine is what drives the deployment
+if [[ "$GERRIT_PROJECT" != "infra/engine" ]]; then
+ cd "$HOME" && /bin/rm -rf "$WORKSPACE"
+ echo "Info : Cloning infra/engine repository"
+ git clone -q https://gerrit.nordix.org/infra/engine.git "$WORKSPACE"
+ cd "$WORKSPACE"
fi
-# clone infra/engine repository
-echo "Info: Deploying scenario $DEPLOY_SCENARIO using $INSTALLER_TYPE"
-cd $WORKSPACE
-./engine/deploy.sh -d $INSTALLER_TYPE -s $DEPLOY_SCENARIO -p $PDF -i $IDF -b file://$WORKSPACE/sdf.yml -c
+# NOTE (fdegir): this variable is set by generate-change-metadata.sh script
+# if a dependency to engine repo is determined so we check out that refspec
+# to ensure we respect the dependency
+if [[ ! -z "${NORDIX_ENGINE_REFSPEC+x}" ]]; then
+ echo "Info : Fetching dependent change ${NORDIX_ENGINE_REFSPEC} infra/engine"
+ git fetch "https://gerrit.nordix.org/infra/engine" ${NORDIX_ENGINE_REFSPEC} && git checkout FETCH_HEAD
+fi
+
+echo "Info : Packaging stack $STACK_TYPE"
+
+cd "$WORKSPACE/engine"
+./package.sh -s "$STACK_TYPE" -b "$STACK_VERSION" -d "$DISTRO" -v
# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-echo "Hello world!"
-
-# vim: set ts=2 sw=2 expandtab:
--- /dev/null
+#!/bin/bash
+
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+set -o nounset
+set -o errexit
+set -o pipefail
+
+if [[ "$PROMOTE_STACK" != "true" ]]; then
+ echo "Info : Promotion is disabled. Skipping!"
+ exit 0
+fi
+
+echo "Info : Promoting stack!"
+
+cd /tmp
+for BUILD_ARTIFACT in $BUILD_ARTIFACTS; do
+ echo "Info : Generating checksums for $BUILD_ARTIFACT"
+ ARTIFACT_MD5SUM=$(md5sum $BUILD_ARTIFACT | cut -d' ' -f1)
+ ARTIFACT_SHASUM=$(shasum $BUILD_ARTIFACT | cut -d' ' -f1)
+ ARTIFACT_SHA256SUM=$(sha256sum $BUILD_ARTIFACT | cut -d' ' -f1)
+
+ # NOTE (fdegir): get rid of /tmp from BUILD_ARTIFACT
+ REMOTE_ARTIFACT=$(echo $BUILD_ARTIFACT | sed 's/.*\///g')
+
+ # NOTE (fdegir): promotion is copying artifacts to latest folder for the release/branch
+ PROMOTED_ARTIFACT_URL=$(echo $NORDIX_ARTIFACT_URL | sed "s/$BUILD_IDENTIFIER/latest/g")
+
+ echo "Info : Uploading $BUILD_ARTIFACT to Nordix Artifactory"
+ curl -s -S \
+ -H "X-JFrog-Art-Api:$NORDIX_ARM_TOKEN" \
+ -H "X-Checksum-MD5:$ARTIFACT_MD5SUM" \
+ -H "X-Checksum-Sha1:$ARTIFACT_SHASUM" \
+ -H "X-Checksum-Sha256:$ARTIFACT_SHA256SUM" \
+ -T $BUILD_ARTIFACT \
+ "$PROMOTED_ARTIFACT_URL/$REMOTE_ARTIFACT"
+ echo "Info : Artifact $BUILD_ARTIFACT is promoted to $PROMOTED_ARTIFACT_URL/$REMOTE_ARTIFACT"
+done
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-cd $WORKSPACE
-/bin/rm -f ../inventory.ini
-echo "Info: Preparing for Spinnaker deployment"
-
-# checkout given engine version
-if [[ "$ENGINE_VERSION" != "master" ]]; then
- echo "Warning: Checking out $ENGINE_VERSION"
- git checkout -q $ENGINE_VERSION
-fi
-
-# checkout given engine refspec
-if [[ "$ENGINE_REFSPEC" != "master" ]]; then
- echo "Warning: Checking out engine $ENGINE_REFSPEC"
- echo "-------------------------------------------------------------------------"
- git fetch https://gerrit.nordix.org/infra/engine $ENGINE_REFSPEC && git checkout -q FETCH_HEAD
- echo "-------------------------------------------------------------------------"
-fi
-
-# update scenario version and refspec in engine/envine/var/sdf.yml
-if [[ "$DEPLOY_SCENARIO_VERSION" != "master" && "$DEPLOY_SCENARIO_REFSPEC" != "master" ]]; then
- echo "Warning: Adding $DEPLOY_SCENARIO_VERSION as scenario version and $DEPLOY_SCENARIO_REFSPEC as scenario refspec"
-cat << EOF > $WORKSPACE/engine/var/sdf.yml
-scenario:
- $DEPLOY_SCENARIO:
- scm: git
- src: https://gerrit.nordix.org/infra/swconfig.git
- version: $DEPLOY_SCENARIO_VERSION
- refspec: $DEPLOY_SCENARIO_REFSPEC
- provisioners:
- - $PROVISIONER_TYPE
- installers:
- $INSTALLER_TYPE:
- role: scenarios/$DEPLOY_SCENARIO/$INSTALLER_TYPE/role/$DEPLOY_SCENARIO
- distros:
- - $DISTRO
-EOF
-
- echo "Info: Temporary SDF content"
- echo "-------------------------------------------------------------------------"
- cat $WORKSPACE/engine/var/sdf.yml
- echo "-------------------------------------------------------------------------"
-fi
-
-echo "Info: Starting K8S cluster creation and Spinnaker deployment"
-echo "-------------------------------------------------------------------------"
-cd $WORKSPACE
-./engine/deploy.sh -r $PROVISIONER_TYPE -u /tmp/openrc \
- -s $DEPLOY_SCENARIO -e $HEAT_ENVIRONMENT_FILE
-
-cd $WORKSPACE
-/bin/cp /opt/engine/.cache/config/inventory.ini ../inventory.ini
-
-# vim: set ts=2 sw=2 expandtab:
ARTIFACT_SHASUM=$(shasum $BUILD_ARTIFACT | cut -d' ' -f1)
ARTIFACT_SHA256SUM=$(sha256sum $BUILD_ARTIFACT | cut -d' ' -f1)
+ # NOTE (fdegir): get rid of /tmp from BUILD_ARTIFACT
+ REMOTE_ARTIFACT=$(echo $BUILD_ARTIFACT | sed 's/.*\///g')
+
echo "Info : Uploading $BUILD_ARTIFACT to Nordix Artifactory"
curl -s -S \
-H "X-JFrog-Art-Api:$NORDIX_ARM_TOKEN" \
-H "X-Checksum-Sha1:$ARTIFACT_SHASUM" \
-H "X-Checksum-Sha256:$ARTIFACT_SHA256SUM" \
-T $BUILD_ARTIFACT \
- "$NORDIX_ARTIFACT_URL/$BUILD_ARTIFACT"
- echo "Info : Artifact $BUILD_ARTIFACT is available on $NORDIX_ARTIFACT_URL/$BUILD_ARTIFACT"
+ "$NORDIX_ARTIFACT_URL/$REMOTE_ARTIFACT"
+ echo "Info : Artifact $BUILD_ARTIFACT is available on $NORDIX_ARTIFACT_URL/$REMOTE_ARTIFACT"
done
else
echo "Info : Online deployment. No artifact to upload."
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-- builder:
- name: 'spinnaker-deploy-macro'
- builders:
- - shell:
- !include-raw: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./scripts/spinnaker-deploy.sh
-
-- builder:
- name: 'spinnaker-test-macro'
- builders:
- - shell:
- !include-raw: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./scripts/spinnaker-test.sh
-- builder:
- name: 'promote-spinnaker-macro'
- builders:
- - shell:
- !include-raw: ./wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./scripts/promote-spinnaker.sh
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o errexit
-set -o nounset
-
-source /etc/os-release || source /usr/lib/os-release
-case ${ID,,} in
- centos)
- pkg_mgr_cmd="yum"
- ;;
- ubuntu)
- pkg_mgr_cmd="apt"
- ;;
-esac
-
-# just wait few seconds before attempting to check pkg manager process
-sleep 10
-
-echo "Info: Waiting for completion of an existing $pkg_mgr_cmd process before proceeding..."
-while true; do
- pkg_mgr_process=$(pgrep -f $pkg_mgr_cmd | cat)
- if [[ -n $pkg_mgr_process ]]; then
- sleep 10
- else
- break
- fi
-done
-echo "Info: $pkg_mgr_cmd process done. Continuing..."
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-- builder:
- name: 'onap-package-builder-macro'
- builders:
- - shell:
- !include-raw: ./scripts/package.sh
-
-- builder:
- name: 'onap-deploy-builder-macro'
- builders:
- - shell:
- !include-raw: ../scripts/wait-for-pkg-manager.sh
- - shell:
- !include-raw: ./scripts/deploy.sh
-
-- builder:
- name: 'onap-oom-healthcheck-builder-macro'
- builders:
- - shell:
- !include-raw: ./scripts/oom-healthcheck.sh
-
-- builder:
- name: 'onap-healthcheck-builder-macro'
- builders:
- - shell:
- !include-raw: ./scripts/onap-healthcheck.sh
-
-- builder:
- name: 'onap-promote-builder-macro'
- builders:
- - shell:
- !include-raw: ./scripts/promote.sh
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-#--------------------------------------------------------------------------------------
-# The jobs declared in this JJB configuration file are used for deploying and testing
-# ONAP scenario onap-nofeature-noha.
-#--------------------------------------------------------------------------------------
-
-- project:
- name: 'onap-deploy-test-online'
-
- project: 'infra/engine'
-
- distro:
- - ubuntu1804
-
- deploy-scenario:
- - k8-calico-onap:
- deploy-scenario-version: master
- deploy-scenario-refspec: master
-
- onap-profile:
- - sdc
- - so
-
- onap-branch:
- - elalto:
- onap-version: elalto
- nordix-branch: master
- engine-version: master
- engine-refspec: master
- disabled: false
- - master:
- onap-version: master
- nordix-branch: master
- engine-version: master
- engine-refspec: master
- disabled: false
-
- type:
- - cloud:
- pod-name: est-cloud
- provisioner-type: bifrost
- installer-type: kubespray
-
- environment-type:
- - online:
- execution-mode: online-deployment
-
- cloud:
- - city:
- slave-label: 'engine-jumphost-online-ubuntu1804-fra'
- openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd'
- daily-trigger: '@midnight'
-
- ci-loop:
- - periodic
-
- job-phase:
- - deploy:
- build-timeout: 420
- - oom-healthcheck:
- build-timeout: 30
- test-type: oom-healthcheck
- - healthcheck:
- build-timeout: 30
- test-type: onap-healthcheck
-
- jobs:
- - '{deploy-scenario}-{onap-profile}-{environment-type}-{distro}-{cloud}-{type}-{ci-loop}-{onap-branch}'
- - 'onap-{onap-profile}-{environment-type}-{job-phase}-{distro}-{cloud}-{type}-{ci-loop}-{onap-branch}'
-
-- job-template:
- name: '{deploy-scenario}-{onap-profile}-{environment-type}-{distro}-{cloud}-{type}-{ci-loop}-{onap-branch}'
-
- project-type: multijob
-
- disabled: '{obj:disabled}'
-
- concurrent: false
-
- parameters:
- - project-parameters:
- project: '{project}'
- branch: '{nordix-branch}'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: PROVISIONER_TYPE
- default: 'heat'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: '{deploy-scenario}'
- description: 'Scenario to deploy and test'
- - string:
- name: DEPLOY_TYPE
- default: '{type}'
- description: 'Type of the deployment'
- - string:
- name: DISTRO
- default: '{distro}'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: ONAP_VERSION
- default: '{onap-version}'
- description: 'ONAP version to deploy'
- - string:
- name: ONAP_PROFILE
- default: '{onap-profile}'
- description: 'ONAP profile to deploy - could be sdc or so.'
- - string:
- name: OPENSTACK_CLOUD_PROVIDER
- default: '{cloud}'
- description: 'Name of the cloud where this job is run'
- - string:
- name: STACK_NAME
- default: 'nordix-cicd-{deploy-scenario}-{onap-profile}-{onap-branch}'
- description: 'Stack to create'
- - string:
- name: KEYPAIR_NAME
- default: 'keypair-nordix-cicd-{deploy-scenario}-{onap-profile}-{onap-branch}'
- description: 'Keypair to create and use'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: 'heat-environment-{cloud}-{distro}-{onap-profile}.yaml'
- description: 'Heat environment file to use'
- - string:
- name: EXECUTION_MODE
- default: '{execution-mode}'
- description: 'Engine execution mode - could be online-deployment or offline-deployment'
- - string:
- name: ENGINE_VERSION
- default: '{engine-version}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Could be sha, branch'
- - string:
- name: ENGINE_REFSPEC
- default: '{engine-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Must be refspec.'
- - string:
- name: DEPLOY_SCENARIO_VERSION
- default: '{deploy-scenario-version}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_REFSPEC and could be sha, branch.'
- - string:
- name: DEPLOY_SCENARIO_REFSPEC
- default: '{deploy-scenario-refspec}'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_VERSION and must be refspec.'
- - string:
- name: POD_NAME
- default: 'none'
- description: 'Development purposes only! Set to none for disabling test results DB reporting.'
- - string:
- name: TEST_TYPE
- default: 'oom-healthcheck'
- description: 'Test type to run. Could be oom-healthcheck or onap-healthcheck'
- - string:
- name: NORDIX_ARM_REPO_URL
- default: 'https://artifactory.nordix.org/artifactory'
- description: 'URL to Nordix Artifactory'
- - string:
- name: NORDIX_HARBOR_REPO_URL
- default: 'registry.nordix.org'
- description: 'URL to Nordix Harbor'
- - string:
- name: XTESTING_REPO_URL
- default: 'https://gerrit.nordix.org/opnfv/xtesting-onap.git'
- description: 'URL to Nordix xtesting-onap repository'
- - string:
- name: ENGINE_ANSIBLE_PARAMS
- default: ''
- description: 'Extra parameters that can be added when run the play books.'
-
- properties:
- - logrotate
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'cloud-infra-verify-engine-.*'
- - 'cloud-infra-verify-scenario-.*'
- - 'cloud-infra-periodic-engine-.*'
- - 'onap-.*'
- - 'k8-.*'
- - 'os-.*'
- - 'nolabs-.*'
- block-level: 'NODE'
- - throttle:
- max-per-node: 1
- max-total: 1
- option: project
-
- wrappers:
- - mask-passwords
- - build-timeout:
- timeout: 630
- - fix-workspace-permissions
-
- triggers:
- - timed: '{daily-trigger}'
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | $ONAP_PROFILE
- - multijob:
- name: Deploy ONAP using OOM (not activated)
- condition: ALWAYS
- projects:
- - name: 'onap-{onap-profile}-{environment-type}-deploy-{distro}-{cloud}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_PROFILE=$ONAP_PROFILE
- POD_NAME=$POD_NAME
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- EXECUTION_MODE=$EXECUTION_MODE
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- git-revision: true
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: K8S and OOM Healthcheck using xtesting (not activated)
- condition: ALWAYS
- projects:
- - name: 'onap-{onap-profile}-{environment-type}-oom-healthcheck-{distro}-{cloud}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_PROFILE=$ONAP_PROFILE
- TEST_TYPE=oom-healthcheck
- POD_NAME=$POD_NAME
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- EXECUTION_MODE=$EXECUTION_MODE
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - multijob:
- name: ONAP Healthcheck using xtesting (not activated)
- execution-type: SEQUENTIALLY
- condition: ALWAYS
- projects:
- - name: 'onap-{onap-profile}-{environment-type}-healthcheck-{distro}-{cloud}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_PROFILE=$ONAP_PROFILE
- TEST_TYPE=sdc-healthcheck
- POD_NAME=$POD_NAME
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- ENGINE_VERSION=$ENGINE_VERSION
- EXECUTION_MODE=$EXECUTION_MODE
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
- - name: 'onap-{onap-profile}-{environment-type}-healthdist-{distro}-{cloud}-{type}-{ci-loop}-{onap-branch}'
- current-parameters: false
- predefined-parameters: |
- SLAVE_LABEL=$SLAVE_LABEL
- DISTRO=$DISTRO
- PROVISIONER_TYPE=$PROVISIONER_TYPE
- INSTALLER_TYPE=$INSTALLER_TYPE
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- ONAP_VERSION=$ONAP_VERSION
- ONAP_PROFILE=$ONAP_PROFILE
- TEST_TYPE=onap-healthcheck
- POD_NAME=$POD_NAME
- OPENSTACK_CLOUD_PROVIDER=$OPENSTACK_CLOUD_PROVIDER
- STACK_NAME=$STACK_NAME
- KEYPAIR_NAME=$KEYPAIR_NAME
- HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
- EXECUTION_MODE=$EXECUTION_MODE
- ENGINE_VERSION=$ENGINE_VERSION
- ENGINE_REFSPEC=$ENGINE_REFSPEC
- DEPLOY_SCENARIO_VERSION=$DEPLOY_SCENARIO_VERSION
- DEPLOY_SCENARIO_REFSPEC=$DEPLOY_SCENARIO_REFSPEC
- XTESTING_REPO_URL=$XTESTING_REPO_URL
- ENGINE_ANSIBLE_PARAMS=$ENGINE_ANSIBLE_PARAMS
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: false
-
-- job-template:
- name: 'onap-{onap-profile}-{environment-type}-{job-phase}-{distro}-{cloud}-{type}-{ci-loop}-{onap-branch}'
-
- disabled: false
-
- concurrent: true
-
- properties:
- - logrotate
-
- parameters:
- - onap-parameter-macro
-
- wrappers:
- - mask-passwords
- - build-timeout:
- timeout: '{build-timeout}'
- - fix-workspace-permissions
- - credentials-binding:
- - username-password-separated:
- credential-id: 'nordix-cicd-arm-credentials'
- username: NORDIX_ARM_USERNAME
- password: NORDIX_ARM_TOKEN
- - username-password-separated:
- credential-id: 'nordix-cicd-harbor-credentials'
- username: NORDIX_HARBOR_USERNAME
- password: NORDIX_HARBOR_PASSWORD
-
- scm:
- - git-scm:
- ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
- branch: '{nordix-branch}'
- refspec: ''
- wipe_workspace: true
- clean_before: false
-
- builders:
- - description-setter:
- description: $DEPLOY_SCENARIO | $ONAP_PROFILE
- - 'onap-{job-phase}-builder-macro'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
----
-#
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 Nordix Foundation.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-# macros used by all job types on cloud
-- parameter:
- name: 'onap-parameter-macro'
- parameters:
- - project-parameters:
- project: 'infra/engine'
- branch: 'master'
- - nordix-gerrit-parameters
- - label:
- name: SLAVE_LABEL
- default: 'engine-jumphost-online-ubuntu1804-fra'
- description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
- - string:
- name: PROVISIONER_TYPE
- default: 'heat'
- description: 'Provisioner to use for provisioning nodes'
- - string:
- name: INSTALLER_TYPE
- default: 'kubespray'
- description: 'Installer to use for deploying the scenario'
- - string:
- name: DEPLOY_SCENARIO
- default: 'k8-calico-onap'
- description: 'Scenario to deploy and test'
- - string:
- name: DEPLOY_TYPE
- default: 'cloud'
- description: 'Type of the deployment'
- - string:
- name: DISTRO
- default: 'ubuntu1804'
- description: 'Distribution to use for configuring target nodes (networking etc.)'
- - string:
- name: ONAP_VERSION
- default: '{onap-version}'
- description: 'ONAP version to deploy'
- - string:
- name: ONAP_PROFILE
- default: 'sdc'
- description: 'ONAP profile to deploy - could be sdc or so.'
- - string:
- name: OPENSTACK_CLOUD_PROVIDER
- default: 'city'
- description: 'Name of the cloud where this job is run'
- - string:
- name: STACK_NAME
- default: 'nordix-cicd-k8-calico-onap-sdc-master'
- description: 'Stack to create'
- - string:
- name: KEYPAIR_NAME
- default: 'keypair-nordix-cicd-k8-calico-onap-sdc-master'
- description: 'Keypair to create and use'
- - string:
- name: HEAT_ENVIRONMENT_FILENAME
- default: 'heat-environment-city-ubuntu1804-sdc.yaml'
- description: 'Heat environment file to use'
- - string:
- name: EXECUTION_MODE
- default: 'online-deployment'
- description: 'Engine execution mode - could be online-deployment or offline-deployment'
- - string:
- name: ENGINE_VERSION
- default: 'master'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Could be sha, branch'
- - string:
- name: ENGINE_REFSPEC
- default: 'master'
- description: 'Development purposes only! Nordix Cloud Infra Engine version to use for deploying ONAP. Must be refspec.'
- - string:
- name: DEPLOY_SCENARIO_VERSION
- default: 'master'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_REFSPEC and could be sha, branch.'
- - string:
- name: DEPLOY_SCENARIO_REFSPEC
- default: 'master'
- description: 'Development purposes only! Nordix Cloud Infra Scenario version to use for deploying ONAP. Depends on DEPLOY_SCENARIO_VERSION and must be refspec.'
- - string:
- name: POD_NAME
- default: 'none'
- description: 'Development purposes only! Set to none for disabling test results DB reporting.'
- - string:
- name: TEST_TYPE
- default: 'oom-healthcheck'
- description: 'Test type to run. Could be oom-healthcheck or onap-healthcheck'
- - string:
- name: NORDIX_ARM_REPO_URL
- default: 'https://artifactory.nordix.org/artifactory'
- description: 'URL to Nordix Artifactory'
- - string:
- name: NORDIX_HARBOR_REPO_URL
- default: 'registry.nordix.org'
- description: 'URL to Nordix Harbor'
- - string:
- name: XTESTING_REPO_URL
- default: 'https://gerrit.nordix.org/opnfv/xtesting-onap.git'
- description: 'URL to Nordix xtesting-onap repository'
- - string:
- name: ENGINE_ANSIBLE_PARAMS
- default: ''
- description: 'Extra parameters that can be added when run the play books.'
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o nounset
-set -o errexit
-set -o pipefail
-
-echo "Deployment is not enabled yet!"
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o nounset
-set -o errexit
-set -o pipefail
-
-echo "Testing is not enabled yet!"
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o nounset
-set -o errexit
-set -o pipefail
-
-echo "Testing is not enabled yet!"
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o nounset
-set -o errexit
-set -o pipefail
-
-echo "Deployment is not enabled yet!"
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o nounset
-set -o errexit
-set -o pipefail
-
-echo "Promotion is not enabled yet!"
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-
-set -o nounset
-set -o errexit
-set -o pipefail
-
-# NOTE (fdegir): we need to remove $WORKSPACE and clone infra/engine repository
-# as infra/engine is what drives the deployment
-if [[ "$GERRIT_PROJECT" != "infra/engine" ]]; then
- cd "$HOME" && /bin/rm -rf "$WORKSPACE"
- echo "Info : Cloning infra/engine repository"
- git clone -q https://gerrit.nordix.org/infra/engine.git "$WORKSPACE"
- cd "$WORKSPACE"
- # TODO (fdegir): this is temporarily here to develop the jobs
- git fetch "https://gerrit.nordix.org/infra/engine" refs/changes/23/4823/18 && git checkout FETCH_HEAD
-fi
-
-# file to record change metadata
- export CHANGE_METADATA_FILE="$WORKSPACE/change.properties"
-/bin/rm -f "$CHANGE_METADATA_FILE"
-
-echo "Info : Generating change metadata"
-
-# determine the project
-# this scripts is used by all engine repos so we need to determine what this change is for
-export ENGINE_COMPONENT="${GERRIT_PROJECT//*\//}"
-
-echo "Info : Setting STACK_TYPE and STACK_VERSION"
-if [[ "$GERRIT_PROJECT" =~ /stack/ ]]; then
- # set vars
- export STACK_TYPE="$ENGINE_COMPONENT"
- export STACK_VERSION="$GERRIT_PATCHSET_REVISION"
- export STACK_REFSPEC="$GERRIT_REFSPEC"
-
- # log info to console
- echo " STACK_TYPE=$STACK_TYPE"
- echo " STACK_VERSION=$GERRIT_PATCHSET_REVISION"
- echo " STACK_REFSPEC=$GERRIT_REFSPEC"
-
- # record vars to properties file
- echo "STACK_TYPE=$STACK_TYPE" >> "$CHANGE_METADATA_FILE"
- echo "STACK_VERSION=$STACK_VERSION" >> "$CHANGE_METADATA_FILE"
- echo "STACK_REFSPEC=$STACK_REFSPEC" >> "$CHANGE_METADATA_FILE"
-elif [[ "$GERRIT_PROJECT" =~ /installer/ ]]; then
- # set vars
- case "${ENGINE_COMPONENT}" in
- kolla)
- export STACK_TYPE="openstack"
- ;;
- kubespray)
- export STACK_TYPE="kubernetes"
- ;;
- oom)
- export STACK_TYPE="onap"
- ;;
- *) echo "ERROR : Invalid engine component $ENGINE_COMPONENT"; exit 1;;
- esac
- export STACK_VERSION="$GERRIT_BRANCH"
-
- # log info to console
- echo " STACK_TYPE=$STACK_TYPE"
- echo " STACK_VERSION=$STACK_VERSION"
- echo " NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_VERSION=$GERRIT_PATCHSET_REVISION"
- echo " NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_REFSPEC=$GERRIT_REFSPEC"
-
- # record vars to properties file
- echo "STACK_TYPE=$STACK_TYPE" >> "$CHANGE_METADATA_FILE"
- echo "STACK_VERSION=$STACK_VERSION" >> "$CHANGE_METADATA_FILE"
- echo "NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_VERSION=$GERRIT_PATCHSET_REVISION" >> "$CHANGE_METADATA_FILE"
- echo "NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_REFSPEC=$GERRIT_REFSPEC" >> "$CHANGE_METADATA_FILE"
-else
- # set vars
- export STACK_TYPE=kubernetes
- export STACK_VERSION=$GERRIT_BRANCH
-
- # log info to console
- echo " STACK_TYPE=$STACK_TYPE"
- echo " STACK_VERSION=$STACK_VERSION"
- echo " NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_VERSION=$GERRIT_PATCHSET_REVISION"
- echo " NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_REFSPEC=$GERRIT_REFSPEC"
-
- # record vars to properties file
- echo "STACK_TYPE=kubernetes" >> "$CHANGE_METADATA_FILE"
- echo "STACK_VERSION=$STACK_VERSION" >> "$CHANGE_METADATA_FILE"
- echo "NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_VERSION=$GERRIT_PATCHSET_REVISION" >> "$CHANGE_METADATA_FILE"
- echo "NORDIX_$(echo $ENGINE_COMPONENT | tr a-z A-Z)_REFSPEC=$GERRIT_REFSPEC" >> "$CHANGE_METADATA_FILE"
-fi
-
-# global vars
-export NORDIX_ARM_HTTPS_URL="https://artifactory.nordix.org/artifactory"
-export ARTIFACT_ARM_FOLDER="gerrit"
-export BUILD_IDENTIFIER=$GERRIT_CHANGE_NUMBER
-export INSTALLER_FILE="${STACK_TYPE}-ubuntu1804.bsx"
-export BUILD_ARTIFACTS="${STACK_TYPE}-ubuntu1804.bsx"
-export NORDIX_ARM_REPO="nordix-${STACK_TYPE}"
-export NORDIX_ARTIFACT_URL="$NORDIX_ARM_HTTPS_URL/$NORDIX_ARM_REPO/installer/oss/$ARTIFACT_ARM_FOLDER/$BUILD_IDENTIFIER"
-
-cat << EOF >> "$CHANGE_METADATA_FILE"
-BUILD_IDENTIFIER=$BUILD_IDENTIFIER
-BUILD_DATE=$(date '+%Y%m%d%H%M')
-BUILT_BY=$BUILD_URL
-CI_LOOP=$CI_LOOP
-ENGINE_SHA=$(git rev-parse HEAD)
-INSTALLER_FILE=${STACK_TYPE}-ubuntu1804.bsx
-BUILD_ARTIFACTS=${STACK_TYPE}-ubuntu1804.bsx
-NORDIX_ARM_REPO=nordix-${STACK_TYPE}
-NORDIX_ARTIFACT_URL=$NORDIX_ARTIFACT_URL
-EOF
-
-echo "Info : Change metadata"
-echo "-------------------------------------------------------------------------"
-cat "$CHANGE_METADATA_FILE"
-echo "-------------------------------------------------------------------------"
-
-# vim: set ts=2 sw=2 expandtab:
+++ /dev/null
-#!/bin/bash
-
-# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
-
-set -o nounset
-set -o errexit
-set -o pipefail
-
-if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
- cd /tmp
- URL_TO_UPLOAD=$NORDIX_ARM_HTTPS_URL/$NORDIX_ARM_REPO/installer/oss/release/latest
- for ARTIFACT_TO_UPLOAD in $ARTIFACTS_TO_UPLOAD; do
- echo "Info : Generating checksums for $ARTIFACT_TO_UPLOAD"
- ARTIFACT_MD5SUM=$(md5sum $ARTIFACT_TO_UPLOAD | cut -d' ' -f1)
- ARTIFACT_SHASUM=$(shasum $ARTIFACT_TO_UPLOAD | cut -d' ' -f1)
- ARTIFACT_SHA256SUM=$(sha256sum $ARTIFACT_TO_UPLOAD | cut -d' ' -f1)
-
- echo "Info : Promoting $ARTIFACT_TO_UPLOAD"
- curl -s -S \
- -H "X-JFrog-Art-Api:$NORDIX_ARM_TOKEN" \
- -H "X-Checksum-MD5:$ARTIFACT_MD5SUM" \
- -H "X-Checksum-Sha1:$ARTIFACT_SHASUM" \
- -H "X-Checksum-Sha256:$ARTIFACT_SHA256SUM" \
- -T $ARTIFACT_TO_UPLOAD \
- "$URL_TO_UPLOAD/$ARTIFACT_TO_UPLOAD"
- echo "Info : Artifact $ARTIFACT_TO_UPLOAD is available on $URL_TO_UPLOAD/$ARTIFACT_TO_UPLOAD"
- done
-else
- echo "Info : Online deployment. No artifact to upload."
-fi
name: 'handlebooking-macro'
builders:
- shell:
- !include-raw: ../cloud-infra/wait-for-pkg-manager.sh
+ !include-raw: ../cloud-infra/scripts/wait-for-pkg-manager.sh
- shell: |
#!/bin/bash
/bin/rm -f /tmp/openrc
name: 'deletebooking-macro'
builders:
- shell:
- !include-raw: ../cloud-infra/wait-for-pkg-manager.sh
+ !include-raw: ../cloud-infra/scripts/wait-for-pkg-manager.sh
- shell: |
#!/bin/bash
/bin/rm -f /tmp/openrc
-#!/bin/bash
-
+---
# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
+# Copyright (C) 2019 Nordix Foundation.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
#
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================
+#
-echo "Hello world!"
+# this job gets triggered when push-upstream is commented on a change on Nordix Gerrit.
+- project:
+ name: ccsdk-oran-push-upstream
+ project: ccsdk/oran
+ project-name: ccsdk-oran
-# vim: set ts=2 sw=2 expandtab:
+ jobs:
+ - 'onap-{project-name}-push-upstream'
-#!/bin/bash
-
+---
# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
+# Copyright (C) 2019 Nordix Foundation.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
#
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================
+#
-set -o errexit
-set -o nounset
-
-echo "Info: Cloning infra/test repository"
-cd $HOME && /bin/rm -rf $WORKSPACE
-git clone -q $TEST_REPO_URL $WORKSPACE
+# this job gets triggered when a change is merged to
+# ccsdk/oran project on ONAP Gerrit.
+- project:
+ name: ccsdk-oran-rebase
+ project: ccsdk/oran
+ project-name: ccsdk-oran
-# vim: set ts=2 sw=2 expandtab:
+ jobs:
+ - 'onap-{project-name}-rebase'
-#!/bin/bash
-
+---
# ============LICENSE_START=======================================================
-# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
+# Copyright (C) 2019 Nordix Foundation.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
#
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================
+#
+# this job gets triggered when a change is proposed to
+# ccsdk/oran project on Nordix Gerrit.
+- project:
+
+ name: ccsdk-oran-verify
-set -o nounset
-set -o errexit
-set -o pipefail
+ project: ccsdk/oran
-source "$WORKSPACE/change.properties"
-echo "Info : Packaging stack $STACK_TYPE"
+ project-name: ccsdk-oran
-cd "$WORKSPACE/engine"
-./package.sh -s "$STACK_TYPE" -v "$STACK_VERSION" -d
+ stream:
+ - master:
+ branch: '{stream}'
-# vim: set ts=2 sw=2 expandtab:
+ jobs:
+ - 'onap-{project-name}-{stream}-verify-java'