From: afenner Date: Fri, 16 Dec 2022 09:24:32 +0000 (+0000) Subject: remove Infra Engine jobs X-Git-Url: https://gerrit.nordix.org/gitweb?a=commitdiff_plain;h=3fa424ba400bbb0dc2de702b8da49e14e3b913fe;p=infra%2Fcicd.git remove Infra Engine jobs Also removing noLabs jobs as they are also not used and depended on infra-engine Change-Id: I8794fbbcca8fdb0981a7c9be0fdef798efdb5b45 Signed-off-by: afenner --- diff --git a/jjb/cloud-infra/common/cloud-infra-cleanup-stacks.yaml b/jjb/cloud-infra/common/cloud-infra-cleanup-stacks.yaml deleted file mode 100644 index 0516b56ef..000000000 --- a/jjb/cloud-infra/common/cloud-infra-cleanup-stacks.yaml +++ /dev/null @@ -1,74 +0,0 @@ ---- -# ============LICENSE_START======================================================= -# Copyright (C) 2020 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========================================================= - -# A project to remove any CI stacks that are left overnight. The domain -# reason they would be left is for troubleshooting where the -# DELETE_STACK option was set to false -- project: - name: 'cloud-infra-cleanup-stacks' - - project: 'cloud-infra-cleanup-stacks' - - cloud: - - city: - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - - jobs: - - 'cloud-infra-cleanup-stack-{cloud}' - -- job-template: - name: 'cloud-infra-cleanup-stack-{cloud}' - - disabled: '{obj:disabled}' - - concurrent: false - - parameters: - - label: - name: SLAVE_LABEL - default: "engine-package-ubuntu1804-fra" - description: "tieing to specific cloud-infra slave so it doesn't end up on another openstack slave randomly" - - string: - name: STACK_START_STR - default: "nordix-cicd-" - description: "A pattern of stack names to search for" - - string: - name: TIMETOLIVE - default: "180" - description: "Don't delete stacks created in this timeframe of minutes" - properties: - - logrotate - - triggers: - - timed: "@midnight" - - wrappers: - - build-timeout: - timeout: 180 - - credentials-binding: - - file: - credential-id: '{openrc-credentials-file}' - variable: OPENRC_FILE - - mask-passwords - - openstack: - single-use: True - - builders: - - 'wait-pkg-mgr-macro' - - 'cloud-infra-cleanup-stack-macro' diff --git a/jjb/cloud-infra/engine-jobs/engine-verify-deploy-test.yaml b/jjb/cloud-infra/engine-jobs/engine-verify-deploy-test.yaml deleted file mode 100644 index 164c67932..000000000 --- a/jjb/cloud-infra/engine-jobs/engine-verify-deploy-test.yaml +++ /dev/null @@ -1,337 +0,0 @@ ---- -# ============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: 'engine-verify-deploy-test' - - project: 'engine-verify-deploy-test' - - 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 - - functest - - type: - - virtual: - provisioner-type: 'bifrost' - slave-type: 'vpod' - gated-projects: 'infra/engine|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' - - cloud: - 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-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: - - ubuntu1804 - - cloud: - - city: - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - - dependency-jobs: 'engine-verify-package-{distro}-{stream}' - dependency-job-var: 'TRIGGER_engine_verify_package_{distro}_{stream}_BUILD_RESULT' - - jobs: - - 'engine-verify-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - 'engine-verify-{environment-type}-{phase}-{distro}-{cloud}-{type}-{stream}' - -- job-template: - name: 'engine-verify-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - 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' - 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-engine-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER" - description: 'Name of the created stack' - - string: - name: KEYPAIR_NAME - default: "keypair-nordix-cicd-verify-engine-{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: - - 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' - - multijob: - name: "{environment-type} deployment on {type} instances" - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'engine-verify-{environment-type}-deploy-{distro}-city-{type}-master' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/change.properties - - multijob: - name: "{environment-type} testing on {type} instances" - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'engine-verify-{environment-type}-functest-{distro}-city-{type}-master' - current-parameters: true - git-revision: false - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/change.properties - - publishers: - - postbuildscript: - builders: - - role: SLAVE - build-on: - - SUCCESS - - FAILURE - - ABORTED - - NOT_BUILT - - UNSTABLE - build-steps: - - 'wait-pkg-mgr-macro' - - 'delete-stack-macro' - -- job-template: - name: 'engine-verify-{environment-type}-{phase}-{distro}-{cloud}-{type}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - - scm: - - git-scm-gerrit: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: $GERRIT_BRANCH - refspec: $GERRIT_REFSPEC - wipe_workspace: true - clean_before: false - - wrappers: - - 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 - - fix-workspace-permissions - - builders: - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'download-{phase}-artifact-macro' - - '{phase}-macro' diff --git a/jjb/cloud-infra/engine-jobs/engine-verify-package.yaml b/jjb/cloud-infra/engine-jobs/engine-verify-package.yaml deleted file mode 100644 index f58c35c06..000000000 --- a/jjb/cloud-infra/engine-jobs/engine-verify-package.yaml +++ /dev/null @@ -1,171 +0,0 @@ ---- -# ============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: 'engine-verify-package' - - project: 'engine-verify-package' - - stream: - - 'master': - branch: '{stream}' - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - execution-mode: 'packaging' - gated-projects: 'infra/engine|infra/provisioner/bifrost|infra/provisioner/heat' - successful: false - failed: false - unstable: false - notbuilt: false - deploy-scenario: 'k8-calico-nofeature' - - distro: - - ubuntu1804 - - dependency-jobs: 'engine-verify-tox-{stream}' - dependency-job-var: 'TRIGGER_engine_verify_tox_{stream}_BUILD_RESULT' - - jobs: - - 'engine-verify-package-{distro}-{stream}' - -- job-template: - name: 'engine-verify-package-{distro}-{stream}' - - disabled: '{obj:disabled}' - - 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' - - label: - name: SLAVE_LABEL - default: 'engine-package-{distro}-fra' - description: 'Slave label to schedule this job on.' - - 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 - - ssh-agent-credentials: - users: - - 'city-nordix-jenkins-ssh' - - builders: - - 'generate-change-metadata-macro' - - inject: - properties-file: "$WORKSPACE/change.properties" - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'package-macro' - - 'upload-artifact-macro' diff --git a/jjb/cloud-infra/engine-jobs/engine-verify-tox.yaml b/jjb/cloud-infra/engine-jobs/engine-verify-tox.yaml deleted file mode 100644 index 8fa11abad..000000000 --- a/jjb/cloud-infra/engine-jobs/engine-verify-tox.yaml +++ /dev/null @@ -1,179 +0,0 @@ ---- -# ============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: 'engine-tox' - - project: 'engine-tox' - - stream: - - 'master': - branch: '{stream}' - gated-projects: 'infra/engine|infra/hwconfig|infra/test|infra/provisioner/bifrost|infra/provisioner/heat' - - lint-type: - - ansible-lint: - disabled: false - repos-to-ignore: 'infra/hwconfig' - - docs: - disabled: false - repos-to-ignore: 'infra/hwconfig|infra/test|infra/provisioner/bifrost|infra/provisioner/heat' - - shellcheck: - disabled: false - repos-to-ignore: 'infra/hwconfig' - - yamllint: - disabled: false - repos-to-ignore: '' - - jobs: - - 'engine-verify-tox-{stream}' - - 'engine-verify-{lint-type}-{stream}' - -- job-template: - name: 'engine-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: 'engine-verify-ansible-lint-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - - name: 'engine-verify-shellcheck-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - - name: 'engine-verify-yamllint-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - - name: 'engine-verify-docs-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - -- job-template: - name: 'engine-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: diff --git a/jjb/cloud-infra/engine-macros.yaml b/jjb/cloud-infra/engine-macros.yaml deleted file mode 100644 index 767607287..000000000 --- a/jjb/cloud-infra/engine-macros.yaml +++ /dev/null @@ -1,185 +0,0 @@ ---- -# ============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 are used to avoid hitting parameter expansion of curly brackets and -# the need to using include-raw-escape -#------------------------------------------------------------------------------- -- builder: - name: 'tox-macro' - builders: - - shell: - !include-raw: ./scripts/tox.sh - -- builder: - name: 'generate-sdf-for-change-macro' - builders: - - shell: - !include-raw: ./scripts/generate-sdf-for-change.sh - -- builder: - name: 'generate-ssh-keypair-macro' - builders: - - shell: - !include-raw: ./scripts/generate-ssh-keypair.sh - -- builder: - name: 'package-macro' - builders: - - shell: - !include-raw: ./scripts/package.sh - -- builder: - name: 'test-package-macro' - builders: - - shell: - !include-raw: ./scripts/test-package.sh - -- builder: - name: 'upload-artifact-macro' - builders: - - shell: - !include-raw: ./scripts/upload-artifact.sh - -- builder: - name: 'xtesting-upload-artifact-macro' - builders: - - shell: - !include-raw: ./scripts/upload-xtesting-artifact.sh - -- builder: - name: 'download-deploy-artifact-macro' - builders: - - shell: - !include-raw: ./scripts/download-deploy-artifact.sh - -- builder: - name: 'download-xtesting-artifact-macro' - builders: - - shell: - !include-raw: ./scripts/download-xtesting-artifact.sh - -- builder: - name: 'download-functest-artifact-macro' - builders: - - shell: - !include-raw: ./scripts/download-functest-artifact.sh - -- builder: - name: 'download-yardstick-artifact-macro' - builders: - - shell: - !include-raw: ./scripts/download-yardstick-artifact.sh - -- builder: - name: 'deploy-macro' - builders: - - shell: - !include-raw: ./scripts/deploy.sh - -- builder: - name: 'functest-macro' - builders: - - shell: - !include-raw: ./scripts/functest.sh - -- builder: - name: 'yardstick-macro' - builders: - - shell: - !include-raw: ./scripts/yardstick.sh - -- builder: - name: 'delete-stack-macro' - builders: - - shell: - !include-raw: ./scripts/delete-heat-stack.sh - -- builder: - name: 'cloud-infra-cleanup-stack-macro' - builders: - - shell: - !include-raw: ./scripts/cleanup-heat-stacks.sh - -- builder: - name: 'wait-pkg-mgr-macro' - builders: - - shell: - !include-raw: ./scripts/wait-for-pkg-manager.sh - -- builder: - name: 'generate-build-metadata-macro' - builders: - - shell: - !include-raw: ./scripts/generate-build-metadata.sh - -- builder: - name: 'generate-change-metadata-macro' - builders: - - 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: 'generate-k8sdeployment-environment-macro' - builders: - - shell: - !include-raw: ./scripts/generate-k8sdeployment-environment.sh - -- builder: - name: 'promote-macro' - builders: - - shell: - !include-raw: ./scripts/promote.sh - -- builder: - name: 'xtesting-infra-healthcheck-macro' - builders: - - shell: - !include-raw: ./scripts/xtesting-infra-healthcheck.sh - -- builder: - name: 'xtesting-healthcheck-macro' - builders: - - shell: - !include-raw: ./scripts/xtesting-healthcheck.sh - -- builder: - name: 'oom-build-installdeps-macro' - builders: - - shell: - !include-raw: ./scripts/oom-build-installdeps.sh - -- builder: - name: 'oom-build-wrapper-macro' - builders: - - shell: - !include-raw: ./scripts/oom-build-wrapper.sh - -- builder: - name: 'oom-upload-macro' - builders: - - shell: - !include-raw: ./scripts/oom-upload.sh - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/ironic-jobs/ironic-release-jobs.yaml b/jjb/cloud-infra/ironic-jobs/ironic-release-jobs.yaml deleted file mode 100644 index 0be5d003b..000000000 --- a/jjb/cloud-infra/ironic-jobs/ironic-release-jobs.yaml +++ /dev/null @@ -1,329 +0,0 @@ ---- -# ============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-ubuntu1804-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-deploy-artifact-macro' - - 'deploy-macro' - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/ironic-jobs/ironic-verify-package.yaml b/jjb/cloud-infra/ironic-jobs/ironic-verify-package.yaml deleted file mode 100644 index efd86f27e..000000000 --- a/jjb/cloud-infra/ironic-jobs/ironic-verify-package.yaml +++ /dev/null @@ -1,172 +0,0 @@ ---- -# ============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-ubuntu1804-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: STACK_TYPE - default: 'ironic' - description: 'Stack type to verify change with' - - 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' diff --git a/jjb/cloud-infra/ironic-jobs/ironic-verify-provision.yaml b/jjb/cloud-infra/ironic-jobs/ironic-verify-provision.yaml deleted file mode 100644 index 91d5efff4..000000000 --- a/jjb/cloud-infra/ironic-jobs/ironic-verify-provision.yaml +++ /dev/null @@ -1,273 +0,0 @@ ---- -# ============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}-ubuntu1804-fra' - description: 'Slave label to schedule this job on.' - - string: - name: STACK_TYPE - default: 'ironic' - description: 'Stack type to verify change with' - - 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-deploy-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' diff --git a/jjb/cloud-infra/ironic-jobs/ironic-verify-tox.yaml b/jjb/cloud-infra/ironic-jobs/ironic-verify-tox.yaml deleted file mode 100644 index 926df5cb5..000000000 --- a/jjb/cloud-infra/ironic-jobs/ironic-verify-tox.yaml +++ /dev/null @@ -1,172 +0,0 @@ ---- -# ============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: diff --git a/jjb/cloud-infra/kubernetes-jobs/kubernetes-release-deploy-test.yaml b/jjb/cloud-infra/kubernetes-jobs/kubernetes-release-deploy-test.yaml deleted file mode 100644 index b7d2fef53..000000000 --- a/jjb/cloud-infra/kubernetes-jobs/kubernetes-release-deploy-test.yaml +++ /dev/null @@ -1,213 +0,0 @@ ---- -# ============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_20': - branch: '1.20' - deploy-scenario: 'k8-multus-plugins' - - '1_19': - branch: '1.19' - 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 - - 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-deploy-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 - -- 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' diff --git a/jjb/cloud-infra/kubernetes-jobs/kubernetes-release-jobs.yaml b/jjb/cloud-infra/kubernetes-jobs/kubernetes-release-jobs.yaml deleted file mode 100644 index 311466bec..000000000 --- a/jjb/cloud-infra/kubernetes-jobs/kubernetes-release-jobs.yaml +++ /dev/null @@ -1,273 +0,0 @@ ---- -# ============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-release' - - project: 'kubernetes-release' - - stream: - - 'master': - branch: 'master' - deploy-scenario: 'k8-multus-plugins' - promote-stack: 'false' - - '1_20': - branch: '1.20' - deploy-scenario: 'k8-multus-plugins' - promote-stack: 'true' - - '1_19': - branch: '1.19' - deploy-scenario: 'k8-multus-plugins' - promote-stack: 'true' - - '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: - - offline: - disabled: false - execution-mode: offline-deployment - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - - distro: - - ubuntu1804 - - jobs: - - 'kubernetes-release-{distro}-{stream}' - - 'kubernetes-package-{distro}-{stream}' - - 'kubernetes-promote-{distro}-{stream}' - -- job-template: - name: 'kubernetes-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: 'kubernetes' - 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_KUBESPRAY_VERSION - default: '{branch}' - description: 'Kubespray 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: 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 - # 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: 'kubernetes-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: Release Test {deploy-scenario} - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'kubernetes-release-offline-deploy-test-{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: 'kubernetes-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: 'kubernetes-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: 'kubernetes-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' diff --git a/jjb/cloud-infra/kubernetes-jobs/kubernetes-verify-deploy-test.yaml b/jjb/cloud-infra/kubernetes-jobs/kubernetes-verify-deploy-test.yaml deleted file mode 100644 index 223597f02..000000000 --- a/jjb/cloud-infra/kubernetes-jobs/kubernetes-verify-deploy-test.yaml +++ /dev/null @@ -1,369 +0,0 @@ ---- -# ============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-verify-deploy-test' - - project: 'kubernetes-verify-deploy-test' - - # NOTE (fdegir): dot is not an allowed character in groovy var names and also for - # naming openstack objects so stream is used for that purpose but branch points to - # actual branch name on gerrit - stream: - - 'master': - branch: 'master' - deploy-scenario: 'k8-multus-plugins' - - '1_20': - branch: '1.20' - deploy-scenario: 'k8-multus-plugins' - - '1_19': - branch: '1.19' - 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: - 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 - - functest - - type: - - virtual: - provisioner-type: 'bifrost' - slave-type: 'vpod' - gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray' - 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' - - cloud: - 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-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: - - ubuntu1804 - - cloud: - - city: - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - - dependency-jobs: 'kubernetes-verify-package-{distro}-{stream}' - dependency-job-var: 'TRIGGER_kubernetes_verify_package_{distro}_{stream}_BUILD_RESULT' - - jobs: - - 'kubernetes-verify-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - 'kubernetes-verify-{environment-type}-{phase}-{distro}-{cloud}-{type}-{stream}' - -- job-template: - name: 'kubernetes-verify-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - project-type: multijob - - 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-kubernetes-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER" - description: 'Name of the created stack' - - string: - name: KEYPAIR_NAME - default: "keypair-nordix-cicd-verify-kubernetes-{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' - - string: - name: ROOK_FS - default: 'true' - description: 'Whether to deploy csi-cephfs storageclass.' - - 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: - - 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 - - ssh-agent-credentials: - users: - - 'nordixinfra-nordix-gerrit-ssh' - - builders: - - 'generate-change-metadata-macro' - - multijob: - name: "{environment-type} deployment on {type} instances" - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'kubernetes-verify-{environment-type}-deploy-{distro}-city-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/change.properties - enable-condition: - !include-raw: '../scripts/k8s-job-enable-condition.gvy' - - multijob: - name: "{environment-type} testing on {type} instances" - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'kubernetes-verify-{environment-type}-functest-{distro}-city-{type}-{stream}' - current-parameters: true - git-revision: false - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/change.properties - enable-condition: - !include-raw: '../scripts/k8s-job-enable-condition.gvy' - - publishers: - - postbuildscript: - builders: - - role: SLAVE - build-on: - - SUCCESS - - FAILURE - - ABORTED - - NOT_BUILT - - UNSTABLE - build-steps: - - 'wait-pkg-mgr-macro' - - 'delete-stack-macro' - -- job-template: - name: 'kubernetes-verify-{environment-type}-{phase}-{distro}-{cloud}-{type}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - - scm: - - git-scm-gerrit: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: $GERRIT_BRANCH - refspec: $GERRIT_REFSPEC - wipe_workspace: true - clean_before: false - - wrappers: - - 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 - - fix-workspace-permissions - - builders: - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'download-{phase}-artifact-macro' - - '{phase}-macro' diff --git a/jjb/cloud-infra/kubernetes-jobs/kubernetes-verify-package.yaml b/jjb/cloud-infra/kubernetes-jobs/kubernetes-verify-package.yaml deleted file mode 100644 index 0bfd734c7..000000000 --- a/jjb/cloud-infra/kubernetes-jobs/kubernetes-verify-package.yaml +++ /dev/null @@ -1,235 +0,0 @@ ---- -# ============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-verify-package' - - project: 'kubernetes-verify-package' - - # NOTE (fdegir): dot is not an allowed character in groovy var names and also for - # naming openstack objects so stream is used for that purpose but branch points to - # actual branch name on gerrit - stream: - - 'master': - branch: 'master' - 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_20': - branch: '1.20' - 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_19': - branch: '1.19' - 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_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' - 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_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' - execution-mode: 'packaging' - gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray' - successful: false - failed: false - unstable: false - notbuilt: false - deploy-scenario: 'k8-calico-nofeature' - - distro: - - ubuntu1804 - - dependency-jobs: 'kubernetes-verify-tox-{stream}' - dependency-job-var: 'TRIGGER_kubernetes_verify_tox_{stream}_BUILD_RESULT' - - jobs: - - 'kubernetes-verify-package-{distro}-{stream}' - -- job-template: - name: 'kubernetes-verify-package-{distro}-{stream}' - - disabled: '{obj:disabled}' - - 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' - - label: - name: SLAVE_LABEL - default: 'engine-package-{distro}-fra' - description: 'Slave label to schedule this job on.' - - 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 - - ssh-agent-credentials: - users: - - 'nordixinfra-nordix-gerrit-ssh' - - - builders: - - 'generate-change-metadata-macro' - - inject: - properties-file: "$WORKSPACE/change.properties" - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'package-macro' - - 'upload-artifact-macro' diff --git a/jjb/cloud-infra/kubernetes-jobs/kubernetes-verify-tox.yaml b/jjb/cloud-infra/kubernetes-jobs/kubernetes-verify-tox.yaml deleted file mode 100644 index 115e12264..000000000 --- a/jjb/cloud-infra/kubernetes-jobs/kubernetes-verify-tox.yaml +++ /dev/null @@ -1,193 +0,0 @@ ---- -# ============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-tox' - - project: 'kubernetes-tox' - - # NOTE (fdegir): dot is not an allowed character in groovy var names and also for - # naming openstack objects so stream is used for that purpose but branch points to - # actual branch name on gerrit - stream: - - 'master': - branch: 'master' - gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray' - - '1_20': - branch: '1.20' - gated-projects: 'infra/stack/kubernetes|infra/installer/kubespray' - - '1_19': - branch: '1.19' - 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' - - lint-type: - - ansible-lint: - disabled: false - repos-to-ignore: '' - - shellcheck: - disabled: false - repos-to-ignore: '' - - yamllint: - disabled: false - repos-to-ignore: '' - - jobs: - - 'kubernetes-verify-tox-{stream}' - - 'kubernetes-verify-{lint-type}-{stream}' - -- job-template: - name: 'kubernetes-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: 'kubernetes-verify-ansible-lint-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - - name: 'kubernetes-verify-shellcheck-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - - name: 'kubernetes-verify-yamllint-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - -- job-template: - name: 'kubernetes-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: diff --git a/jjb/cloud-infra/onap-jobs/onap-release-deploy-test.yaml b/jjb/cloud-infra/onap-jobs/onap-release-deploy-test.yaml deleted file mode 100644 index d6a89a79d..000000000 --- a/jjb/cloud-infra/onap-jobs/onap-release-deploy-test.yaml +++ /dev/null @@ -1,399 +0,0 @@ ---- -# ============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: 'onap-release-deploy-test' - - project: 'onap-release-deploy-test' - - stream: - - 'master': - branch: '{stream}' - k8s-version: '1.15' - deploy-scenario: 'onap-full-nofeature' - - 'guilin': - branch: '{stream}' - k8s-version: '1.15' - deploy-scenario: 'onap-full-nofeature' - - 'frankfurt': - branch: '{stream}' - k8s-version: '1.15' - deploy-scenario: 'onap-sdc-nofeature' - - 'elalto': - branch: '{stream}' - k8s-version: '1.15' - deploy-scenario: 'onap-sdc-nofeature' - - environment-type: - - offline: - disabled: false - execution-mode: offline-deployment - - phase: - - deploy - - test - - - type: - - cloud: - 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-ci-city-ubuntu1804-onap.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: - - ubuntu1804 - - cloud: - - city: - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - jobs: - - 'onap-release-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - 'onap-release-{environment-type}-deploy-{distro}-{cloud}-{type}-{stream}' - - 'onap-release-{environment-type}-deployk8s-{distro}-{cloud}-{type}-{stream}' - - 'onap-release-{environment-type}-xtesting-infra-healthcheck-{distro}-{cloud}-{type}-{stream}' - - 'onap-release-{environment-type}-xtesting-healthcheck-{distro}-{cloud}-{type}-{stream}' - -- job-template: - name: 'onap-release-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - concurrent: true - - parameters: - - string: - name: DEPLOY_SCENARIO - default: '{deploy-scenario}' - description: 'Scenario to test change with.' - - string: - name: K8S_VERSION - default: '{k8s-version}' - description: 'K8S version to use for this deployment' - - string: - name: INVENTORY_INI - default: /tmp/inventory.ini - description: 'Location of the inventory file. Copied from k8s install' - - 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-onap-{environment-type}-{distro}-{stream}" - description: 'Name of the created stack' - - string: - name: KEYPAIR_NAME - default: "keypair-nordix-cicd-verify-onap-{environment-type}-{distro}-{stream}" - 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: DELETE_STACK - default: 'false' - 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: - url: https://gerrit.nordix.org/infra/engine.git - branches: - - master - timeout: 15 - wipe-workspace: true - wrappers: - - build-timeout: - timeout: 600 - - 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: - - 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-k8sdeployment-environment-macro' - - multijob: - name: "{environment-type} deployment on {type} instances" - condition: SUCCESSFUL - execution-type: SEQUENTIALLY - projects: - - name: 'onap-release-{environment-type}-deployk8s-{distro}-{cloud}-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/k8s.properties - - name: 'onap-release-{environment-type}-deploy-{distro}-{cloud}-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - - multijob: - name: xTesting for infra-healthcheck and healthcheck - condition: ALWAYS - execution-type: SEQUENTIALLY - projects: - - name: 'onap-release-{environment-type}-xtesting-infra-healthcheck-{distro}-{cloud}-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - - name: 'onap-release-{environment-type}-xtesting-healthcheck-{distro}-{cloud}-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - publishers: - - postbuildscript: - builders: - - role: SLAVE - build-on: - - SUCCESS - - FAILURE - - ABORTED - - NOT_BUILT - - UNSTABLE - build-steps: - - 'wait-pkg-mgr-macro' - - 'delete-stack-macro' - -- job-template: - name: 'onap-release-{environment-type}-deploy-{distro}-{cloud}-{type}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - - wrappers: - - build-timeout: - timeout: 600 - - 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 - - fix-workspace-permissions - - builders: - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'download-deploy-artifact-macro' - - 'deploy-macro' - -- job-template: - name: 'onap-release-{environment-type}-deployk8s-{distro}-{cloud}-{type}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - wrappers: - - build-timeout: - timeout: 600 - - 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 - - fix-workspace-permissions - - builders: - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'download-deploy-artifact-macro' - - 'deploy-macro' - -- job-template: - name: 'onap-release-{environment-type}-xtesting-infra-healthcheck-{distro}-{cloud}-{type}-{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: 'xtesting' - description: 'Test framework to use' - - string: - name: TEST_SUITE - default: 'infra-healthcheck' - description: 'Test suite to run' - - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - wrappers: - - build-timeout: - timeout: 600 - - mask-passwords - - fix-workspace-permissions - - builders: - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'download-xtesting-artifact-macro' - - 'xtesting-infra-healthcheck-macro' - -- job-template: - name: 'onap-release-{environment-type}-xtesting-healthcheck-{distro}-{cloud}-{type}-{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: 'xtesting' - description: 'Test framework to use' - - string: - name: TEST_SUITE - default: 'healthcheck' - description: 'Test suite to run' - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - wrappers: - - build-timeout: - timeout: 600 - - mask-passwords - - fix-workspace-permissions - - builders: - - 'xtesting-healthcheck-macro' diff --git a/jjb/cloud-infra/onap-jobs/onap-release-jobs.yaml b/jjb/cloud-infra/onap-jobs/onap-release-jobs.yaml deleted file mode 100644 index c7c6a0ccc..000000000 --- a/jjb/cloud-infra/onap-jobs/onap-release-jobs.yaml +++ /dev/null @@ -1,340 +0,0 @@ ---- -# ============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: 'onap-release' - - project: 'ONAP-release' - - - stream: - - 'master': - branch: 'master' - oom_branch: 'master' - deploy-scenario: 'onap-full-nofeature' - k8s-version: 'master' - promote-stack: 'false' - container-tool: 'docker' - - 'guilin': - branch: 'guilin' - oom_branch: 'master' - deploy-scenario: 'onap-full-nofeature' - k8s-version: '1.15' - promote-stack: 'true' - container-tool: 'docker' - - 'frankfurt': - branch: 'frankfurt' - oom_branch: 'master' - deploy-scenario: 'onap-sdc-nofeature' - k8s-version: '1.15' - promote-stack: 'true' - container-tool: 'docker' - - 'elalto': - branch: 'elalto' - oom_branch: 'master' - deploy-scenario: 'onap-sdc-nofeature' - k8s-version: '1.15' - promote-stack: 'true' - container-tool: 'docker' - - environment-type: - - offline: - disabled: false - execution-mode: offline-deployment - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - - phase: - - deploy - - - type: - - cloud: - provisioner-type: 'heat' - slave-type: 'jumphost' - 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-onap.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: - - ubuntu1804 - - cloud: - - city: - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - - jobs: - - 'onap-release-{distro}-{stream}' - - 'onap-package-{distro}-{stream}' - - 'onap-test-package-{distro}-{stream}' - - 'onap-promote-{distro}-{stream}' - - - -- job-template: - name: 'onap-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: CONTAINER_TOOL - default: '{container-tool}' - description: 'Command to use when pulling images. Options docker or podman' - - 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: 'onap' - 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_OOM_VERSION - default: '{oom_branch}' - description: 'Stack version of oom 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: 'onap-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: Test Framework Packaging - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'onap-test-package-{distro}-{stream}' - current-parameters: false - git-revision: false - node-parameters: true - property-file: "$WORKSPACE/release.properties" - kill-phase-on: FAILURE - abort-all-job: true - - multijob: - name: Release Test {deploy-scenario} - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'onap-release-offline-deploy-test-{distro}-city-cloud-{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: 'onap-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: 'onap-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: 300 - - 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: 'onap-test-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: 300 - - 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/test.git - branches: - - master - timeout: 15 - wipe-workspace: true - - builders: - - 'test-package-macro' - - 'xtesting-upload-artifact-macro' - -- job-template: - name: 'onap-promote-{distro}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: false - - properties: - - logrotate - - wrappers: - - build-timeout: - timeout: 600 - - 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' diff --git a/jjb/cloud-infra/onap-jobs/onap-verify-deploy-test.yaml b/jjb/cloud-infra/onap-jobs/onap-verify-deploy-test.yaml deleted file mode 100644 index 5e8234f7e..000000000 --- a/jjb/cloud-infra/onap-jobs/onap-verify-deploy-test.yaml +++ /dev/null @@ -1,481 +0,0 @@ ---- -# ============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: 'onap-verify-deploy-test' - - project: 'onap-verify-deploy-test' - - stream: - - 'master': - branch: '{stream}' - k8s-version: 'master' - deploy-scenario: 'onap-full-nofeature' - - 'guilin': - branch: '{stream}' - k8s-version: '1.15' - deploy-scenario: 'onap-full-nofeature' - - 'frankfurt': - branch: '{stream}' - k8s-version: '1.15' - deploy-scenario: 'onap-sdc-nofeature' - - 'elalto': - branch: '{stream}' - k8s-version: '1.15' - deploy-scenario: 'onap-sdc-nofeature' - - environment-type: - - online: - disabled: false - execution-mode: online-deployment - successful: false - failed: false - unstable: false - notbuilt: false - - offline: - disabled: true - execution-mode: offline-deployment - successful: false - failed: false - unstable: false - notbuilt: false - - phase: - - deploy - - test - - - type: - - cloud: - 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-ci-city-ubuntu1804-onap.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: - - ubuntu1804 - - cloud: - - city: - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - - # This should be - dependency-jobs: 'onap-verify-tox-{stream}' - dependency-job-var: 'TRIGGER_onap_verify_tox_{stream}_BUILD_RESULT' - - jobs: - - 'onap-verify-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - 'onap-verify-{environment-type}-deploy-{distro}-{cloud}-{type}-{stream}' - - 'onap-verify-{environment-type}-deployk8s-{distro}-{cloud}-{type}-{stream}' - - 'onap-verify-{environment-type}-xtesting-infra-healthcheck-{distro}-{cloud}-{type}-{stream}' - - 'onap-verify-{environment-type}-xtesting-healthcheck-{distro}-{cloud}-{type}-{stream}' - - -- job-template: - name: 'onap-verify-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - concurrent: true - - parameters: - - string: - name: DEPLOY_SCENARIO - default: '{deploy-scenario}' - description: 'Scenario to test change with.' - - string: - name: K8S_VERSION - default: '{k8s-version}' - description: 'K8S version to use for this deployment' - - string: - name: INVENTORY_INI - default: /tmp/inventory.ini - description: 'Location of the inventory file. Copied from k8s install' - - 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: STACK_TYPE - default: 'onap' - description: 'Stack to package, deploy, test, release' - - 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-onap-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER" - description: 'Name of the created stack' - - string: - name: KEYPAIR_NAME - default: "keypair-nordix-cicd-verify-onap-{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: DELETE_STACK - default: 'false' - 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: - - build-timeout: - timeout: 600 - - ssh-agent-credentials: - users: - - 'nordixinfra-nordix-gerrit-ssh' - - 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' - - 'generate-k8sdeployment-environment-macro' - - multijob: - name: "{environment-type} deployment on {type} instances" - condition: SUCCESSFUL - execution-type: SEQUENTIALLY - projects: - - name: 'onap-verify-{environment-type}-deployk8s-{distro}-{cloud}-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/k8s.properties - - name: 'onap-verify-{environment-type}-deploy-{distro}-{cloud}-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/change.properties - - multijob: - name: xTesting for infra-healthcheck and healthcheck - condition: ALWAYS - projects: - - name: 'onap-verify-{environment-type}-xtesting-infra-healthcheck-{distro}-{cloud}-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/change.properties - - name: 'onap-verify-{environment-type}-xtesting-healthcheck-{distro}-{cloud}-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - publishers: - - postbuildscript: - builders: - - role: SLAVE - build-on: - - SUCCESS - - FAILURE - - ABORTED - - NOT_BUILT - - UNSTABLE - build-steps: - - 'wait-pkg-mgr-macro' - - 'delete-stack-macro' - -- job-template: - name: 'onap-verify-{environment-type}-deploy-{distro}-{cloud}-{type}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - - scm: - - git-scm-gerrit: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: $GERRIT_BRANCH - refspec: $GERRIT_REFSPEC - wipe_workspace: true - clean_before: false - - wrappers: - - build-timeout: - timeout: 600 - - 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 - - fix-workspace-permissions - - builders: - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'download-deploy-artifact-macro' - - 'deploy-macro' - -- job-template: - name: 'onap-verify-{environment-type}-deployk8s-{distro}-{cloud}-{type}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - - scm: - - git-scm-gerrit: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: $GERRIT_BRANCH - refspec: $GERRIT_REFSPEC - wipe_workspace: true - clean_before: false - - wrappers: - - build-timeout: - timeout: 600 - - 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 - - fix-workspace-permissions - - builders: - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'download-deploy-artifact-macro' - - 'deploy-macro' -- job-template: - name: 'onap-verify-{environment-type}-xtesting-infra-healthcheck-{distro}-{cloud}-{type}-{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: 'xtesting' - description: 'Test framework to use' - - string: - name: TEST_SUITE - default: 'infra-healthcheck' - description: 'Test suite to run' - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - wrappers: - - build-timeout: - timeout: 600 - - mask-passwords - - fix-workspace-permissions - - builders: - - 'download-xtesting-artifact-macro' - - 'xtesting-infra-healthcheck-macro' - -- job-template: - name: 'onap-verify-{environment-type}-xtesting-healthcheck-{distro}-{cloud}-{type}-{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: 'xtesting' - description: 'Test framework to use' - - string: - name: TEST_SUITE - default: 'healthcheck' - description: 'Test suite to run' - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - wrappers: - - build-timeout: - timeout: 600 - - mask-passwords - - fix-workspace-permissions - - builders: - - 'wait-pkg-mgr-macro' - - 'xtesting-healthcheck-macro' - diff --git a/jjb/cloud-infra/onap-jobs/onap-verify-package.yaml b/jjb/cloud-infra/onap-jobs/onap-verify-package.yaml deleted file mode 100644 index 37795ca04..000000000 --- a/jjb/cloud-infra/onap-jobs/onap-verify-package.yaml +++ /dev/null @@ -1,300 +0,0 @@ ---- -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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: 'onap-verify-package' - - project: 'onap-verify-package' - - stream: - - 'master': - branch: '{stream}' - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - execution-mode: 'packaging' - container-tool: 'docker' - gated-projects: 'infra/stack/onap|infra/installer/oom' - successful: false - failed: false - unstable: false - notbuilt: false - deploy-scenario: 'onap-full-nofeature' - - 'guilin': - branch: '{stream}' - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - execution-mode: 'packaging' - container-tool: 'docker' - gated-projects: 'infra/stack/onap|infra/installer/oom' - successful: false - failed: false - unstable: false - notbuilt: false - deploy-scenario: 'onap-full-nofeature' - - 'frankfurt': - branch: '{stream}' - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - execution-mode: 'packaging' - container-tool: 'docker' - gated-projects: 'infra/stack/onap|infra/installer/oom' - successful: false - failed: false - unstable: false - notbuilt: false - deploy-scenario: 'onap-full-nofeature' - - 'elalto': - branch: '{stream}' - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - execution-mode: 'packaging' - container-tool: 'docker' - gated-projects: 'infra/stack/onap|infra/installer/oom' - successful: false - failed: false - unstable: false - notbuilt: false - deploy-scenario: 'onap-full-nofeature' - distro: - - ubuntu1804 - - dependency-jobs: 'onap-verify-tox-{stream}' - dependency-job-var: 'TRIGGER_onap_verify_tox_{stream}_BUILD_RESULT' - - jobs: - - 'onap-verify-package-{distro}-{stream}' - - 'onap-verify-packaging-{distro}-{stream}' - - 'onap-verify-test-packaging-{distro}-{stream}' - -- job-template: - name: 'onap-verify-package-{distro}-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - concurrent: true - - parameters: - - string: - name: DEPLOY_SCENARIO - default: '{deploy-scenario}' - description: 'Scenario to test change with.' - - string: - name: CONTAINER_TOOL - default: '{container-tool}' - description: 'Command to use when pulling images. Options docker or podman' - - 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' - - label: - name: SLAVE_LABEL - default: 'engine-package-{distro}-fra' - description: 'Slave label to schedule this job on.' - - 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: 300 - - ssh-agent-credentials: - users: - - 'nordixinfra-nordix-gerrit-ssh' - - 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' - - multijob: - name: ONAP Framework Packaging - condition: SUCCESSFUL - execution-type: SEQUENTIALLY - projects: - - name: 'onap-verify-packaging-{distro}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - property-file: "$WORKSPACE/change.properties" - kill-phase-on: FAILURE - abort-all-job: true - - multijob: - name: Test Framework Packaging - condition: SUCCESSFUL - execution-type: SEQUENTIALLY - projects: - - name: 'onap-verify-test-packaging-{distro}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - property-file: "$WORKSPACE/change.properties" - kill-phase-on: FAILURE - abort-all-job: true - -- job-template: - name: 'onap-verify-packaging-{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: 300 - - 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-scm-gerrit: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: $GERRIT_BRANCH - refspec: $GERRIT_REFSPEC - wipe_workspace: true - clean_before: false - - builders: - - 'package-macro' - - 'upload-artifact-macro' - -- job-template: - name: 'onap-verify-test-packaging-{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: 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 - - builders: - - 'test-package-macro' - - 'xtesting-upload-artifact-macro' diff --git a/jjb/cloud-infra/onap-jobs/onap-verify-tox.yaml b/jjb/cloud-infra/onap-jobs/onap-verify-tox.yaml deleted file mode 100644 index 0ea3ea7cb..000000000 --- a/jjb/cloud-infra/onap-jobs/onap-verify-tox.yaml +++ /dev/null @@ -1,181 +0,0 @@ ---- -# ============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: 'onap-tox' - - project: 'onap-tox' - - stream: - - 'master': - branch: '{stream}' - gated-projects: 'infra/stack/onap|infra/installer/oom' - - 'guilin': - branch: '{stream}' - gated-projects: 'infra/stack/onap|infra/installer/oom' - - 'frankfurt': - branch: '{stream}' - gated-projects: 'infra/stack/onap|infra/installer/oom' - - 'elalto': - branch: '{stream}' - gated-projects: 'infra/stack/onap|infra/installer/oom' - - lint-type: - - ansible-lint: - disabled: false - repos-to-ignore: '' - - shellcheck: - disabled: false - repos-to-ignore: '' - - yamllint: - disabled: false - repos-to-ignore: '' - - jobs: - - 'onap-verify-tox-{stream}' - - 'onap-verify-{lint-type}-{stream}' - -- job-template: - name: 'onap-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: 'onap-verify-ansible-lint-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - - name: 'onap-verify-shellcheck-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - - name: 'onap-verify-yamllint-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - -- job-template: - name: 'onap-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: diff --git a/jjb/cloud-infra/openstack-jobs/openstack-release-deploy-test.yaml b/jjb/cloud-infra/openstack-jobs/openstack-release-deploy-test.yaml deleted file mode 100644 index fc5c67555..000000000 --- a/jjb/cloud-infra/openstack-jobs/openstack-release-deploy-test.yaml +++ /dev/null @@ -1,211 +0,0 @@ ---- -# ============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: 'openstack-deploy-test' - - project: 'openstack-deploy-test' - - stream: - - 'master': - branch: 'master' - deploy-scenario: 'os-nosdn-nofeature' - - 'train': - branch: 'train' - deploy-scenario: 'os-nosdn-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: 120 - execution-mode: offline-deployment - - functest: - build-timeout: 240 - execution-mode: online-test - - yardstick: - build-timeout: 60 - execution-mode: online-test - - jobs: - - 'openstack-release-{environment-type}-deploy-test-{distro}-baremetal-{stream}' - - 'openstack-release-{environment-type}-{phase}-{distro}-baremetal-{stream}' - -- job-template: - name: 'openstack-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: 420 - - 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-deploy-artifact-macro' - - multijob: - name: "Offline Deployment on Baremetal using {deploy-scenario}" - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - 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: Functional Testing - condition: ALWAYS - projects: - - 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: Platform Benchmarking - condition: ALWAYS - projects: - - 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: '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: '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' diff --git a/jjb/cloud-infra/openstack-jobs/openstack-release-jobs.yaml b/jjb/cloud-infra/openstack-jobs/openstack-release-jobs.yaml deleted file mode 100644 index 188e271e2..000000000 --- a/jjb/cloud-infra/openstack-jobs/openstack-release-jobs.yaml +++ /dev/null @@ -1,249 +0,0 @@ ---- -# ============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: 'openstack-release' - - 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 - - jobs: - - 'openstack-release-{distro}-{stream}' - - 'openstack-package-{distro}-{stream}' - - 'openstack-promote-{distro}-{stream}' - -- job-template: - name: 'openstack-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: 'openstack' - 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_KOLLA_VERSION - default: '{branch}' - description: 'Kolla 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: 'openstack-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: Release Test {deploy-scenario} - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'openstack-release-offline-deploy-test-{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: 'openstack-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: 'openstack-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: 180 - - 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: 'openstack-promote-{distro}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: false - - properties: - - logrotate - - wrappers: - - build-timeout: - timeout: 60 - - 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' diff --git a/jjb/cloud-infra/openstack-jobs/openstack-verify-deploy-test.yaml b/jjb/cloud-infra/openstack-jobs/openstack-verify-deploy-test.yaml deleted file mode 100644 index 2ac2c5bf5..000000000 --- a/jjb/cloud-infra/openstack-jobs/openstack-verify-deploy-test.yaml +++ /dev/null @@ -1,334 +0,0 @@ ---- -# ============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: 'openstack-verify-deploy-test' - - project: 'openstack-verify-deploy-test' - - stream: - - 'master': - branch: '{stream}' - deploy-scenario: 'os-nosdn-nofeature' - - 'train': - branch: '{stream}' - deploy-scenario: 'os-nosdn-nofeature' - - 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 - - functest - - type: - - virtual: - provisioner-type: 'bifrost' - slave-type: 'vpod' - gated-projects: 'infra/stack/openstack|infra/installer/kolla' - 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 - - cloud: - - city: - openrc-credentials-file: 'est-jenkins-openrcfile-city-frankfurt-cicd' - - dependency-jobs: 'openstack-verify-package-{distro}-{stream}' - dependency-job-var: 'TRIGGER_openstack_verify_package_{distro}_{stream}_BUILD_RESULT' - - jobs: - - 'openstack-verify-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - 'openstack-verify-{environment-type}-{phase}-{distro}-{cloud}-{type}-{stream}' - -- job-template: - name: 'openstack-verify-{environment-type}-deploy-test-{distro}-{cloud}-{type}-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - 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' - 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-openstack-{environment-type}-{distro}-$GERRIT_CHANGE_NUMBER" - description: 'Name of the created stack' - - string: - name: KEYPAIR_NAME - default: "keypair-nordix-cicd-verify-openstack-{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: - - 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' - - multijob: - name: "{environment-type} deployment on {type} instances" - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'openstack-verify-{environment-type}-deploy-{distro}-city-{type}-{stream}' - current-parameters: true - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/change.properties - - multijob: - name: "{environment-type} testing on {type} instances" - condition: SUCCESSFUL - execution-type: PARALLEL - projects: - - name: 'openstack-verify-{environment-type}-functest-{distro}-city-{type}-{stream}' - current-parameters: true - git-revision: false - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - property-file: $WORKSPACE/change.properties - - publishers: - - postbuildscript: - builders: - - role: SLAVE - build-on: - - SUCCESS - - FAILURE - - ABORTED - - NOT_BUILT - - UNSTABLE - build-steps: - - 'wait-pkg-mgr-macro' - - 'delete-stack-macro' - -- job-template: - name: 'openstack-verify-{environment-type}-{phase}-{distro}-{cloud}-{type}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate - - throttle: - max-per-node: 1 - max-total: 3 - option: project - - scm: - - git-scm-gerrit: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: $GERRIT_BRANCH - refspec: $GERRIT_REFSPEC - wipe_workspace: true - clean_before: false - - wrappers: - - 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 - - fix-workspace-permissions - - builders: - - 'generate-ssh-keypair-macro' - - 'wait-pkg-mgr-macro' - - 'download-{phase}-artifact-macro' - - '{phase}-macro' diff --git a/jjb/cloud-infra/openstack-jobs/openstack-verify-package.yaml b/jjb/cloud-infra/openstack-jobs/openstack-verify-package.yaml deleted file mode 100644 index 226795977..000000000 --- a/jjb/cloud-infra/openstack-jobs/openstack-verify-package.yaml +++ /dev/null @@ -1,182 +0,0 @@ ---- -# ============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: 'openstack-verify-package' - - project: 'openstack-verify-package' - - stream: - - 'master': - 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' - - 'train': - 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 - - dependency-jobs: 'openstack-verify-tox-{stream}' - dependency-job-var: 'TRIGGER_openstack_verify_tox_{stream}_BUILD_RESULT' - - jobs: - - 'openstack-verify-package-{distro}-{stream}' - -- job-template: - name: 'openstack-verify-package-{distro}-{stream}' - - disabled: '{obj:disabled}' - - 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' - - label: - name: SLAVE_LABEL - default: 'engine-package-{distro}-fra' - description: 'Slave label to schedule this job on.' - - 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 - - ssh-agent-credentials: - users: - - 'nordixinfra-lfn-gerrit-ssh' - - 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' diff --git a/jjb/cloud-infra/openstack-jobs/openstack-verify-tox.yaml b/jjb/cloud-infra/openstack-jobs/openstack-verify-tox.yaml deleted file mode 100644 index 275a8a1fa..000000000 --- a/jjb/cloud-infra/openstack-jobs/openstack-verify-tox.yaml +++ /dev/null @@ -1,175 +0,0 @@ ---- -# ============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: 'openstack-tox' - - project: 'openstack-tox' - - stream: - - 'master': - branch: '{stream}' - gated-projects: 'infra/stack/openstack|infra/installer/kolla' - - 'train': - branch: '{stream}' - gated-projects: 'infra/stack/openstack|infra/installer/kolla' - - lint-type: - - ansible-lint: - disabled: false - repos-to-ignore: '' - - shellcheck: - disabled: false - repos-to-ignore: '' - - yamllint: - disabled: false - repos-to-ignore: '' - - jobs: - - 'openstack-verify-tox-{stream}' - - 'openstack-verify-{lint-type}-{stream}' - -- job-template: - name: 'openstack-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: 'openstack-verify-ansible-lint-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - - name: 'openstack-verify-shellcheck-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - - name: 'openstack-verify-yamllint-{stream}' - current-parameters: true - kill-phase-on: NEVER - abort-all-job: false - -- job-template: - name: 'openstack-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: diff --git a/jjb/cloud-infra/scripts/cleanup-heat-stacks.sh b/jjb/cloud-infra/scripts/cleanup-heat-stacks.sh deleted file mode 100644 index 817499bf5..000000000 --- a/jjb/cloud-infra/scripts/cleanup-heat-stacks.sh +++ /dev/null @@ -1,100 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START======================================================= -# Copyright (C) 2020 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 - -#------------------------------------------------------------------------------- -# In some cases, it is useful to see all the output generated by commands so -# this function makes it possible for users to achieve that by not redirecting -# output to /dev/null when verbosity is enabled -#------------------------------------------------------------------------------- -redirect_cmd() { - - if [[ "$VERBOSITY" == "false" ]]; then - "$@" > /dev/null 2>&1 - else - "$@" - fi - -} - -VERBOSITY=${VERBOSITY:-false} -# ensure dependencies are present -echo "Info : Install python3.7-minimal python3-distutils virtualenv using apt" -redirect_cmd sudo apt update -redirect_cmd sudo apt install -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confnew -y python3.7-minimal python3-distutils virtualenv - -# prepare venv for openstack cli -/bin/rm -rf $WORKSPACE/.venv -virtualenv --python python3 --never-download $WORKSPACE/.venv -set +u -source $WORKSPACE/.venv/bin/activate -set -u -pip install --quiet --upgrade pip -pip install --quiet python-cinderclient==6.0.0 -pip install --quiet python-glanceclient==3.0.0 -pip install --quiet python-heatclient==2.0.0 -pip install --quiet python-ironic-inspector-client==4.0.0 -pip install --quiet python-ironicclient==4.0.0 -pip install --quiet python-keystoneclient==3.22.0 -pip install --quiet python-neutronclient==7.1.0 -pip install --quiet python-novaclient==16.0.0 -pip install --quiet python-openstackclient==5.1.0 -pip install --quiet python-swiftclient==3.9.0 - -echo "Info: Find Stacks $STACK_START_STR and keypair keypair-$STACK_START_STR" -echo "-------------------------------------------------------------------------" -source $OPENRC_FILE -STACKS=$(openstack stack list -c "Stack Name" -c "Creation Time" -c ID -f value) -KEYPAIRS=$(openstack keypair list -c "Name" -f value) -# iternate of all the stacks -while IFS= read -r stackline -do - # split line which comes in order ID,"Stack Name","Creation Time" - stackdetails=($stackline) - # find stacks starting with the search string - if [[ ${stackdetails[1]} =~ ^$STACK_START_STR.* ]] - then - whenstackcreated=$(date -d ${stackdetails[2]} +%s) - nowinsecond=$(date +%s) - ageofstack=$(($nowinsecond-$whenstackcreated)) - # find stacks older than the allowed time - if [[ $ageofstack > $TIMETOLIVE*60 ]] - then - echo "Info: Going to delete stack " ${stackdetails[1]} " ID " ${stackdetails[0]} - openstack stack delete ${stackdetails[0]} --wait --yes - echo "Info: Deleted stack " ${stackdetails[1]} " ID " ${stackdetails[0]} - # check keypair is there before trying to delete - if [[ "${KEYPAIRS[@]}" =~ "keypair-${stackdetails[1]}" ]]; then - echo "Info: Going to delete keypair " keypair-${stackdetails[1]} - openstack keypair delete keypair-${stackdetails[1]} - echo "Info: Deleted keypair " keypair-${stackdetails[1]} - fi - fi - fi -done <<< $(echo "$STACKS") - -echo "-------------------------------------------------------------------------" -echo "Info: Finished deleting stacks and keypairs" - -deactivate -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/delete-heat-stack.sh b/jjb/cloud-infra/scripts/delete-heat-stack.sh deleted file mode 100755 index 6bbe9d35c..000000000 --- a/jjb/cloud-infra/scripts/delete-heat-stack.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/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 [[ "$DELETE_STACK" != "true" || "$HW_TYPE" != "cloud" ]]; then - echo "Info : Skipping stack delete as it is either not a cloud deployment or slack deletion is disabled!" - exit 0 -fi - -# NOTE (fdegir): install openstack clients -sudo /bin/rm -rf /tmp/.engine_venv -virtualenv --python python3 --never-download /tmp/.engine_venv -# NOTE (fdegir): we need to use pip.conf pointing to local packages -[[ "$EXECUTION_MODE" == "offline-deployment" ]] && /bin/cp -f /opt/engine/offline/pip/pip.conf /tmp/.engine_venv -set +u -source /tmp/.engine_venv/bin/activate -set -u -pip install --quiet --upgrade pip -# NOTE (fdegir): we only install what is needed rather than all dependencies -pip install --quiet openstacksdk python-openstackclient python-heatclient - -# NOTE (fdegir): delete stack -echo "Info: Deleting stack $HEAT_STACK_NAME and keypair $KEYPAIR_NAME" -echo "-------------------------------------------------------------------------" -source /tmp/openrc && /bin/rm -f /tmp/openrc -openstack stack delete --wait --yes $HEAT_STACK_NAME -openstack keypair delete $KEYPAIR_NAME -echo "-------------------------------------------------------------------------" -echo "Info: Stack $HEAT_STACK_NAME and keypair $KEYPAIR_NAME have been deleted!" - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/deploy.sh b/jjb/cloud-infra/scripts/deploy.sh deleted file mode 100755 index 99bedc3a8..000000000 --- a/jjb/cloud-infra/scripts/deploy.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/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 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" -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 - -# NOTE (fdegir): the vars PDF and IDF are set in the jjb/job and there is no elegant -# way to dynamically change them there since the deploy scenario is determined until -# after the job is triggered and commit message is parsed -if [[ "$HW_TYPE" == "virtual" && "$DEPLOY_SCENARIO" == "k8-eno-ovs" ]]; then - export PDF='https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/eno-vpod1-pdf.yml' - export IDF='https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/eno-vpod1-idf.yml' -fi - -# NOTE (fdegir): for bifrost based deployments, we don't need openrc file so we fake it -OPENRC_FILE=${OPENRC_FILE:-/tmp/openrc} - -/bin/cp -f $OPENRC_FILE /tmp/openrc - -cd "$ENGINE_ROOT_DIR/engine" -./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: diff --git a/jjb/cloud-infra/scripts/download-deploy-artifact.sh b/jjb/cloud-infra/scripts/download-deploy-artifact.sh deleted file mode 100755 index 7a8ce5d99..000000000 --- a/jjb/cloud-infra/scripts/download-deploy-artifact.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/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 - -if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then - # ensure we delete leftovers due to lack of disk space - 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/$REMOTE_ARTIFACT" - cd /tmp - # NOTE (fdegir): switched from curl -s -S -O to wget to use wget auto-resume functionality - wget -q $NORDIX_ARTIFACT_URL/$REMOTE_ARTIFACT - echo "Info : Downloaded the artifact for offline deployment. Extracting..." - 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 - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/download-functest-artifact.sh b/jjb/cloud-infra/scripts/download-functest-artifact.sh deleted file mode 100755 index 24d266a42..000000000 --- a/jjb/cloud-infra/scripts/download-functest-artifact.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/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 - -echo "Info : Testing of offline deployments is not currently supported! Skipping artifact download" - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/download-xtesting-artifact.sh b/jjb/cloud-infra/scripts/download-xtesting-artifact.sh deleted file mode 100755 index 89c664390..000000000 --- a/jjb/cloud-infra/scripts/download-xtesting-artifact.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/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 - -# NOTE (eprasad) we need to override execution mode variable to mode supported by test framework -export EXECUTION_MODE=$(echo "$EXECUTION_MODE" | sed 's/deployment/test/g') - -if [[ "$EXECUTION_MODE" == "offline-test" ]]; then - REMOTE_ARTIFACT=$(echo $OFFLINE_XTESTING_FILE | sed 's/.*\///g') - - echo "Info : Downloading artifact from Nordix ARM..." - echo " $NORDIX_ARTIFACT_URL/$REMOTE_ARTIFACT" - cd /tmp - # NOTE (fdegir): switched from curl -s -S -O to wget to use wget auto-resume functionality - wget -q $NORDIX_ARTIFACT_URL/$REMOTE_ARTIFACT - echo "Info : Downloaded the artifact for offline test. Extracting..." - echo " $(ls -al $OFFLINE_XTESTING_FILE)" - chmod +x $OFFLINE_XTESTING_FILE - $OFFLINE_XTESTING_FILE - sudo /bin/rm -rf $OFFLINE_XTESTING_FILE -else - echo "Info : Online test. Skipping artifact download." -fi - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/download-yardstick-artifact.sh b/jjb/cloud-infra/scripts/download-yardstick-artifact.sh deleted file mode 120000 index 9d2c82ea6..000000000 --- a/jjb/cloud-infra/scripts/download-yardstick-artifact.sh +++ /dev/null @@ -1 +0,0 @@ -download-functest-artifact.sh \ No newline at end of file diff --git a/jjb/cloud-infra/scripts/functest.sh b/jjb/cloud-infra/scripts/functest.sh deleted file mode 100755 index d98ad0aff..000000000 --- a/jjb/cloud-infra/scripts/functest.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/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 pipefail - -if [[ "$EXECUTION_MODE" == "offline-deployment" && "$GERRIT_PROJECT" == "infra/installer/kolla" ]]; then - echo "Info : Offline testing are not supported for $GERRIT_PROJECT" - exit 0 -fi - -if [[ "$EXECUTION_MODE" == "offline-deployment" && "$SLAVE_LABEL" != "baremetal-deploy" ]]; then - echo "Info : Testing of offline deployments is not currently supported!" - exit 0 -fi - -# NOTE (fdegir): delete unnecessary stuff to free up space on baremetal jumphost -sudo /bin/rm -rf /tmp/$BUILD_ARTIFACTS ~/.ara \ - /opt/test /opt/stack /httpboot /opt/engine/offline/binaries /opt/engine/offline/dib \ - /tmp/kubespray_cache > /dev/null 2>&1 || true -sudo docker images -a --format {{.ID}} | xargs -n 1 sudo docker rmi -f > /dev/null 2>&1 || true - -echo "Info : Cloning infra/test repository" -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 -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: diff --git a/jjb/cloud-infra/scripts/generate-build-metadata.sh b/jjb/cloud-infra/scripts/generate-build-metadata.sh deleted file mode 100755 index 88a89f54c..000000000 --- a/jjb/cloud-infra/scripts/generate-build-metadata.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/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 - -cd $WORKSPACE -# need to generate the identifier before writing it -if [[ "$CI_LOOP" == "verify" ]]; then - BUILD_IDENTIFIER=$GERRIT_CHANGE_NUMBER - ARTIFACT_ARM_FOLDER=gerrit -elif [[ "$CI_LOOP" == "periodic" ]]; then - BUILD_IDENTIFIER="$(date '+%Y%m%d%H%M')" - ARTIFACT_ARM_FOLDER=release -else - echo "Error : Unrecognized CI Loop $CI_LOOP" - exit 1 -fi - -echo "Info : Generating build metadata" -cat << EOF > "$WORKSPACE/build.properties" -BUILD_DATE=$(date '+%Y%m%d%H%M') -BUILT_BY=$BUILD_URL -BUILD_IDENTIFIER=$BUILD_IDENTIFIER -CI_LOOP=$CI_LOOP -ENGINE_SHA=$(git rev-parse HEAD) -NORDIX_ARTIFACT_URL=$NORDIX_ARM_HTTPS_URL/$NORDIX_ARM_REPO/installer/oss/$ARTIFACT_ARM_FOLDER/$BUILD_IDENTIFIER -EOF - -echo "Info : Build metadata" -echo "-------------------------------------------------------------------------" -cat "$WORKSPACE/build.properties" -echo "-------------------------------------------------------------------------" diff --git a/jjb/cloud-infra/scripts/generate-change-metadata.sh b/jjb/cloud-infra/scripts/generate-change-metadata.sh deleted file mode 100755 index 751723222..000000000 --- a/jjb/cloud-infra/scripts/generate-change-metadata.sh +++ /dev/null @@ -1,209 +0,0 @@ -#!/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 - # NOTE (cian): upgrades to Gerrit appear to change the output of the previously-used endpoint - # https://gerrit.nordix.org/changes/?q=$DEPENDENT_CHANGE_ID&o=CURRENT_REVISION so moving to - # gerrit SSH-based queries instead - GIT_BASE_SSH_CMD=$(echo "${GIT_BASE_SSH}" | sed -e 's#://# #g' | sed -e 's#:# -p #g') - readarray -t DEPENDENT_CHANGE_METADATA < <( - ${GIT_BASE_SSH_CMD} gerrit query --format=json change:${DEPENDENT_CHANGE_ID} --current-patch-set |\ - head -1 |\ - jq -r '[.project, .status, .currentPatchSet.revision, .currentPatchSet.ref] | join("\n")' - ) - - # 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//*\//}" - -# Check if we need to override the deploy scenario. -if ! echo "$GERRIT_CHANGE_COMMIT_MESSAGE" | grep -qs "^Deploy-Scenario:"; then - echo "Info : No DEPLOY_SCENARIO override found." -else - echo "Info : DEPLOY_SCENARIO override found!" - echo "Info : Before override: DEPLOY_SCENARIO=${DEPLOY_SCENARIO}" - DEPLOY_SCENARIO=$(echo "$GERRIT_CHANGE_COMMIT_MESSAGE" | grep '^Deploy-Scenario:' | cut -d ":" -f2 | sed 's/\s*//g') - export DEPLOY_SCENARIO - echo "Info : After override: DEPLOY_SCENARIO=${DEPLOY_SCENARIO}" -fi - -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 - # NOTE (fdegir): if the change comes into provisioner repos, we need to set the stack type - # properly for the jobs verifying those changes - # set vars - export STACK_TYPE="${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 OFFLINE_XTESTING_FILE="/tmp/${STACK_TYPE}-test-${GERRIT_BRANCH}.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 -OFFLINE_XTESTING_FILE=$OFFLINE_XTESTING_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: diff --git a/jjb/cloud-infra/scripts/generate-k8sdeployment-environment.sh b/jjb/cloud-infra/scripts/generate-k8sdeployment-environment.sh deleted file mode 100644 index ca285a46a..000000000 --- a/jjb/cloud-infra/scripts/generate-k8sdeployment-environment.sh +++ /dev/null @@ -1,72 +0,0 @@ -#!/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 - -# file to record k8s properties -export K8S_DEPLOYMENT_FILE="$WORKSPACE/k8s.properties" -/bin/rm -f "$K8S_DEPLOYMENT_FILE" - -echo "Info : Generating k8s properties" - -echo "Info : Setting STACK_TYPE and STACK_VERSION" - -export STACK_TYPE="kubernetes" -export STACK_VERSION="$K8S_VERSION" - -# record vars to properties file -echo "STACK_TYPE=$STACK_TYPE" >> "$K8S_DEPLOYMENT_FILE" -echo "DEPLOY_SCENARIO=k8-calico-nofeature" >> "$K8S_DEPLOYMENT_FILE" -echo "STACK_VERSION=$STACK_VERSION" >> "$K8S_DEPLOYMENT_FILE" -echo "NORDIX_STACK_VERSION=$K8S_VERSION" >> "$K8S_DEPLOYMENT_FILE" - -# global vars -export NORDIX_ARM_HTTPS_URL="https://artifactory.nordix.org/artifactory" -export ARTIFACT_ARM_FOLDER="release" -export BUILD_IDENTIFIER="${K8S_VERSION}/stack/latest" -export OFFLINE_INSTALLER_FILE="/tmp/${STACK_TYPE}-${K8S_VERSION}-${DISTRO}.bsx" -export BUILD_ARTIFACTS="/tmp/${STACK_TYPE}-${K8S_VERSION}-${DISTRO}.bsx" -export NORDIX_ARM_REPO="nordix-${STACK_TYPE}" -# looking to make url looking like -# https://artifactory.nordix.org/artifactory/nordix-kubernetes/oss/release/1.15/stack/latest/kubernetes-1.15-ubuntu1804.bsx -export NORDIX_ARTIFACT_URL="$NORDIX_ARM_HTTPS_URL/$NORDIX_ARM_REPO/oss/$ARTIFACT_ARM_FOLDER/$BUILD_IDENTIFIER" - -cat << EOF >> "$K8S_DEPLOYMENT_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 - -echo "Info : K8S properties" -echo "-------------------------------------------------------------------------" -cat "$K8S_DEPLOYMENT_FILE" -echo "-------------------------------------------------------------------------" - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/generate-release-metadata.sh b/jjb/cloud-infra/scripts/generate-release-metadata.sh deleted file mode 100755 index 1f50ff91a..000000000 --- a/jjb/cloud-infra/scripts/generate-release-metadata.sh +++ /dev/null @@ -1,94 +0,0 @@ -#!/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_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 OFFLINE_XTESTING_FILE="/tmp/${STACK_TYPE}-test-${BRANCH}.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 -OFFLINE_XTESTING_FILE=$OFFLINE_XTESTING_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: diff --git a/jjb/cloud-infra/scripts/generate-sdf-for-change.sh b/jjb/cloud-infra/scripts/generate-sdf-for-change.sh deleted file mode 100755 index cf888080b..000000000 --- a/jjb/cloud-infra/scripts/generate-sdf-for-change.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/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========================================================= - -# NOTE (fdegir): we do not need to do anything for the changes coming to infra/engine repo -if [[ "$GERRIT_PROJECT" == "infra/engine" ]]; then - exit 0 -fi - -echo "Info : Cloning infra/engine repository" -cd "$HOME" && /bin/rm -rf "$WORKSPACE" -git clone -q "$ENGINE_REPO_URL" "$WORKSPACE" - -export SDF_ORIGINAL="$WORKSPACE/engine/inventory/group_vars/all/sdf.yaml" -export SDF_PATCHSET="/tmp/sdf.yaml.$GERRIT_CHANGE_NUMBER" - -/bin/rm -rf "$SDF_PATCHSET" - -export TOOL_TYPE="${GERRIT_PROJECT//*\//}" -export TOOL_MATCH="false" -echo "Info : Tool type is $TOOL_TYPE" -echo "Info : Updating SDF with change SHA and refspec" -while IFS= read -r line; do - if [[ "$TOOL_MATCH" == "true" && "$line" =~ "version" ]]; then - echo "$line" | sed "s#version:.*#version: $GERRIT_PATCHSET_REVISION\n refspec: $GERRIT_REFSPEC#g" >> "$SDF_PATCHSET" - export TOOL_MATCH="false" - continue - fi - if [[ "$line" =~ "$TOOL_TYPE:" && "$TOOL_MATCH" == "false" ]]; then - export TOOL_MATCH="true" - fi - echo "$line" >> "$SDF_PATCHSET" -done < "$SDF_ORIGINAL" -# NOTE (fdegir): log the diff for possible troubleshooting -echo -echo "Info : Diff between original SDF and SDF generated for the change" -echo "-------------------------------------------------------------------------" -diff "$SDF_ORIGINAL" "$SDF_PATCHSET" -echo "-------------------------------------------------------------------------" -echo - -# NOTE (fdegir): move SDF generated for the change into the original SDF -/bin/mv -f "$SDF_PATCHSET" "$SDF_ORIGINAL" - -# NOTE (fdegir): log the final SDF -echo -echo "Info : Generated SDF content" -echo "-------------------------------------------------------------------------" -cat "$SDF_ORIGINAL" -echo "-------------------------------------------------------------------------" -echo diff --git a/jjb/cloud-infra/scripts/generate-ssh-keypair.sh b/jjb/cloud-infra/scripts/generate-ssh-keypair.sh deleted file mode 100755 index 00f8336a5..000000000 --- a/jjb/cloud-infra/scripts/generate-ssh-keypair.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/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 [[ ! -f "$HOME/.ssh/id_rsa" ]]; then - echo "Info : Generating SSH keypair for the job" - ssh-keygen -q -t rsa -f ~/.ssh/id_rsa -N '' <<< y > /dev/null 2>&1 - chmod -R go-rwx ~/.ssh -fi diff --git a/jjb/cloud-infra/scripts/k8s-job-enable-condition.gvy b/jjb/cloud-infra/scripts/k8s-job-enable-condition.gvy deleted file mode 100644 index e865965c7..000000000 --- a/jjb/cloud-infra/scripts/k8s-job-enable-condition.gvy +++ /dev/null @@ -1 +0,0 @@ -!('{environment-type}' == 'offline' && "${{DEPLOY_SCENARIO}}" in ['k8-eno-ovs', 'k8-calico-istio', 'k8-calico-eiffel', 'k8-calico-spinnaker']) \ No newline at end of file diff --git a/jjb/cloud-infra/scripts/oom-build-installdeps.sh b/jjb/cloud-infra/scripts/oom-build-installdeps.sh deleted file mode 100644 index 85b0dae96..000000000 --- a/jjb/cloud-infra/scripts/oom-build-installdeps.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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========================================================= - -# This is a wrapper to install any required dependencies for running the OOM helm -# build script. - -set -o errexit -set -o pipefail - -sudo apt-get install -y -q=3 \ - make - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/oom-build-wrapper.sh b/jjb/cloud-infra/scripts/oom-build-wrapper.sh deleted file mode 100644 index f4dadc763..000000000 --- a/jjb/cloud-infra/scripts/oom-build-wrapper.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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========================================================= - -# This is a wrapper to execute the script `oom-build.sh` contained within the -# installer/oom repository -set -o errexit -set -o pipefail - -cd "${WORKSPACE}" -./oom-build.sh - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/oom-upload.sh b/jjb/cloud-infra/scripts/oom-upload.sh deleted file mode 100644 index 696e0ea74..000000000 --- a/jjb/cloud-infra/scripts/oom-upload.sh +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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 pipefail - -YQ_BIN="${WORKSPACE}/bin/yq" -ONAP_OOM_GIT_REVISION=$(cd "${WORKSPACE}/build/onap-oom" && git rev-parse --short HEAD) -ONAP_OOM_VERSION=$(${YQ_BIN} e '.version' "${WORKSPACE}/build/onap-oom/kubernetes/onap/Chart.yaml") -ONAP_OOM_VERSION_LATEST="${ONAP_OOM_VERSION//${ONAP_OOM_GIT_REVISION}/latest}" - -ONAP_UMBRELLA_CHART="${WORKSPACE}/build/onap-oom/kubernetes/dist/packages/onap-${ONAP_OOM_VERSION}.tgz" -IMAGES_LIST="${WORKSPACE}/onap-${ONAP_OOM_VERSION}_images.txt" - -export NORDIX_ARM_REPO="onap" -export ARTIFACT_ARM_FOLDER="oom" -export BUILD_IDENTIFIER="${ONAP_OOM_GIT_REVISION}" -export NORDIX_ARTIFACT_URL="${NORDIX_ARM_HTTPS_URL}/${NORDIX_ARM_REPO}/${ARTIFACT_ARM_FOLDER}/${BUILD_IDENTIFIER}" -export NORDIX_ARTIFACT_URL_LATEST="${NORDIX_ARM_HTTPS_URL}/${NORDIX_ARM_REPO}/${ARTIFACT_ARM_FOLDER}/latest" - -echo "Info : Pushing ONAP umbrella chart to Nordix Harbor" -HELM_BIN="${WORKSPACE}/bin/helm" -${HELM_BIN} repo remove onaptest || true -${HELM_BIN} repo add onaptest "${NORDIX_REGISTRY}/chartrepo/onaptest" -${HELM_BIN} push -f "${ONAP_UMBRELLA_CHART}" --username "${HARBOR_USERNAME}" --password "${HARBOR_PASSWORD}" onaptest -# Also push with "latest" version -${HELM_BIN} push -f "${ONAP_UMBRELLA_CHART}" --username "${HARBOR_USERNAME}" --password "${HARBOR_PASSWORD}" --version "${ONAP_OOM_VERSION_LATEST}" onaptest - -export BUILD_ARTIFACTS="${ONAP_UMBRELLA_CHART} ${IMAGES_LIST}" -echo "Info : Uploading ${BUILD_ARTIFACTS} to Nordix ARM ${NORDIX_ARM_REPO} repository" -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) - - REMOTE_ARTIFACT=$(basename "${BUILD_ARTIFACT}") - REMOTE_ARTIFACT_LATEST=$(basename "${BUILD_ARTIFACT//${ONAP_OOM_GIT_REVISION}/latest}") - # NOTE(cian): URL-encoding remote artifact as filename may contain special characters - REMOTE_ARTIFACT_QUOTED=$(echo -n "${REMOTE_ARTIFACT}" | python3 -c 'from sys import stdout, stdin; from urllib.parse import quote; stdout.write(quote(stdin.read()))') - REMOTE_ARTIFACT_LATEST_QUOTED=$(echo -n "${REMOTE_ARTIFACT_LATEST}" | python3 -c 'from sys import stdout, stdin; from urllib.parse import quote; stdout.write(quote(stdin.read()))') - - 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}" \ - "${NORDIX_ARTIFACT_URL}/${REMOTE_ARTIFACT}" - echo "Info : Artifact ${BUILD_ARTIFACT} is available on ${NORDIX_ARTIFACT_URL}/${REMOTE_ARTIFACT_QUOTED}" - echo "Info : Uploading ${BUILD_ARTIFACT} to Nordix Artifactory as ${REMOTE_ARTIFACT_LATEST}" - 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}" \ - "${NORDIX_ARTIFACT_URL_LATEST}/${REMOTE_ARTIFACT_LATEST}" - echo "Info : Artifact ${BUILD_ARTIFACT} available on ${NORDIX_ARTIFACT_URL_LATEST}/${REMOTE_ARTIFACT_LATEST_QUOTED}" -done - -echo "Done!" - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/package.sh b/jjb/cloud-infra/scripts/package.sh deleted file mode 100755 index 1ad9b1924..000000000 --- a/jjb/cloud-infra/scripts/package.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/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 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" -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 - -echo "Info : Packaging stack $STACK_TYPE" - -export LC_ALL="en_US.UTF-8" - -cd "$WORKSPACE/engine" -./package.sh -s "$STACK_TYPE" -b "$STACK_VERSION" -d "$DISTRO" -v - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/promote.sh b/jjb/cloud-infra/scripts/promote.sh deleted file mode 100755 index a6ac651ca..000000000 --- a/jjb/cloud-infra/scripts/promote.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/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 diff --git a/jjb/cloud-infra/scripts/test-package.sh b/jjb/cloud-infra/scripts/test-package.sh deleted file mode 100644 index d9b9b5327..000000000 --- a/jjb/cloud-infra/scripts/test-package.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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 pipefail - -# NOTE (akash): ONAP_TEST_BRANCH is set to master as -# no other branch is available -export ONAP_TEST_BRANCH="master" - -# NOTE (akash): we need to remove $WORKSPACE and clone infra/test repository -# as infra/test is what drives the deployment -if [[ "$GERRIT_PROJECT" != "infra/test" ]]; then - cd "$HOME" && /bin/rm -rf "$WORKSPACE" - echo "Info : Cloning infra/engine repository" - git clone -q https://gerrit.nordix.org/infra/test.git "$WORKSPACE" - cd "$WORKSPACE" -fi - -echo "Info : Packaging test stack $STACK_TYPE" - -cd "$WORKSPACE/test" -./package.sh -s "$STACK_TYPE" -b "$ONAP_TEST_BRANCH" -d "$DISTRO" -v - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/tox.sh b/jjb/cloud-infra/scripts/tox.sh deleted file mode 100755 index 048040970..000000000 --- a/jjb/cloud-infra/scripts/tox.sh +++ /dev/null @@ -1,100 +0,0 @@ -#!/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 - -#------------------------------------------------------------------------------- -# Various tests are run using tox such as docs, yamllint, ansible-lint, and -# shellcheck. Some repos do not have certain types of files and those repos -# are ignored using REPOS_TO_IGNORE variable which is controlled within the -# jjb per lint type. -#------------------------------------------------------------------------------- -run_tox() { - - echo "Info : Preparing to run tox for the repo $GERRIT_PROJECT" - - # set and export defaults - LINT_TYPE="${LINT_TYPE:-ansible-lint}" - REPOS_TO_IGNORE="${REPOS_TO_IGNORE:-none}" - VERBOSITY=${VERBOSITY:-false} - export LINT_TYPE REPOS_TO_IGNORE VERBOSITY - - # check if the change is for a repo we should ignore - if [[ "$REPOS_TO_IGNORE" =~ "$GERRIT_PROJECT" ]]; then - echo "Info : Ignoring change as $GERRIT_PROJECT is in ignore list!" - echo "Info : Done!" - exit 0 - fi - - # ensure we are in job build WORKSPACE - cd "$WORKSPACE" - - # set DEBIAN_FRONTEND to run apt non-interactively - DEBIAN_FRONTEND=noninteractive - export DEBIAN_FRONTEND - - # install dependencies - echo "Info : Install python3.7-minimal python3-distutils python3-venv using apt" - redirect_cmd sudo apt update - redirect_cmd sudo apt install -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confnew -y python3.7-minimal python3-distutils python3-venv - - # create and activate virtualenv - echo "Info : Create and activate python virtualenv" - redirect_cmd python3 -m venv .venv - set +u - redirect_cmd source .venv/bin/activate - set -u - - # install only tox since the rest of the requirements are installed by tox itself - TOX_PACKAGE=$(grep "^tox==" test-requirements.txt) - echo "Info : Install $TOX_PACKAGE" - redirect_cmd pip install --force-reinstall "$TOX_PACKAGE" - - # run tox - echo "Info : Run $LINT_TYPE using tox" - echo "----------------------------------------------------" - tox -e "$LINT_TYPE" - echo "----------------------------------------------------" - echo "Info : Done!" - -} -#------------------------------------------------------------------------------- -# In some cases, it is useful to see all the output generated by commands so -# this function makes it possible for users to achieve that by not redirecting -# output to /dev/null when verbosity is enabled -#------------------------------------------------------------------------------- -redirect_cmd() { - - if [[ "$VERBOSITY" == "false" ]]; then - "$@" > /dev/null 2>&1 - else - "$@" - fi - -} -#------------------------------------------------------------------------------- -# run tox -#------------------------------------------------------------------------------- - -run_tox "$@" - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/upload-artifact.sh b/jjb/cloud-infra/scripts/upload-artifact.sh deleted file mode 100755 index b63a02449..000000000 --- a/jjb/cloud-infra/scripts/upload-artifact.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/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 "Info : Uploading $BUILD_ARTIFACTS to Nordix ARM $NORDIX_ARM_REPO repository" - -if [[ "$EXECUTION_MODE" == "packaging" || "$EXECUTION_MODE" == "offline-deployment" ]]; then - 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') - - 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 \ - "$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." -fi - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/upload-xtesting-artifact.sh b/jjb/cloud-infra/scripts/upload-xtesting-artifact.sh deleted file mode 100755 index bdfdad124..000000000 --- a/jjb/cloud-infra/scripts/upload-xtesting-artifact.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/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 - -# export BUILD_ARTIFACTS="/tmp/${STACK_TYPE}-test-${STACK_VERSION}.bsx" -echo "Info : Uploading $OFFLINE_XTESTING_FILE to Nordix ARM $NORDIX_ARM_REPO repository" - -if [[ "$EXECUTION_MODE" == "packaging" || "$EXECUTION_MODE" == "offline-deployment" ]]; then - cd /tmp - for BUILD_ARTIFACT in $OFFLINE_XTESTING_FILE; 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') - - 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 \ - "$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." -fi - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/xtesting-healthcheck.sh b/jjb/cloud-infra/scripts/xtesting-healthcheck.sh deleted file mode 100755 index 5b63fa26b..000000000 --- a/jjb/cloud-infra/scripts/xtesting-healthcheck.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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 pipefail - -# NOTE (eprasad) we need to override execution mode variable to mode supported by test framework -export EXECUTION_MODE=$(echo "$EXECUTION_MODE" | sed 's/deployment/test/g') - -if [[ "$EXECUTION_MODE" == "offline-test" ]]; then - TEST_ROOT_DIR="/opt/test/offline/git/test" -else - TEST_ROOT_DIR="$WORKSPACE" -fi - -echo "Info : Cloning infra/test repository" -cd $HOME && /bin/rm -rf $WORKSPACE -git clone -q $TEST_REPO_URL $WORKSPACE - - -cd "$TEST_ROOT_DIR/test" -./test.sh -s "$STACK_TYPE" -b "$BRANCH" -c "$DEPLOY_SCENARIO" -f "$TEST_FW" -t "$TEST_SUITE" \ - -o /tmp/openrc -i /tmp/inventory.ini -y -v - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/xtesting-infra-healthcheck.sh b/jjb/cloud-infra/scripts/xtesting-infra-healthcheck.sh deleted file mode 100755 index 5b63fa26b..000000000 --- a/jjb/cloud-infra/scripts/xtesting-infra-healthcheck.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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 pipefail - -# NOTE (eprasad) we need to override execution mode variable to mode supported by test framework -export EXECUTION_MODE=$(echo "$EXECUTION_MODE" | sed 's/deployment/test/g') - -if [[ "$EXECUTION_MODE" == "offline-test" ]]; then - TEST_ROOT_DIR="/opt/test/offline/git/test" -else - TEST_ROOT_DIR="$WORKSPACE" -fi - -echo "Info : Cloning infra/test repository" -cd $HOME && /bin/rm -rf $WORKSPACE -git clone -q $TEST_REPO_URL $WORKSPACE - - -cd "$TEST_ROOT_DIR/test" -./test.sh -s "$STACK_TYPE" -b "$BRANCH" -c "$DEPLOY_SCENARIO" -f "$TEST_FW" -t "$TEST_SUITE" \ - -o /tmp/openrc -i /tmp/inventory.ini -y -v - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/cloud-infra/scripts/yardstick.sh b/jjb/cloud-infra/scripts/yardstick.sh deleted file mode 120000 index 284dd7673..000000000 --- a/jjb/cloud-infra/scripts/yardstick.sh +++ /dev/null @@ -1 +0,0 @@ -functest.sh \ No newline at end of file diff --git a/jjb/global/jjb-macros.yaml b/jjb/global/jjb-macros.yaml index bebfd0daf..c1c6abea0 100644 --- a/jjb/global/jjb-macros.yaml +++ b/jjb/global/jjb-macros.yaml @@ -132,6 +132,12 @@ - shell: !include-raw: ./verify_geode_tag.sh +- builder: + name: 'wait-pkg-mgr-macro' + builders: + - shell: + !include-raw: ./scripts/wait-for-pkg-manager.sh + # defaults for job build history - property: name: logrotate-default @@ -524,4 +530,3 @@ notify-failure: true notify-back-to-normal: true notify-repeated-failure: true - diff --git a/jjb/cloud-infra/scripts/wait-for-pkg-manager.sh b/jjb/global/scripts/wait-for-pkg-manager.sh similarity index 100% rename from jjb/cloud-infra/scripts/wait-for-pkg-manager.sh rename to jjb/global/scripts/wait-for-pkg-manager.sh diff --git a/jjb/nolabs/booking-job-macros.yaml b/jjb/nolabs/booking-job-macros.yaml deleted file mode 100644 index a633c6ffc..000000000 --- a/jjb/nolabs/booking-job-macros.yaml +++ /dev/null @@ -1,43 +0,0 @@ ---- -# -# ============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: 'handlebooking-macro' - builders: - - shell: - !include-raw: ../cloud-infra/scripts/wait-for-pkg-manager.sh - - shell: | - #!/bin/bash - /bin/rm -f /tmp/openrc - /bin/cp -f $OPENRC_FILE /tmp/openrc - - shell: - !include-raw: ./handle-booking.sh - -- builder: - name: 'deletebooking-macro' - builders: - - shell: - !include-raw: ../cloud-infra/scripts/wait-for-pkg-manager.sh - - shell: | - #!/bin/bash - /bin/rm -f /tmp/openrc - /bin/cp -f $OPENRC_FILE /tmp/openrc - - shell: - !include-raw: ./delete-booking.sh diff --git a/jjb/nolabs/delete-booking.sh b/jjb/nolabs/delete-booking.sh deleted file mode 100644 index 42446dd75..000000000 --- a/jjb/nolabs/delete-booking.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -cd $WORKSPACE - -# install dependencies -sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) main universe restricted multiverse" > /dev/null -sudo apt install -y virtualenv jq > /dev/null -/bin/rm -rf $NOLABS_VENV && mkdir -p $NOLABS_VENV -virtualenv -p python3 $NOLABS_VENV > /dev/null -set +u -source $NOLABS_VENV/bin/activate > /dev/null -set -u -pip install httpie python-openstackclient python-heatclient python-novaclient > /dev/null -source /tmp/openrc - -export STACK_NAME="nordix-nolabs-booking${BOOKING_ID}-${DEPLOY_SCENARIO}" -export KEYPAIR_NAME="keypair-${STACK_NAME}" -echo "Info: STACK_NAME is set to $STACK_NAME" -echo "Info: KEYPAIR_NAME is set to $KEYPAIR_NAME" -echo "Info: Deleting stack $STACK_NAME" -echo "-------------------------------------------------" -echo openstack stack delete -y $STACK_NAME -openstack stack delete -y $STACK_NAME -echo "-------------------------------------------------" -echo "Info: Deleting keypair $KEYPAIR_NAME" -echo "-------------------------------------------------" -echo openstack keypair delete $KEYPAIR_NAME -openstack keypair delete $KEYPAIR_NAME -echo "-------------------------------------------------" - -# get authentication token -echo "API Request: http --ignore-stdin POST $NOLABS_API_TOKENS_ENDPOINT --auth dummy@dummy.com:dummy | jq -r '.token'" -NOLABS_TOKEN=$(http --ignore-stdin POST $NOLABS_API_TOKENS_ENDPOINT --auth $NOLABS_API_USERNAME:$NOLABS_API_PASSWORD | jq -r '.token') - -# update booking status -echo "API Request: http --ignore-stdin PUT $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID \"status_text=deploying\" \"Authorization:Bearer DUMMY_TOKEN\"" -http --ignore-stdin PUT $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID \ - "Authorization:Bearer $NOLABS_TOKEN" \ - status_text=expired \ - floating_ip="N/A" diff --git a/jjb/nolabs/deploy.sh b/jjb/nolabs/deploy.sh deleted file mode 100644 index f1788e40c..000000000 --- a/jjb/nolabs/deploy.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -set -o errexit -set -o nounset -set -o pipefail - -cd $WORKSPACE -echo "Info: Cleaning the previous deployment" -echo "-------------------------------------------------------------------------" -./stop.sh -echo "-------------------------------------------------------------------------" -echo "Info: Deploying the new version of nolabs" -echo "-------------------------------------------------------------------------" -./start.sh -echo "-------------------------------------------------------------------------" -echo "Info: Deployment successful!" diff --git a/jjb/nolabs/handle-booking.sh b/jjb/nolabs/handle-booking.sh deleted file mode 100644 index fe5d29f48..000000000 --- a/jjb/nolabs/handle-booking.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -cd $WORKSPACE - -# install dependencies -sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) main universe restricted multiverse" > /dev/null -sudo apt install -y virtualenv jq > /dev/null -/bin/rm -rf /opt/engine $NOLABS_VENV -mkdir -p $NOLABS_VENV -virtualenv -p python3 $NOLABS_VENV > /dev/null -set +u -source $NOLABS_VENV/bin/activate > /dev/null -set -u -pip install httpie > /dev/null - -# check if the booking is cancelled or not -echo "API Request: http --ignore-stdin GET $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID | jq -r '.status_text'" -BOOKING_STATUS=$(http --ignore-stdin GET $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID | jq -r '.status_text') -if [[ $BOOKING_STATUS != 'new' ]]; then - echo "Info: Booking is either cancelled or not valid! Exiting!" - exit 0; -fi - -# get authentication token -echo "API Request: http --ignore-stdin POST $NOLABS_API_TOKENS_ENDPOINT --auth dummy@dummy.com:dummy | jq -r '.token'" -NOLABS_TOKEN=$(http --ignore-stdin POST $NOLABS_API_TOKENS_ENDPOINT --auth $NOLABS_API_USERNAME:$NOLABS_API_PASSWORD | jq -r '.token') -echo "API Request: http --ignore-stdin PUT $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID \"status_text=deploying\" \"Authorization:Bearer DUMMY_TOKEN\"" -http --ignore-stdin PUT $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID "status_text=deploying" \ - "Authorization:Bearer $NOLABS_TOKEN" - -# get ssh public key of the user -echo "API Request: http GET $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID | jq -r '.user_id'" -NOLABS_USER_ID=$(http GET $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID | jq -r '.user_id') -echo "API Request: http --ignore-stdin GET $NOLABS_API_USERS_ENDPOINT/$NOLABS_USER_ID \"Authorization:Bearer DUMMY_TOKEN\" | jq -r '.ssh_public_key'" -http --ignore-stdin GET $NOLABS_API_USERS_ENDPOINT/$NOLABS_USER_ID "Authorization:Bearer $NOLABS_TOKEN" | jq -r '.ssh_public_key' > $NOLABS_USER_SSHPUBKEY - -set +u -deactivate -set -u -# get the specific patch -cd $WORKSPACE -git fetch "https://gerrit.nordix.org/infra/engine" $GERRIT_REFSPEC && git checkout FETCH_HEAD - -export STACK_NAME="nordix-nolabs-booking${BOOKING_ID}-${DEPLOY_SCENARIO}" -echo "Info: STACK_NAME is set to $STACK_NAME" -cd engine -./deploy.sh -c -r heat -u /tmp/openrc -s $DEPLOY_SCENARIO -e "$HEAT_ENVIRONMENT_FILE" - -cd $WORKSPACE - -set +u -source $NOLABS_VENV/bin/activate > /dev/null -set -u -ENGINE_VERSION=$(git rev-parse HEAD) -cd /opt/engine/.cache/repos/swconfig -SCENARIO_VERSION=$(git rev-parse HEAD) -cd $WORKSPACE -FLOATING_IP=$(cat /opt/engine/.cache/config/inventory.ini | grep 'jumphost ansible_host' | awk '{print $2}' | cut -d'=' -f2) - -# get authentication token -echo "API Request: http --ignore-stdin POST $NOLABS_API_TOKENS_ENDPOINT --auth dummy@dummy.com:dummy | jq -r '.token'" -NOLABS_TOKEN=$(http --ignore-stdin POST $NOLABS_API_TOKENS_ENDPOINT --auth $NOLABS_API_USERNAME:$NOLABS_API_PASSWORD | jq -r '.token') - -# update booking -echo "API Request: http --ignore-stdin PUT $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID \ - \"Authorization:Bearer DUMMY_TOKEN\" \ - status_text=active \ - floating_ip=$FLOATING_IP \ - heat_stack_name=$STACK_NAME \ - scenario_deploy_log_url=${BUILD_URL}consoleFull \ - engine_version=$ENGINE_VERSION \ - scenario_version=$SCENARIO_VERSION" -http --ignore-stdin PUT $NOLABS_API_BOOKINGS_ENDPOINT/$BOOKING_ID \ - "Authorization:Bearer $NOLABS_TOKEN" \ - status_text=active \ - floating_ip=$FLOATING_IP \ - heat_stack_name=$STACK_NAME \ - scenario_deploy_log_url=${BUILD_URL}consoleFull \ - engine_version=$ENGINE_VERSION \ - scenario_version=$SCENARIO_VERSION diff --git a/jjb/nolabs/nolabs-booking-jobs.yaml b/jjb/nolabs/nolabs-booking-jobs.yaml deleted file mode 100644 index f36796967..000000000 --- a/jjb/nolabs/nolabs-booking-jobs.yaml +++ /dev/null @@ -1,180 +0,0 @@ ---- -# -# ============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: 'nolabs-booking' - - project: 'infra/engine' - - stream: - - 'master': - branch: '{stream}' - slave-label: 'nolabs-booking-slave' - build-timeout: 60 -# slave-label: 'vpod-deploy-ubuntu1804' - - booking-phase: - - 'handle' - - 'delete' - - target-site: - - 'test': - api-tokens-endpoint: 'http://188.212.108.245/api/tokens' - api-users-endpoint: 'http://188.212.108.245/api/users' - api-bookings-endpoint: 'http://188.212.108.245/api/bookings' - - 'production': - api-tokens-endpoint: 'https://labs.nordix.org/api/tokens' - api-users-endpoint: 'https://labs.nordix.org/api/users' - api-bookings-endpoint: 'https://labs.nordix.org/api/bookings' - - jobs: - - 'nolabs-{booking-phase}-booking-{target-site}site-{stream}' - -- job-template: - name: 'nolabs-{booking-phase}-booking-{target-site}site-{stream}' - - node: '{slave-label}' - - concurrent: true - - parameters: - - project-parameters: - project: '{project}' - branch: '{branch}' - - nordix-gerrit-parameters - - string: - name: TARGET_SITE - default: '{target-site}' - description: 'Target site to handle the bookings for.' -# - 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: BOOKING_PHASE - default: '{booking-phase}' - description: 'Phase of the booking.' - - string: - name: BOOKING_ID - default: 0 - description: 'ID of the booking to handle. Default is 0 which is a non-existent booking to prevent running the job by mistake.' - - string: - name: DEPLOY_SCENARIO - default: 'k8-mycoolplugin-mycoolfeature' - description: 'Scenario to deploy for the booking. Default is a non-existent scenario to prevent running the job by mistake.' - - string: - name: NOLABS_API_TOKENS_ENDPOINT - default: '{api-tokens-endpoint}' - description: 'API endpoint for tokens.' - - string: - name: NOLABS_API_USERS_ENDPOINT - default: '{api-users-endpoint}' - description: 'API endpoint for users.' - - string: - name: NOLABS_API_BOOKINGS_ENDPOINT - default: '{api-bookings-endpoint}' - description: 'API endpoint for bookings.' - - string: - name: NOLABS_USER_SSHPUBKEY - default: '/tmp/nolabs/id_rsa.pub' - description: 'SSH public key for the user who created the booking.' - - string: - name: NOLABS_VENV - default: '/tmp/nolabs/.venv' - description: 'Python virtualenv location to use.' - - string: - name: GERRIT_REFSPEC - default: 'refs/changes/74/3574/3' - description: 'Refspec to checkout' - - string: - name: HEAT_ENVIRONMENT_FILE - default: "file://$WORKSPACE/engine/provisioner/heat/playbooks/roles/bootstrap-hwconfig/files/heat-environment.yaml" - description: 'Using a special heat environment file until the change gets merged.' - - properties: - - logrotate -# - build-blocker: -# use-build-blocker: true -# blocking-jobs: -# - 'cloud-infra-verify-engine-.*' -# - 'cloud-infra-verify-scenario-.*' -# - 'cloud-infra-periodic-engine-.*' -# - 'k8-.*' -# - 'nolabs-.*' -# block-level: 'NODE' -# - throttle: -# max-per-node: 1 -# max-total: 10 -# option: project - - wrappers: - - credentials-binding: - - file: - credential-id: nordix-nolabs-openrcfile-city-karlskrona-defaultproject - variable: OPENRC_FILE - - username-password-separated: - credential-id: nordix-nolabs-jenkins-api-credentials - username: NOLABS_API_USERNAME - password: NOLABS_API_PASSWORD - - mask-passwords - - build-timeout: - timeout: '{build-timeout}' - - fix-workspace-permissions - - openstack: - single-use: True - - scm: - - git-scm: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: '{branch}' - refspec: '' - wipe_workspace: true - clean_before: false - - builders: - - description-setter: - description: $BOOKING_ID | $DEPLOY_SCENARIO - - '{booking-phase}booking-macro' - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/nolabs/nolabs-verify-merge-deploy-jobs.yaml b/jjb/nolabs/nolabs-verify-merge-deploy-jobs.yaml deleted file mode 100644 index 3a6a480e2..000000000 --- a/jjb/nolabs/nolabs-verify-merge-deploy-jobs.yaml +++ /dev/null @@ -1,238 +0,0 @@ ---- -# -# ============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: 'nolabs-verify-merge' - - project: 'nolabs' - - stream: - - 'master': - branch: '{stream}' - - jobs: - - 'nolabs-verify-{stream}': - slave-label: nolabs-dev - - 'nolabs-merge-{stream}': - slave-label: nolabs-dev - - 'nolabs-deploy-{stream}': - slave-label: nolabs-prod - -- job-template: - name: 'nolabs-verify-{stream}' - - concurrent: false - - 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.' - - properties: - - logrotate - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'nolabs-.*' - block-level: 'NODE' - - throttle: - max-per-node: 1 - max-total: 1 - option: project - - wrappers: - - build-timeout: - timeout: 10 - - 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: 'nolabs/website' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'false' - forbidden-file-paths: - - compare-type: ANT - pattern: '.gitignore' - - compare-type: ANT - pattern: '.gitreview' - - builders: - - shell: | - #!/bin/bash - echo "To be implemented" - -- job-template: - name: 'nolabs-merge-{stream}' - - concurrent: false - - 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.' - - properties: - - logrotate - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'nolabs-.*' - block-level: 'NODE' - - throttle: - max-per-node: 1 - max-total: 1 - option: project - - wrappers: - - build-timeout: - timeout: 10 - - fix-workspace-permissions - - scm: - - git-scm: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: '{branch}' - refspec: '' - wipe_workspace: true - clean_before: false - - triggers: - - gerrit: - server-name: 'Nordix Gerrit' - trigger-on: - - change-merged-event - - comment-added-contains-event: - comment-contains-value: 'remerge' - projects: - - project-compare-type: 'ANT' - project-pattern: 'nolabs/website' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'false' - forbidden-file-paths: - - compare-type: ANT - pattern: '.gitignore' - - compare-type: ANT - pattern: '.gitreview' - - builders: - - shell: | - #!/bin/bash - echo "To be implemented" - -- job-template: - name: 'nolabs-deploy-{stream}' - - concurrent: false - - 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.' - - properties: - - logrotate - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'nolabs-.*' - block-level: 'NODE' - - throttle: - max-per-node: 1 - max-total: 1 - option: project - - wrappers: - - build-timeout: - timeout: 10 - - fix-workspace-permissions - - scm: - - git-scm: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: '{branch}' - refspec: '' - wipe_workspace: true - clean_before: false - - triggers: - - gerrit: - server-name: 'Nordix Gerrit' - trigger-on: - - comment-added-contains-event: - comment-contains-value: 'website-deploy-to-production' - projects: - - project-compare-type: 'ANT' - project-pattern: 'nolabs/website' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'false' - forbidden-file-paths: - - compare-type: ANT - pattern: '.gitignore' - - compare-type: ANT - pattern: '.gitreview' - - builders: - - shell: | - #!/bin/bash - echo "To be implemented" - -# vim: set ts=2 sw=2 expandtab: diff --git a/jjb/nolabs/verify.sh b/jjb/nolabs/verify.sh deleted file mode 100644 index 4c3745f54..000000000 --- a/jjb/nolabs/verify.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -set -o errexit -set -o nounset -set -o pipefail - -cd $WORKSPACE -app=nolabs-verify-${BUILD_ID} -echo "Info: Building the container image nolabs-verify-${BUILD_ID}" -echo "-------------------------------------------------------------------------" -docker build -t $app . -echo "-------------------------------------------------------------------------" -echo "Info: Build successful!" -docker rmi -f $app > /dev/null diff --git a/jjb/onap/oom/oom-build-jobs.yaml b/jjb/onap/oom/oom-build-jobs.yaml deleted file mode 100644 index 2db29cfed..000000000 --- a/jjb/onap/oom/oom-build-jobs.yaml +++ /dev/null @@ -1,172 +0,0 @@ ---- -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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========================================================= - -# this job gets triggered when push-upstream is commented on a change on Nordix Gerrit. -- project: - name: 'oom-helm-build' - project: 'infra/installer/oom' - - stream: - - 'master': - branch: 'master' - - jobs: - - 'onap-oom-helm-build-{stream}' - -- job-template: - name: 'onap-oom-helm-build-{stream}' - node: infra-ubuntu2004 - disabled: false - concurrent: false - - parameters: - - project-parameters: - project: '{project}' - branch: '{branch}' - description: 'The project and branch for which the change is proposed' - - nordix-gerrit-parameters - - string: - name: HELM_URL - default: 'https://get.helm.sh/helm-v3.5.0-linux-amd64.tar.gz' - description: Specifies the URL to fetch Helm. - - string: - name: HELM_PUSH_URL - default: 'https://github.com/chartmuseum/helm-push/releases/download/v0.9.0/helm-push_0.9.0_linux_amd64.tar.gz' - description: Specifies the URL to fetch the Helm-push plugin. - - string: - name: CHARTMUSEUM_URL - default: 'https://get.helm.sh/chartmuseum-v0.13.1-linux-amd64.tar.gz' - description: Specifies the URL to fetch Chartmuseum. - - string: - name: YQ_URL - default: 'https://github.com/mikefarah/yq/releases/download/v4.7.0/yq_linux_amd64' - description: Specifies the URL to fetch yq. - - string: - name: NORDIX_REGISTRY - default: "https://registry.nordix.org" - description: Chart registry to upload the built Helm chart. - - string: - name: NORDIX_ARM_HTTPS_URL - default: "https://artifactory.nordix.org/artifactory" - description: "Artifact Repository Manager to which to upload the built artifacts." - - string: - name: ONAP_OOM_URL - default: 'https://gerrit.onap.org/r/oom' - description: URL to fetch OOM Git repository. - - string: - name: ONAP_OOM_VERSION - default: 'master' - description: Spcifies the version of OOM to fetch. - - string: - name: ONAP_OOM_HELM_CHART_VALUES_REPLACEMENTS - description: A comma-separated list of yq expressions to execute on ONAP umbrella chart values.yaml - default: > - explode(.), - .global.masterPassword="nordix", - .global.repository="nexus3.onap.org:10001", - .global.imagePullPolicy="IfNotPresent", - .global.ingress.enabled=true, - .global.serviceMesh.enabled=true, - .global.metrics.enabled=true, - .global.addTestingComponents=true, - .a1policymanagement.enabled=true, - .aaf.enabled=true, - .aai.enabled=true, - .appc.enabled=true, - .cassandra.enabled=true, - .cds.enabled=true, - .cert-wrapper.enabled=true, - .clamp.enabled=true, - .cli.enabled=true, - .consul.enabled=true, - .contrib.enabled=true, - .contrib.awx.enabled=false, - .contrib.netbox.enabled=false, - .cps.enabled=true, - .dcaegen2.enabled=true, - .dcaegen2-services.enabled=true, - .dcaemod.enabled=true, - .dmaap.enabled=true, - .esr.enabled=true, - .holmes.enabled=true, - .mariadb-galera.enabled=true, - .modeling.enabled=true, - .msb.enabled=true, - .multicloud.enabled=true, - .multicloud.multicloud-starlingx.enabled=true, - .multicloud.multicloud-vio.enabled=true, - .multicloud.multicloud-windriver.enabled=true, - .nbi.enabled=true, - .oof.enabled=true, - .platform.enabled=true, - .policy.enabled=true, - .pomba.enabled=false, - .portal.enabled=true, - .repository-wrapper.enabled=true, - .robot.enabled=true, - .sdc.enabled=true, - .sdnc.enabled=true, - .sniro-emulator.enabled=false, - .so.enabled=true, - .uui.enabled=false, - .vfc.enabled=false, - .vid.enabled=true, - .vndsdk.enabled=true - - string: - name: ONAP_OOM_HELM_CHART_VALUES_OVERRIDE - default: '' - description: Specifies the location of an additional file to pass to helm template. - - scm: - - git-scm-gerrit: - ssh-credentials-id: nordixinfra-nordix-gerrit-ssh - branch: '{branch}' - refspec: '+refs/heads/{branch}:refs/remotes/origin/{branch}' - wipe_workspace: true - clean_before: false - - wrappers: - - build-timeout: - timeout: 600 - - nordixinfra-harbor-creds-wrapper - - credentials-binding: - - username-password-separated: - credential-id: 'nordix-cicd-arm-credentials' - username: NORDIX_ARM_USERNAME - password: NORDIX_ARM_TOKEN - - mask-passwords - - fix-workspace-permissions - - builders: - - 'oom-build-installdeps-macro' - - 'oom-build-wrapper-macro' - - 'oom-upload-macro' - - publishers: - - notify-slack: - slack-channel: '#infra' - notify-start: false - notify-success: false - notify-failure: false - notify-back-to-normal: false - - triggers: - - timed: '@daily' - -# vim: ts=2 sw=2 expandtab: