diff --git a/jenkins/promotion/release-promotion-parallel.jenkinsfile b/jenkins/promotion/release-promotion-parallel.jenkinsfile deleted file mode 100644 index 9d9a7f857d..0000000000 --- a/jenkins/promotion/release-promotion-parallel.jenkinsfile +++ /dev/null @@ -1,437 +0,0 @@ -/* - * Copyright OpenSearch Contributors - * SPDX-License-Identifier: Apache-2.0 - * - * The OpenSearch Contributors require contributions made to - * this file be licensed under the Apache-2.0 license or a - * compatible open source license. - */ - -lib = library(identifier: 'jenkins@5.11.1', retriever: modernSCM([ - $class: 'GitSCMSource', - remote: 'https://github.com/opensearch-project/opensearch-build-libraries.git', -])) - -pipeline { - options { - timeout(time: 4, unit: 'HOURS') - } - agent none - environment { - AGENT_LINUX_X64 = 'Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host' - } - parameters { - string( - name: 'RELEASE_VERSION', - description: 'Release version', - trim: true - ) - string( - name: 'OPENSEARCH_RC_BUILD_NUMBER', - description: 'OpenSearch Release Candidate Build Number', - trim: true - ) - string( - name: 'OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER', - description: 'OpenSearch Dashboards Release Candidate Build Number', - trim: true - ) - } - stages { - stage('Parameters Check') { - steps { - script { - currentBuild.description = """RELEASE: ${RELEASE_VERSION}
OS_RC: ${OPENSEARCH_RC_BUILD_NUMBER}
OSD_RC: ${OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER}""" - if(RELEASE_VERSION.isEmpty() || OPENSEARCH_RC_BUILD_NUMBER.isEmpty() || OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER.isEmpty()) { - currentBuild.result = 'ABORTED' - error('Make sure all the parameters are passed in.') - } - } - } - } - stage('Publish'){ - parallel { - stage('OpenSearch Debian Apt promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-repos for OpenSearch Debian Apt' - build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_REPO_TYPE', value: 'apt'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for Debian Apt OpenSearch!' - } - } - stage('OpenSearch Yum promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-repos for OpenSearch Yum' - build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_REPO_TYPE', value: 'yum'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch yum!' - } - } - stage('OpenSearch Dashboards Debian Apt promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-repos for OpenSearch Dashboards apt' - build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_REPO_TYPE', value: 'apt'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for Debian Apt OpenSearch Dashboards!' - } - } - stage('OpenSearch Dashboards Yum promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-repos for OpenSearch Dashboards yum' - build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_REPO_TYPE', value: 'yum'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards yum!' - } - } - stage('OpenSearch Windows promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch windows' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'windows'), - string(name: 'DISTRIBUTION_NAME', value: 'zip'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch windows!' - } - } - stage('OpenSearch Dashboards Windows promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for opensearch windows' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'windows'), - string(name: 'DISTRIBUTION_NAME', value: 'zip'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards windows!' - } - } - stage('OpenSearch Linux deb arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux deb arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'deb'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux deb arm64!' - } - } - stage('OpenSearch Linux deb x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux deb x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'deb'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux deb x64!' - } - } - stage('OpenSearch Dashboards Linux deb arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux deb arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'deb'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux deb arm64!' - } - } - stage('OpenSearch Dashboards Linux deb x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux deb x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'deb'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux deb x64!' - } - } - stage('OpenSearch Linux rpm arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux rpm arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'rpm'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux rpm arm64!' - } - } - stage('OpenSearch Linux rpm x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux rpm x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'rpm'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux rpm x64!' - } - } - stage('OpenSearch Dashboards Linux rpm arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux rpm arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'rpm'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux rpm arm64!' - } - } - stage('OpenSearch Dashboards Linux rpm x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux rpm x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'rpm'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux rpm x64!' - } - } - stage('OpenSearch Linux tar arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux tar arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'tar'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux tar arm64!' - } - } - stage('OpenSearch Dashboards Linux tar arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux tar arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'tar'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux tar arm64!' - } - } - stage('OpenSearch Dashboards Linux tar x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux tar x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'tar'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux tar x64!' - } - } - } - } - stage('Publish OpenSearch Linux tar x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux tar x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'tar'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux rpm x64!' - } - } - } - post { - always { - node(AGENT_LINUX_X64) { - checkout scm - script { - postCleanup() - } - } - } - } -} diff --git a/jenkins/promotion/release-promotion.jenkinsfile b/jenkins/promotion/release-promotion.jenkinsfile index e5b2de3a42..768ced86ea 100644 --- a/jenkins/promotion/release-promotion.jenkinsfile +++ b/jenkins/promotion/release-promotion.jenkinsfile @@ -36,6 +36,11 @@ pipeline { description: 'OpenSearch Dashboards Release Candidate Build Number', trim: true ) + booleanParam( + name: 'TAG_DOCKER_LATEST', + defaultValue: true, + description: 'Tag the images as latest' + ) } stages { stage('Parameters Check') { @@ -49,314 +54,360 @@ pipeline { } } } - stage('OpenSearch Debian Apt promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('Publish'){ + parallel { + stage('OpenSearch Debian Apt promotion') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-repos for OpenSearch Debian Apt' + build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), + string(name: 'DISTRIBUTION_REPO_TYPE', value: 'apt'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for Debian Apt OpenSearch!' + } } - } - steps { - echo 'Triggering distribution-promote-repos for OpenSearch Debian Apt' - build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_REPO_TYPE', value: 'apt'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for Debian Apt OpenSearch!' - } - } - stage('OpenSearch Yum promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Yum promotion') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-repos for OpenSearch Yum' + build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), + string(name: 'DISTRIBUTION_REPO_TYPE', value: 'yum'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch yum!' + } } - } - steps { - echo 'Triggering distribution-promote-repos for OpenSearch Yum' - build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_REPO_TYPE', value: 'yum'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch yum!' - } - } - stage('OpenSearch Dashboards Debian Apt promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Dashboards Debian Apt promotion') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-repos for OpenSearch Dashboards apt' + build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), + string(name: 'DISTRIBUTION_REPO_TYPE', value: 'apt'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for Debian Apt OpenSearch Dashboards!' + } } - } - steps { - echo 'Triggering distribution-promote-repos for OpenSearch Dashboards apt' - build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_REPO_TYPE', value: 'apt'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for Debian Apt OpenSearch Dashboards!' - } - } - stage('OpenSearch Dashboards Yum promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Dashboards Yum promotion') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-repos for OpenSearch Dashboards yum' + build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), + string(name: 'DISTRIBUTION_REPO_TYPE', value: 'yum'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Dashboards yum!' + } } - } - steps { - echo 'Triggering distribution-promote-repos for OpenSearch Dashboards yum' - build job: 'distribution-promote-repos', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_REPO_TYPE', value: 'yum'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards yum!' - } - } - stage('OpenSearch Windows promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Windows promotion') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch windows' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'windows'), + string(name: 'DISTRIBUTION_NAME', value: 'zip'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch windows!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch windows' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'windows'), - string(name: 'DISTRIBUTION_NAME', value: 'zip'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch windows!' - } - } - stage('OpenSearch Dashboards Windows promotion') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Dashboards Windows promotion') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for opensearch windows' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'windows'), + string(name: 'DISTRIBUTION_NAME', value: 'zip'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Dashboards windows!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for opensearch windows' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'windows'), - string(name: 'DISTRIBUTION_NAME', value: 'zip'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards windows!' - } - } - stage('OpenSearch Linux deb arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Linux deb arm64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Linux deb arm64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'deb'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Linux deb arm64!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux deb arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'deb'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux deb arm64!' - } - } - stage('OpenSearch Linux deb x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Linux deb x64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Linux deb x64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'deb'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Linux deb x64!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux deb x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'deb'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux deb x64!' - } - } - stage('OpenSearch Dashboards Linux deb arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Dashboards Linux deb arm64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux deb arm64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'deb'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Dashboards Linux deb arm64!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux deb arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'deb'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux deb arm64!' - } - } - stage('OpenSearch Dashboards Linux deb x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Dashboards Linux deb x64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux deb x64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'deb'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Dashboards Linux deb x64!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux deb x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'deb'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux deb x64!' - } - } - stage('OpenSearch Linux rpm arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Linux rpm arm64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Linux rpm arm64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'rpm'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Linux rpm arm64!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux rpm arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'rpm'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux rpm arm64!' - } - } - stage('OpenSearch Linux rpm x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Linux rpm x64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Linux rpm x64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'rpm'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Linux rpm x64!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux rpm x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'rpm'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux rpm x64!' - } - } - stage('OpenSearch Dashboards Linux rpm arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Dashboards Linux rpm arm64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux rpm arm64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'rpm'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Dashboards Linux rpm arm64!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux rpm arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'rpm'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux rpm arm64!' - } - } - stage('OpenSearch Dashboards Linux rpm x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Dashboards Linux rpm x64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux rpm x64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'rpm'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Dashboards Linux rpm x64!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux rpm x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'rpm'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux rpm x64!' - } - } - stage('OpenSearch Linux tar arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('OpenSearch Linux tar arm64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Linux tar arm64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'tar'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Linux tar arm64!' + } + } + stage('OpenSearch Dashboards Linux tar arm64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux tar arm64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'tar'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Dashboards Linux tar arm64!' + } + } + stage('OpenSearch Dashboards Linux tar x64') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux tar x64' + build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), + string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), + string(name: 'DISTRIBUTION_NAME', value: 'tar'), + string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), + string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), + string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), + ] + echo 'Promotion successful for OpenSearch Dashboards Linux tar x64!' + } } - } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Linux tar arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'tar'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Linux tar arm64!' } } - stage('OpenSearch Linux tar x64') { + stage('Publish OpenSearch Linux tar x64') { agent { docker { label AGENT_LINUX_X64 @@ -377,46 +428,94 @@ pipeline { echo 'Promotion successful for OpenSearch Linux rpm x64!' } } - stage('OpenSearch Dashboards Linux tar arm64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true + stage('Invalidate cloudfront and promote docker'){ + parallel { + stage('Invalidate Cloudfront') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + script { + echo 'Invalidating cloudfront' + def majorVersion=params.RELEASE_VERSION.find(/\d/) + withCredentials([ + string(credentialsId: 'jenkins-aws-account-public', variable: 'AWS_ACCOUNT_PUBLIC'), + string(credentialsId: 'cloudfront-distribution-id', variable: 'CLOUDFRONT_DISTRIBUTION_ID')]) { + withAWS(role: 'opensearch-bundle', roleAccount: "${AWS_ACCOUNT_PUBLIC}", duration: 900, roleSessionName: 'jenkins-session') { + cfInvalidate(distribution: "${CLOUDFRONT_DISTRIBUTION_ID}", paths: ["/releases/bundle/opensearch/${majorVersion}.x/*", "/releases/bundle/opensearch-dashboards/${majorVersion}.x/*"], waitForCompletion: true) + } + } + } } } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux tar arm64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'tar'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'arm64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux tar arm64!' + stage('Promote Docker') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering docker promotion' + build job: 'docker-promotion', wait: true, parameters: [ + string(name: 'SOURCE_IMAGES', value: "opensearch:${params.RELEASE_VERSION}.${params.OPENSEARCH_RC_BUILD_NUMBER}, opensearch-dashboards:${params.RELEASE_VERSION}.${params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER}"), + string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), + string(name: 'DOCKER_HUB_PROMOTE', value: true), + string(name: 'ECR_PROMOTE', value: true), + string(name: 'TAG_LATEST', value: "${params.TAG_DOCKER_LATEST}"), + string(name: 'TAG_MAJOR_VERSION', value: true) + ] + echo 'Promoted Docker successfully!' + } + } } } - stage('OpenSearch Dashboards Linux tar x64') { - agent { - docker { - label AGENT_LINUX_X64 - image 'docker/library/alpine:3' - registryUrl 'https://public.ecr.aws/' - alwaysPull true - } + stage('Validate the artifacts') { + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true } - steps { - echo 'Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux tar x64' - build job: 'distribution-promote-artifacts', wait: true, parameters: [string(name: 'DISTRIBUTION_JOB_NAME', value: 'distribution-build-opensearch-dashboards'), - string(name: 'DISTRIBUTION_PLATFORM', value: 'linux'), - string(name: 'DISTRIBUTION_NAME', value: 'tar'), - string(name: 'DISTRIBUTION_ARCHITECTURE', value: 'x64'), - string(name: 'DISTRIBUTION_BUILD_NUMBER', value: params.OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER), - string(name: 'INPUT_MANIFEST', value: "${params.RELEASE_VERSION}/opensearch-dashboards-${params.RELEASE_VERSION}.yml"), - ] - echo 'Promotion successful for OpenSearch Dashboards Linux tar x64!' + } + steps { + echo 'Triggering validation workflow' + build job: 'distribution-validation', wait: true, parameters: [ + string(name: 'VERSION', value: "${params.RELEASE_VERSION}"), + string(name: 'DISTRIBUTION', value: 'tar rpm yum deb zip docker'), + string(name: 'ARCHITECTURE', value: 'x64 arm64'), + string(name: 'PLATFORM', value: 'linux windows'), + string(name: 'PROJECTS', value: 'Both'), + string(name: 'ARTIFACT_TYPE', value: 'production'), + string(name: 'OPTIONAL_ARGS', value: 'validate-digests-only') + ] + echo 'Artifacts are successfully validated!' + } + } + stage('Publish to Maven'){ + agent { + docker { + label AGENT_LINUX_X64 + image 'docker/library/alpine:3' + registryUrl 'https://public.ecr.aws/' + alwaysPull true + } + } + steps { + echo 'Triggering publish to maven workflow' + build job: 'publish-to-maven', wait: false, parameters: [ + string(name: 'BUILD_ID', value: "${params.OPENSEARCH_RC_BUILD_NUMBER}"), + string(name: 'VERSION', value: "${params.RELEASE_VERSION}") + ] + echo 'Promoted to maven successfully!' } } } diff --git a/tests/jenkins/TestOpenSearchReleasePromotionParallelTest.groovy b/tests/jenkins/TestOpenSearchReleasePromotionParallelTest.groovy deleted file mode 100644 index ebef57adc0..0000000000 --- a/tests/jenkins/TestOpenSearchReleasePromotionParallelTest.groovy +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Copyright OpenSearch Contributors - * SPDX-License-Identifier: Apache-2.0 - */ - -import jenkins.tests.BuildPipelineTest -import org.junit.Before -import org.junit.Test -import org.yaml.snakeyaml.Yaml -import static com.lesfurets.jenkins.unit.global.lib.LibraryConfiguration.library -import static com.lesfurets.jenkins.unit.global.lib.GitSource.gitSource -import static com.lesfurets.jenkins.unit.MethodCall.callArgsToString -import static org.hamcrest.CoreMatchers.hasItem -import static org.hamcrest.MatcherAssert.assertThat -import static org.junit.jupiter.api.Assertions.assertThrows - -class TestOpenSearchReleasePromotionTestParallel extends BuildPipelineTest { - - @Override - @Before - void setUp() { - - helper.registerSharedLibrary( - library().name('jenkins') - .defaultVersion('5.11.1') - .allowOverride(true) - .implicit(true) - .targetPath('vars') - .retriever(gitSource('https://github.com/opensearch-project/opensearch-build-libraries.git')) - .build() - ) - - super.setUp() - addParam('RELEASE_VERSION', '1.0.0') - addParam('OPENSEARCH_RC_BUILD_NUMBER', '2050') - addParam('OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER', '3050') - binding.setVariable('AGENT_LINUX_X64', 'Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host') - } - - @Test - void shouldExecuteWithoutErrors() { - super.testPipeline('jenkins/promotion/release-promotion-parallel.jenkinsfile', - 'tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion-parallel.jenkinsfile') - - def callStack = helper.getCallStack() - // Parameters Check - assertCallStack().contains('stage(Parameters Check, groovy.lang.Closure)') - - // OpenSearch Debian Apt promotion - assertCallStack().contains('stage(OpenSearch Debian Apt promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_REPO_TYPE, value=apt})") - - // OpenSearch Yum promotion - assertCallStack().contains('stage(OpenSearch Yum promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_REPO_TYPE, value=yum})") - - // OpenSearch Dashboards Debian Apt promotion - assertCallStack().contains('stage(OpenSearch Dashboards Debian Apt promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_REPO_TYPE, value=apt})") - - // OpenSearch Dashboards Yum promotion - assertCallStack().contains('stage(OpenSearch Dashboards Yum promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_REPO_TYPE, value=yum})") - - // OpenSearch Windows promotion - assertCallStack().contains('stage(OpenSearch Windows promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=windows})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=zip})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") - - // OpenSearch Dashboards Windows promotion - assertCallStack().contains('stage(OpenSearch Dashboards Windows promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=windows})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=zip})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") - - // OpenSearch Linux deb arm64 - assertCallStack().contains('stage(OpenSearch Linux deb arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=deb})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") - - // OpenSearch Linux deb x64 - assertCallStack().contains('stage(OpenSearch Linux deb x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=deb})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") - - // OpenSearch Dashboards Linux deb arm64 - assertCallStack().contains('stage(OpenSearch Dashboards Linux deb arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=deb})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") - - // OpenSearch Dashboards Linux deb x64 - assertCallStack().contains('stage(OpenSearch Dashboards Linux deb x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=deb})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050})") - - // OpenSearch Linux rpm arm64 - assertCallStack().contains('stage(OpenSearch Linux rpm arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=rpm})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") - - // OpenSearch Linux rpm x64 - assertCallStack().contains('stage(OpenSearch Linux rpm x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=rpm})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") - - // OpenSearch Dashboards Linux rpm arm64 - assertCallStack().contains('stage(OpenSearch Dashboards Linux rpm arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=rpm})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") - - // OpenSearch Dashboards Linux rpm x64 - assertCallStack().contains('stage(OpenSearch Dashboards Linux rpm x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=rpm})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") - - // OpenSearch Linux tar arm64 - assertCallStack().contains('stage(OpenSearch Linux tar arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=tar})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") - - // OpenSearch Dashboards Linux tar arm64 - assertCallStack().contains('stage(OpenSearch Dashboards Linux tar arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=tar})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") - - // OpenSearch Dashboards Linux tar x64 - assertCallStack().contains('stage(OpenSearch Dashboards Linux tar x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=tar})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") - - // OpenSearch Linux tar x64 - assertCallStack().contains('stage(Publish OpenSearch Linux tar x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=tar})") - assertCallStack().contains("release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") - } -} diff --git a/tests/jenkins/TestOpenSearchReleasePromotionTest.groovy b/tests/jenkins/TestOpenSearchReleasePromotionTest.groovy index 723d56bb34..25947b6f23 100644 --- a/tests/jenkins/TestOpenSearchReleasePromotionTest.groovy +++ b/tests/jenkins/TestOpenSearchReleasePromotionTest.groovy @@ -12,7 +12,6 @@ import static com.lesfurets.jenkins.unit.global.lib.GitSource.gitSource import static com.lesfurets.jenkins.unit.MethodCall.callArgsToString import static org.hamcrest.CoreMatchers.hasItem import static org.hamcrest.MatcherAssert.assertThat -import static org.junit.jupiter.api.Assertions.assertThrows class TestOpenSearchReleasePromotionTest extends BuildPipelineTest { @@ -31,6 +30,12 @@ class TestOpenSearchReleasePromotionTest extends BuildPipelineTest { ) super.setUp() + + helper.registerAllowedMethod('withAWS', [Map, Closure], { args, closure -> + closure.delegate = delegate + return helper.callClosure(closure) + }) + helper.registerAllowedMethod('cfInvalidate', [Map]) addParam('RELEASE_VERSION', '1.0.0') addParam('OPENSEARCH_RC_BUILD_NUMBER', '2050') addParam('OPENSEARCH_DASHBOARDS_RC_BUILD_NUMBER', '3050') @@ -48,121 +53,158 @@ class TestOpenSearchReleasePromotionTest extends BuildPipelineTest { // OpenSearch Debian Apt promotion assertCallStack().contains('stage(OpenSearch Debian Apt promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_REPO_TYPE, value=apt})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_REPO_TYPE, value=apt})') // OpenSearch Yum promotion assertCallStack().contains('stage(OpenSearch Yum promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_REPO_TYPE, value=yum})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_REPO_TYPE, value=yum})') // OpenSearch Dashboards Debian Apt promotion assertCallStack().contains('stage(OpenSearch Dashboards Debian Apt promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_REPO_TYPE, value=apt})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_REPO_TYPE, value=apt})') // OpenSearch Dashboards Yum promotion assertCallStack().contains('stage(OpenSearch Dashboards Yum promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_REPO_TYPE, value=yum})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_REPO_TYPE, value=yum})') // OpenSearch Windows promotion assertCallStack().contains('stage(OpenSearch Windows promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=windows})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=zip})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=windows})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=zip})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})') // OpenSearch Dashboards Windows promotion assertCallStack().contains('stage(OpenSearch Dashboards Windows promotion, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=windows})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=zip})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=windows})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=zip})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})') // OpenSearch Linux deb arm64 assertCallStack().contains('stage(OpenSearch Linux deb arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=deb})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=deb})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})') // OpenSearch Linux deb x64 assertCallStack().contains('stage(OpenSearch Linux deb x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=deb})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=deb})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})') // OpenSearch Dashboards Linux deb arm64 assertCallStack().contains('stage(OpenSearch Dashboards Linux deb arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=deb})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=deb})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})') // OpenSearch Dashboards Linux deb x64 assertCallStack().contains('stage(OpenSearch Dashboards Linux deb x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=deb})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=deb})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050})') // OpenSearch Linux rpm arm64 assertCallStack().contains('stage(OpenSearch Linux rpm arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=rpm})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=rpm})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})') // OpenSearch Linux rpm x64 assertCallStack().contains('stage(OpenSearch Linux rpm x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=rpm})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=rpm})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})') // OpenSearch Dashboards Linux rpm arm64 assertCallStack().contains('stage(OpenSearch Dashboards Linux rpm arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=rpm})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=rpm})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})') // OpenSearch Dashboards Linux rpm x64 assertCallStack().contains('stage(OpenSearch Dashboards Linux rpm x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=rpm})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=rpm})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})') // OpenSearch Linux tar arm64 assertCallStack().contains('stage(OpenSearch Linux tar arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=tar})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") - - // OpenSearch Linux tar x64 - assertCallStack().contains('stage(OpenSearch Linux tar x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=tar})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=tar})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})') // OpenSearch Dashboards Linux tar arm64 assertCallStack().contains('stage(OpenSearch Dashboards Linux tar arm64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=tar})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=tar})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64})') // OpenSearch Dashboards Linux tar x64 assertCallStack().contains('stage(OpenSearch Dashboards Linux tar x64, groovy.lang.Closure)') - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_NAME, value=tar})") - assertCallStack().contains("release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})") + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=tar})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})') + + // OpenSearch Linux tar x64 + assertCallStack().contains('stage(Publish OpenSearch Linux tar x64, groovy.lang.Closure)') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_NAME, value=tar})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64})') + + // Docker promotion + assertCallStack().contains('stage(Promote Docker, groovy.lang.Closure)') + assertCallStack().contains('release-promotion.string({name=SOURCE_IMAGES, value=opensearch:1.0.0.2050, opensearch-dashboards:1.0.0.3050})') + assertCallStack().contains('release-promotion.string({name=RELEASE_VERSION, value=1.0.0})') + assertCallStack().contains('release-promotion.string({name=DOCKER_HUB_PROMOTE, value=true})') + assertCallStack().contains('release-promotion.string({name=ECR_PROMOTE, value=true})') + assertCallStack().contains('release-promotion.string({name=TAG_LATEST, value=true})') + assertCallStack().contains('release-promotion.string({name=TAG_MAJOR_VERSION, value=true})') + assertCallStack().contains('release-promotion.build({job=docker-promotion, wait=true, parameters=[null, null, null, null, null, null]})') + + // Validation Workflow + assertCallStack().contains('stage(Validate the artifacts, groovy.lang.Closure)') + assertCallStack().contains('release-promotion.string({name=VERSION, value=1.0.0})') + assertCallStack().contains('release-promotion.string({name=DISTRIBUTION, value=tar rpm yum deb zip docker})') + assertCallStack().contains('release-promotion.string({name=ARCHITECTURE, value=x64 arm64})') + assertCallStack().contains('release-promotion.string({name=PLATFORM, value=linux windows})') + assertCallStack().contains('release-promotion.string({name=PROJECTS, value=Both})') + assertCallStack().contains('release-promotion.string({name=ARTIFACT_TYPE, value=production})') + assertCallStack().contains('release-promotion.string({name=OPTIONAL_ARGS, value=validate-digests-only})') + assertCallStack().contains('release-promotion.build({job=distribution-validation, wait=true, parameters=[null, null, null, null, null, null, null]})') + + // Maven Promotion Workflow + assertCallStack().contains('stage(Publish to Maven, groovy.lang.Closure)') + assertCallStack().contains('release-promotion.echo(Triggering publish to maven workflow)') + assertCallStack().contains('release-promotion.string({name=BUILD_ID, value=2050})') + assertCallStack().contains('release-promotion.string({name=VERSION, value=1.0.0})') + assertCallStack().contains('release-promotion.build({job=publish-to-maven, wait=false, parameters=[null, null]})') + } + + @Test + void verifyCfnCommands() { + runScript('jenkins/promotion/release-promotion.jenkinsfile') + def callStack = helper.getCallStack() + assertCallStack().contains( + 'release-promotion.cfInvalidate({distribution=CLOUDFRONT_DISTRIBUTION_ID, paths=[/releases/bundle/opensearch/1.x/*, /releases/bundle/opensearch-dashboards/1.x/*], waitForCompletion=true})' + ) } -} +} \ No newline at end of file diff --git a/tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion-parallel.jenkinsfile.txt b/tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion-parallel.jenkinsfile.txt deleted file mode 100644 index e0597a3c82..0000000000 --- a/tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion-parallel.jenkinsfile.txt +++ /dev/null @@ -1,203 +0,0 @@ - release-promotion-parallel.run() - release-promotion-parallel.modernSCM({$class=GitSCMSource, remote=https://github.com/opensearch-project/opensearch-build-libraries.git}) - release-promotion-parallel.library({identifier=jenkins@5.11.1, retriever=null}) - release-promotion-parallel.pipeline(groovy.lang.Closure) - release-promotion-parallel.timeout({time=4, unit=HOURS}) - release-promotion-parallel.echo(Executing on agent [label:none]) - release-promotion-parallel.stage(Parameters Check, groovy.lang.Closure) - release-promotion-parallel.script(groovy.lang.Closure) - release-promotion-parallel.stage(OpenSearch Debian Apt promotion, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-repos for OpenSearch Debian Apt) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion-parallel.string({name=DISTRIBUTION_REPO_TYPE, value=apt}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-repos, wait=true, parameters=[null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for Debian Apt OpenSearch!) - release-promotion-parallel.stage(OpenSearch Yum promotion, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-repos for OpenSearch Yum) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion-parallel.string({name=DISTRIBUTION_REPO_TYPE, value=yum}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-repos, wait=true, parameters=[null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch yum!) - release-promotion-parallel.stage(OpenSearch Dashboards Debian Apt promotion, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-repos for OpenSearch Dashboards apt) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards}) - release-promotion-parallel.string({name=DISTRIBUTION_REPO_TYPE, value=apt}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-repos, wait=true, parameters=[null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for Debian Apt OpenSearch Dashboards!) - release-promotion-parallel.stage(OpenSearch Dashboards Yum promotion, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-repos for OpenSearch Dashboards yum) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards}) - release-promotion-parallel.string({name=DISTRIBUTION_REPO_TYPE, value=yum}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-repos, wait=true, parameters=[null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Dashboards yum!) - release-promotion-parallel.stage(OpenSearch Windows promotion, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch windows) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=windows}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=zip}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch windows!) - release-promotion-parallel.stage(OpenSearch Dashboards Windows promotion, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for opensearch windows) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=windows}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=zip}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Dashboards windows!) - release-promotion-parallel.stage(OpenSearch Linux deb arm64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Linux deb arm64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=deb}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Linux deb arm64!) - release-promotion-parallel.stage(OpenSearch Linux deb x64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Linux deb x64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=deb}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Linux deb x64!) - release-promotion-parallel.stage(OpenSearch Dashboards Linux deb arm64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux deb arm64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=deb}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Dashboards Linux deb arm64!) - release-promotion-parallel.stage(OpenSearch Dashboards Linux deb x64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux deb x64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=deb}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Dashboards Linux deb x64!) - release-promotion-parallel.stage(OpenSearch Linux rpm arm64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Linux rpm arm64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=rpm}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Linux rpm arm64!) - release-promotion-parallel.stage(OpenSearch Linux rpm x64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Linux rpm x64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=rpm}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Linux rpm x64!) - release-promotion-parallel.stage(OpenSearch Dashboards Linux rpm arm64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux rpm arm64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=rpm}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Dashboards Linux rpm arm64!) - release-promotion-parallel.stage(OpenSearch Dashboards Linux rpm x64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux rpm x64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=rpm}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Dashboards Linux rpm x64!) - release-promotion-parallel.stage(OpenSearch Linux tar arm64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Linux tar arm64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=tar}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Linux tar arm64!) - release-promotion-parallel.stage(OpenSearch Dashboards Linux tar arm64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux tar arm64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=tar}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=arm64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Dashboards Linux tar arm64!) - release-promotion-parallel.stage(OpenSearch Dashboards Linux tar x64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux tar x64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch-dashboards}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=tar}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=3050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Dashboards Linux tar x64!) - release-promotion-parallel.stage(Publish OpenSearch Linux tar x64, groovy.lang.Closure) - release-promotion-parallel.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion-parallel.echo(Triggering distribution-promote-artifacts for OpenSearch Linux tar x64) - release-promotion-parallel.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion-parallel.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion-parallel.string({name=DISTRIBUTION_NAME, value=tar}) - release-promotion-parallel.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) - release-promotion-parallel.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion-parallel.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion-parallel.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion-parallel.echo(Promotion successful for OpenSearch Linux rpm x64!) - release-promotion-parallel.node(Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, groovy.lang.Closure) - release-promotion-parallel.checkout(groovy.lang.Closure) - release-promotion-parallel.script(groovy.lang.Closure) - release-promotion-parallel.postCleanup() - postCleanup.cleanWs({disableDeferredWipeout=true, deleteDirs=true}) diff --git a/tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion.jenkinsfile.txt b/tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion.jenkinsfile.txt index 246325d558..d0beeda496 100644 --- a/tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion.jenkinsfile.txt +++ b/tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion.jenkinsfile.txt @@ -163,17 +163,6 @@ release-promotion.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) release-promotion.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) release-promotion.echo(Promotion successful for OpenSearch Linux tar arm64!) - release-promotion.stage(OpenSearch Linux tar x64, groovy.lang.Closure) - release-promotion.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) - release-promotion.echo(Triggering distribution-promote-artifacts for OpenSearch Linux tar x64) - release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) - release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux}) - release-promotion.string({name=DISTRIBUTION_NAME, value=tar}) - release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) - release-promotion.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) - release-promotion.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) - release-promotion.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) - release-promotion.echo(Promotion successful for OpenSearch Linux rpm x64!) release-promotion.stage(OpenSearch Dashboards Linux tar arm64, groovy.lang.Closure) release-promotion.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) release-promotion.echo(Triggering distribution-promote-artifacts for OpenSearch Dashboards Linux tar arm64) @@ -196,6 +185,56 @@ release-promotion.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-dashboards-1.0.0.yml}) release-promotion.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) release-promotion.echo(Promotion successful for OpenSearch Dashboards Linux tar x64!) + release-promotion.stage(Publish OpenSearch Linux tar x64, groovy.lang.Closure) + release-promotion.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) + release-promotion.echo(Triggering distribution-promote-artifacts for OpenSearch Linux tar x64) + release-promotion.string({name=DISTRIBUTION_JOB_NAME, value=distribution-build-opensearch}) + release-promotion.string({name=DISTRIBUTION_PLATFORM, value=linux}) + release-promotion.string({name=DISTRIBUTION_NAME, value=tar}) + release-promotion.string({name=DISTRIBUTION_ARCHITECTURE, value=x64}) + release-promotion.string({name=DISTRIBUTION_BUILD_NUMBER, value=2050}) + release-promotion.string({name=INPUT_MANIFEST, value=1.0.0/opensearch-1.0.0.yml}) + release-promotion.build({job=distribution-promote-artifacts, wait=true, parameters=[null, null, null, null, null, null]}) + release-promotion.echo(Promotion successful for OpenSearch Linux rpm x64!) + release-promotion.stage(Invalidate Cloudfront, groovy.lang.Closure) + release-promotion.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) + release-promotion.script(groovy.lang.Closure) + release-promotion.echo(Invalidating cloudfront) + release-promotion.string({credentialsId=jenkins-aws-account-public, variable=AWS_ACCOUNT_PUBLIC}) + release-promotion.string({credentialsId=cloudfront-distribution-id, variable=CLOUDFRONT_DISTRIBUTION_ID}) + release-promotion.withCredentials([AWS_ACCOUNT_PUBLIC, CLOUDFRONT_DISTRIBUTION_ID], groovy.lang.Closure) + release-promotion.withAWS({role=opensearch-bundle, roleAccount=AWS_ACCOUNT_PUBLIC, duration=900, roleSessionName=jenkins-session}, groovy.lang.Closure) + release-promotion.cfInvalidate({distribution=CLOUDFRONT_DISTRIBUTION_ID, paths=[/releases/bundle/opensearch/1.x/*, /releases/bundle/opensearch-dashboards/1.x/*], waitForCompletion=true}) + release-promotion.stage(Promote Docker, groovy.lang.Closure) + release-promotion.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) + release-promotion.echo(Triggering docker promotion) + release-promotion.string({name=SOURCE_IMAGES, value=opensearch:1.0.0.2050, opensearch-dashboards:1.0.0.3050}) + release-promotion.string({name=RELEASE_VERSION, value=1.0.0}) + release-promotion.string({name=DOCKER_HUB_PROMOTE, value=true}) + release-promotion.string({name=ECR_PROMOTE, value=true}) + release-promotion.string({name=TAG_LATEST, value=true}) + release-promotion.string({name=TAG_MAJOR_VERSION, value=true}) + release-promotion.build({job=docker-promotion, wait=true, parameters=[null, null, null, null, null, null]}) + release-promotion.echo(Promoted Docker successfully!) + release-promotion.stage(Validate the artifacts, groovy.lang.Closure) + release-promotion.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) + release-promotion.echo(Triggering validation workflow) + release-promotion.string({name=VERSION, value=1.0.0}) + release-promotion.string({name=DISTRIBUTION, value=tar rpm yum deb zip docker}) + release-promotion.string({name=ARCHITECTURE, value=x64 arm64}) + release-promotion.string({name=PLATFORM, value=linux windows}) + release-promotion.string({name=PROJECTS, value=Both}) + release-promotion.string({name=ARTIFACT_TYPE, value=production}) + release-promotion.string({name=OPTIONAL_ARGS, value=validate-digests-only}) + release-promotion.build({job=distribution-validation, wait=true, parameters=[null, null, null, null, null, null, null]}) + release-promotion.echo(Artifacts are successfully validated!) + release-promotion.stage(Publish to Maven, groovy.lang.Closure) + release-promotion.echo(Executing on agent [docker:[alwaysPull:true, args:, containerPerStageRoot:false, label:Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, image:docker/library/alpine:3, reuseNode:false, registryUrl:https://public.ecr.aws/, stages:[:]]]) + release-promotion.echo(Triggering publish to maven workflow) + release-promotion.string({name=BUILD_ID, value=2050}) + release-promotion.string({name=VERSION, value=1.0.0}) + release-promotion.build({job=publish-to-maven, wait=false, parameters=[null, null]}) + release-promotion.echo(Promoted to maven successfully!) release-promotion.node(Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host, groovy.lang.Closure) release-promotion.checkout(groovy.lang.Closure) release-promotion.script(groovy.lang.Closure)