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..d7fe29001c 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,92 @@ 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 version=params.RELEASE_VERSION.find(/\d/)
+ withCredentials([string(credentialsId: 'jenkins-aws-account-public', variable: 'AWS_ACCOUNT_PUBLIC')]) {
+ withAWS(role: 'opensearch-bundle', roleAccount: "${AWS_ACCOUNT_PUBLIC}", duration: 900, roleSessionName: 'jenkins-session') {
+ cfInvalidate(distribution: "${env.CLOUDFRONT_DISTRIBUTION_ID}", paths: ["/releases/bundle/opensearch/${version}.x/*", "/releases/bundle/opensearch-dashboards/${version}.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: true, 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..9fafccdf3b 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=true, parameters=[null, null]})')
+ }
+
+ @Test
+ void verifyCfnCommands() {
+ runScript('jenkins/promotion/release-promotion.jenkinsfile')
+ def callStack = helper.getCallStack()
+ assertCallStack().contains(
+ 'release-promotion.cfInvalidate({distribution=null, 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
index e0597a3c82..3308629cae 100644
--- a/tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion-parallel.jenkinsfile.txt
+++ b/tests/jenkins/jenkinsjob-regression-files/promotion/release-promotion-parallel.jenkinsfile.txt
@@ -196,6 +196,44 @@
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(Invalidate Cloudfront, 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.script(groovy.lang.Closure)
+ release-promotion-parallel.echo(Invalidating cloudfront)
+ release-promotion-parallel.string({credentialsId=jenkins-aws-account-public, variable=AWS_ACCOUNT_PUBLIC})
+ release-promotion-parallel.withCredentials([AWS_ACCOUNT_PUBLIC], groovy.lang.Closure)
+ release-promotion-parallel.withAWS({role=opensearch-bundle, roleAccount=AWS_ACCOUNT_PUBLIC, duration=900, roleSessionName=jenkins-session}, groovy.lang.Closure)
+ release-promotion-parallel.cfInvalidate({distribution=null, paths=[/releases/bundle/opensearch/1.x/*, /releases/bundle/opensearch-dashboards/1.x/*], waitForCompletion=true})
+ release-promotion-parallel.stage(Promote Docker, 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 docker promotion)
+ release-promotion-parallel.string({name=SOURCE_IMAGES, value=opensearch:1.0.0.2050, opensearch-dashboards:1.0.0.3050})
+ release-promotion-parallel.string({name=RELEASE_VERSION, value=1.0.0})
+ release-promotion-parallel.string({name=DOCKER_HUB_PROMOTE, value=true})
+ release-promotion-parallel.string({name=ECR_PROMOTE, value=true})
+ release-promotion-parallel.string({name=TAG_LATEST, value=true})
+ release-promotion-parallel.string({name=TAG_MAJOR_VERSION, value=true})
+ release-promotion-parallel.build({job=docker-promotion, wait=true, parameters=[null, null, null, null, null, null]})
+ release-promotion-parallel.echo(Promoted Docker successfully!)
+ release-promotion-parallel.stage(Validate the artifacts, 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 validation workflow)
+ release-promotion-parallel.string({name=VERSION, value=1.0.0})
+ release-promotion-parallel.string({name=DISTRIBUTION, value=tar rpm yum deb zip docker})
+ release-promotion-parallel.string({name=ARCHITECTURE, value=x64 arm64})
+ release-promotion-parallel.string({name=PLATFORM, value=linux windows})
+ release-promotion-parallel.string({name=PROJECTS, value=Both})
+ release-promotion-parallel.string({name=ARTIFACT_TYPE, value=production})
+ release-promotion-parallel.string({name=OPTIONAL_ARGS, value=validate-digests-only})
+ release-promotion-parallel.build({job=distribution-validation, wait=true, parameters=[null, null, null, null, null, null, null]})
+ release-promotion-parallel.echo(Artifacts are successfully validated!)
+ release-promotion-parallel.stage(Publish to Maven, 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 publish to maven workflow)
+ release-promotion-parallel.string({name=BUILD_ID, value=2050})
+ release-promotion-parallel.string({name=VERSION, value=1.0.0})
+ release-promotion-parallel.build({job=publish-to-maven, wait=true, parameters=[null, null]})
+ release-promotion-parallel.echo(Promoted to maven successfully!)
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)
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..76e5498bb0 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,55 @@
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.withCredentials([AWS_ACCOUNT_PUBLIC], 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=null, 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=true, 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)