This is an automated email from the ASF dual-hosted git repository.
tiagobento pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-tools.git
The following commit(s) were added to refs/heads/main by this push:
new b53193a484b NO-ISSUE: Release jobs adjustments and fixes (#2652)
b53193a484b is described below
commit b53193a484ba1bc528e2bff31e644c4231277f1a
Author: Rodrigo Antunes <[email protected]>
AuthorDate: Tue Oct 8 22:39:25 2024 -0300
NO-ISSUE: Release jobs adjustments and fixes (#2652)
---
.../release-jobs/Jenkinsfile.extended-services | 7 +-
.ci/jenkins/release-jobs/Jenkinsfile.kie-sandbox | 4 +-
.../release-jobs/Jenkinsfile.kn-plugin-workflow | 2 +-
.../Jenkinsfile.kogito-serverless-operator | 2 +-
.../release-jobs/Jenkinsfile.kogito-swf-builder | 2 +-
.../release-jobs/Jenkinsfile.kogito-swf-devmode | 2 +-
.ci/jenkins/release-jobs/Jenkinsfile.npm-packages | 2 +-
.ci/jenkins/release-jobs/Jenkinsfile.online-editor | 9 +-
...le.serverless-logic-web-tools-swf-builder-image | 2 +-
.../workflows/release_build_extended_services.yml | 503 ++++++++++++++++-----
10 files changed, 408 insertions(+), 127 deletions(-)
diff --git a/.ci/jenkins/release-jobs/Jenkinsfile.extended-services
b/.ci/jenkins/release-jobs/Jenkinsfile.extended-services
index bb3d6fc5d17..a2975b59730 100644
--- a/.ci/jenkins/release-jobs/Jenkinsfile.extended-services
+++ b/.ci/jenkins/release-jobs/Jenkinsfile.extended-services
@@ -140,11 +140,12 @@ pipeline {
}
steps {
script {
- env.RELEASE_TAR_FILE =
"incubator-kie-${params.RELEASE_CANDIDATE_VERSION}-sandbox-extended-services-linux-x86.tar.gz"
+ env.RELEASE_ZIP_FILE =
"incubator-kie-${params.RELEASE_CANDIDATE_VERSION}-sandbox-extended-services-linux-x86.zip"
sh """#!/bin/bash -el
mkdir ${env.RELEASE_ARTIFACTS_DIR}
- cp
kie-tools/packages/extended-services/dist/linux/kie_sandbox_extended_services.tar.gz
"${env.RELEASE_ARTIFACTS_DIR}/${RELEASE_TAR_FILE}"
+ cd kie-tools/packages/extended-services/dist/linux
+ zip "${env.RELEASE_ARTIFACTS_DIR}/${env.RELEASE_ZIP_FILE}"
./kie_sandbox_extended_services
""".trim()
}
}
@@ -158,7 +159,7 @@ pipeline {
dir("${env.RELEASE_ARTIFACTS_DIR}") {
script {
releaseUtils.setupSigningKey("${pipelineVars.asfReleaseGPGKeyCredentialsId}")
- releaseUtils.signArtifact("${RELEASE_TAR_FILE}")
+ releaseUtils.signArtifact("${RELEASE_ZIP_FILE}")
}
}
}
diff --git a/.ci/jenkins/release-jobs/Jenkinsfile.kie-sandbox
b/.ci/jenkins/release-jobs/Jenkinsfile.kie-sandbox
index 1204f17e9bf..7c9ccb20409 100644
--- a/.ci/jenkins/release-jobs/Jenkinsfile.kie-sandbox
+++ b/.ci/jenkins/release-jobs/Jenkinsfile.kie-sandbox
@@ -159,7 +159,7 @@ pipeline {
stage('Push kie-sandbox-image to Docker Hub') {
when {
- expression { !params.DRY_RUN }
+ expression { !params.DRY_RUN &&
params.RELEASE_CANDIDATE_VERSION == '' }
}
steps {
script {
@@ -217,7 +217,7 @@ pipeline {
sh """#!/bin/bash -el
mkdir ${env.RELEASE_ARTIFACTS_DIR}
- docker save
"${env.KIE_SANDBOX__imageRegistry}/${env.KIE_SANDBOX__imageAccount}/${env.KIE_SANDBOX__imageName}:${params.RELEASE_VERSION}"
| gzip > "${env.RELEASE_ARTIFACTS_DIR}/${env.RELEASE_IMAGE_TAR_FILE}"
+ docker save
"${env.KIE_SANDBOX_WEBAPP_IMAGE__imageRegistry}/${env.KIE_SANDBOX_WEBAPP_IMAGE__imageAccount}/${env.KIE_SANDBOX_WEBAPP_IMAGE__imageName}:${params.RELEASE_VERSION}"
| gzip > "${env.RELEASE_ARTIFACTS_DIR}/${env.RELEASE_IMAGE_TAR_FILE}"
""".trim()
}
}
diff --git a/.ci/jenkins/release-jobs/Jenkinsfile.kn-plugin-workflow
b/.ci/jenkins/release-jobs/Jenkinsfile.kn-plugin-workflow
index c8a8f809fc7..4437b7f4d02 100644
--- a/.ci/jenkins/release-jobs/Jenkinsfile.kn-plugin-workflow
+++ b/.ci/jenkins/release-jobs/Jenkinsfile.kn-plugin-workflow
@@ -102,7 +102,7 @@ pipeline {
steps {
dir('kie-tools') {
script {
- defaultSettingsFile =
'packages/sonataflow-image-common/resources/modules/kogito-maven/common/maven/settings.xml'
+ defaultSettingsFile =
'packages/sonataflow-image-common/resources/modules/kogito-maven/common/maven/maven-m2-repo-via-http-settings.xml.envsubst'
sh """#!/bin/bash -el
rm -rf "${defaultSettingsFile}"
cp "${env.MAVEN_SETTINGS_PATH}"
"${defaultSettingsFile}"
diff --git a/.ci/jenkins/release-jobs/Jenkinsfile.kogito-serverless-operator
b/.ci/jenkins/release-jobs/Jenkinsfile.kogito-serverless-operator
index 6971c1c13ee..2b838ba744f 100644
--- a/.ci/jenkins/release-jobs/Jenkinsfile.kogito-serverless-operator
+++ b/.ci/jenkins/release-jobs/Jenkinsfile.kogito-serverless-operator
@@ -123,7 +123,7 @@ pipeline {
steps {
dir('kie-tools') {
script {
- defaultSettingsFile =
'packages/sonataflow-image-common/resources/modules/kogito-maven/common/maven/settings.xml'
+ defaultSettingsFile =
'packages/sonataflow-image-common/resources/modules/kogito-maven/common/maven/maven-m2-repo-via-http-settings.xml.envsubst'
sh """#!/bin/bash -el
rm -rf "${defaultSettingsFile}"
cp "${env.MAVEN_SETTINGS_PATH}"
"${defaultSettingsFile}"
diff --git a/.ci/jenkins/release-jobs/Jenkinsfile.kogito-swf-builder
b/.ci/jenkins/release-jobs/Jenkinsfile.kogito-swf-builder
index e2408d429ce..bae5d9e6ff0 100644
--- a/.ci/jenkins/release-jobs/Jenkinsfile.kogito-swf-builder
+++ b/.ci/jenkins/release-jobs/Jenkinsfile.kogito-swf-builder
@@ -193,7 +193,7 @@ pipeline {
sh """#!/bin/bash -el
mkdir ${env.RELEASE_ARTIFACTS_DIR}
- docker save
"${env.KOGITO_SWF_BUILDER_IMAGE__registry}/${env.KOGITO_SWF_BUILDER_IMAGE__account}/${env.KOGITO_SWF_BUILDER_IMAGE__name}:${params.RELEASE_VERSION}"
| gzip > "${env.RELEASE_ARTIFACTS_DIR}/${env.RELEASE_IMAGE_TAR_FILE}"
+ docker save
"${env.SONATAFLOW_BUILDER_IMAGE__registry}/${env.SONATAFLOW_BUILDER_IMAGE__account}/${env.SONATAFLOW_BUILDER_IMAGE__name}:${params.RELEASE_VERSION}"
| gzip > "${env.RELEASE_ARTIFACTS_DIR}/${env.RELEASE_IMAGE_TAR_FILE}"
""".trim()
}
}
diff --git a/.ci/jenkins/release-jobs/Jenkinsfile.kogito-swf-devmode
b/.ci/jenkins/release-jobs/Jenkinsfile.kogito-swf-devmode
index 702abd47195..ab9f1ae97f6 100644
--- a/.ci/jenkins/release-jobs/Jenkinsfile.kogito-swf-devmode
+++ b/.ci/jenkins/release-jobs/Jenkinsfile.kogito-swf-devmode
@@ -193,7 +193,7 @@ pipeline {
sh """#!/bin/bash -el
mkdir ${env.RELEASE_ARTIFACTS_DIR}
- docker save
"${env.KOGITO_SWF_DEVMODE_IMAGE__registry}/${env.KOGITO_SWF_DEVMODE_IMAGE__account}/${env.KOGITO_SWF_DEVMODE_IMAGE__name}:${params.RELEASE_VERSION}"
| gzip > "${env.RELEASE_ARTIFACTS_DIR}/${env.RELEASE_IMAGE_TAR_FILE}"
+ docker save
"${env.SONATAFLOW_DEVMODE_IMAGE__registry}/${env.SONATAFLOW_DEVMODE_IMAGE__account}/${env.SONATAFLOW_DEVMODE_IMAGE__name}:${params.RELEASE_VERSION}"
| gzip > "${env.RELEASE_ARTIFACTS_DIR}/${env.RELEASE_IMAGE_TAR_FILE}"
""".trim()
}
}
diff --git a/.ci/jenkins/release-jobs/Jenkinsfile.npm-packages
b/.ci/jenkins/release-jobs/Jenkinsfile.npm-packages
index 5735ccf774c..305e92b5db3 100644
--- a/.ci/jenkins/release-jobs/Jenkinsfile.npm-packages
+++ b/.ci/jenkins/release-jobs/Jenkinsfile.npm-packages
@@ -23,7 +23,7 @@ pipeline {
}
options {
- timeout(time: 180, unit: 'MINUTES')
+ timeout(time: 240, unit: 'MINUTES')
}
parameters {
diff --git a/.ci/jenkins/release-jobs/Jenkinsfile.online-editor
b/.ci/jenkins/release-jobs/Jenkinsfile.online-editor
index 67bc68e32d3..d02477294fd 100644
--- a/.ci/jenkins/release-jobs/Jenkinsfile.online-editor
+++ b/.ci/jenkins/release-jobs/Jenkinsfile.online-editor
@@ -200,10 +200,12 @@ pipeline {
}
steps {
script {
- env.RELEASE_ZIP_FILE =
"incubator-kie-${params.RELEASE_CANDIDATE_VERSION}-sandbox-webapp.zip"
+ env.ONLINE_EDITOR_RELEASE_ZIP_FILE =
"incubator-kie-${params.RELEASE_CANDIDATE_VERSION}-sandbox-webapp.zip"
+ env.STUNNER_EDITORS_RELEASE_ZIP_FILE =
"incubator-kie-${params.RELEASE_CANDIDATE_VERSION}-stunner-editors.zip"
sh """#!/bin/bash -el
mkdir ${env.RELEASE_ARTIFACTS_DIR}
- cd kie-tools/packages/online-editor/dist && zip -r
"${env.RELEASE_ARTIFACTS_DIR}/${env.RELEASE_ZIP_FILE}" .
+ cd "${WORKSPACE}/kie-tools/packages/online-editor/dist" &&
zip -r "${env.RELEASE_ARTIFACTS_DIR}/${env.ONLINE_EDITOR_RELEASE_ZIP_FILE}" .
+ cd "${WORKSPACE}/kie-tools/packages/stunner-editors/dist"
&& zip -r
"${env.RELEASE_ARTIFACTS_DIR}/${env.STUNNER_EDITORS_RELEASE_ZIP_FILE}" .
""".trim()
}
}
@@ -217,7 +219,8 @@ pipeline {
dir("${env.RELEASE_ARTIFACTS_DIR}") {
script {
releaseUtils.setupSigningKey("${pipelineVars.asfReleaseGPGKeyCredentialsId}")
- releaseUtils.signArtifact("${env.RELEASE_ZIP_FILE}")
+
releaseUtils.signArtifact("${env.ONLINE_EDITOR_RELEASE_ZIP_FILE}")
+
releaseUtils.signArtifact("${env.STUNNER_EDITORS_RELEASE_ZIP_FILE}")
}
}
}
diff --git
a/.ci/jenkins/release-jobs/Jenkinsfile.serverless-logic-web-tools-swf-builder-image
b/.ci/jenkins/release-jobs/Jenkinsfile.serverless-logic-web-tools-swf-builder-image
index 4907b5653e8..f2516dbb95a 100644
---
a/.ci/jenkins/release-jobs/Jenkinsfile.serverless-logic-web-tools-swf-builder-image
+++
b/.ci/jenkins/release-jobs/Jenkinsfile.serverless-logic-web-tools-swf-builder-image
@@ -122,7 +122,7 @@ pipeline {
steps {
dir('kie-tools') {
script {
- defaultSettingsFile =
'packages/sonataflow-image-common/resources/modules/kogito-maven/common/maven/settings.xml'
+ defaultSettingsFile =
'packages/sonataflow-image-common/resources/modules/kogito-maven/common/maven/maven-m2-repo-via-http-settings.xml.envsubst'
sh """#!/bin/bash -el
rm -rf "${defaultSettingsFile}"
cp "${env.MAVEN_SETTINGS_PATH}"
"${defaultSettingsFile}"
diff --git a/.github/workflows/release_build_extended_services.yml
b/.github/workflows/release_build_extended_services.yml
index 80c7cb320a5..6f298697d28 100644
--- a/.github/workflows/release_build_extended_services.yml
+++ b/.github/workflows/release_build_extended_services.yml
@@ -20,33 +20,35 @@
name: "Release :: Build (Extended Services)"
on:
- workflow_call:
+ workflow_dispatch:
inputs:
dry_run:
type: boolean
required: true
+ description: "Dry run mode"
base_ref:
type: string
required: true
- tag:
- type: string
- required: false
- default: "0.0.0"
- upload_asset_url:
- type: string
- required: false
- default: ""
- release_candidate:
- type: boolean
- required: false
- default: false
+ description: "Base reference for the checkout"
release_candidate_version:
type: string
- required: false
- default: ""
- secrets:
- gh_token:
- required: false
+ required: true
+ description: "Release candidate version"
+ drools_repository:
+ required: true
+ description: "Drools artifacts repository"
+ kogito_runtimes_repository:
+ required: true
+ description: "Kogito runtimes artifacts repository"
+ kogito_apps_repository:
+ required: true
+ description: "Kogito apps artifacts repository"
+ jitexecutor_native_macos_repository:
+ required: true
+ description: "JITExecutor native macOS artifacts repository"
+ jitexecutor_native_windows_repository:
+ required: true
+ description: "JITExecutor native windows artifacts repository"
env:
KIE_TOOLS_BUILD__runLinters: "false"
@@ -55,10 +57,7 @@ env:
KIE_TOOLS_BUILD__buildContainerImages: "true"
jobs:
- extended_services:
- env:
- EXTENDED_SERVICES__kieSandboxUrl:
"https://apache.github.io/incubator-kie-kogito-online"
-
+ extended_services_build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
@@ -80,6 +79,302 @@ jobs:
id: setup_env
uses: ./.github/actions/setup-env
+ - name: Setup maven settings (MacOS)
+ if: runner.os == 'macOS'
+ env:
+ WORKDIR_PATH: ${{ github.workspace }}
+ DROOLS_REPO: ${{ github.event.inputs.drools_repository }}
+ KOGITO_RUNTIMES_REPO: ${{
github.event.inputs.kogito_runtimes_repository }}
+ KOGITO_APPS_REPO: ${{ github.event.inputs.kogito_apps_repository }}
+ JITEXECUTOR_NATIVE_REPO: ${{
github.event.inputs.jitexecutor_native_macos_repository }}
+ run: |
+ mkdir -p ${WORKDIR_PATH}/.m2
+ echo "<settings>
+ <servers>
+ <server>
+ <id>apache.snapshots.https</id>
+ <username>${{ secrets.NEXUS_USER }}</username>
+ <password>${{ secrets.NEXUS_PW }}</password>
+ </server>
+ </servers>
+ <profiles>
+ <profile>
+ <id>additional_repos</id>
+ <repositories>
+ <repository>
+ <id>apache-kie-drools-staging-repository</id>
+ <name>Apache KIE Drools Staging Repository</name>
+ <url>${DROOLS_REPO}</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>apache-kie-kogito-runtimes-staging-repository</id>
+ <name>Apache KIE Kogito Runtimes Staging Repository</name>
+ <url>${KOGITO_RUNTIMES_REPO}</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>apache-kie-kogito-apps-staging-repository</id>
+ <name>Apache KIE Kogito Apps Staging Repository</name>
+ <url>${KOGITO_APPS_REPO}</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>apache-kie-jitexecutor-native-staging-repository</id>
+ <name>Apache KIE JITExecutor Native Staging Repository</name>
+ <url>${JITEXECUTOR_NATIVE_REPO}</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>apache-kie-drools-staging-repository</id>
+ <name>Apache KIE Drools Staging Repository</name>
+ <url>${DROOLS_REPO}</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </pluginRepository>
+ <pluginRepository>
+ <id>apache-kie-kogito-runtimes-staging-repository</id>
+ <name>Apache KIE Kogito Runtimes Staging Repository</name>
+ <url>${KOGITO_RUNTIMES_REPO}</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </pluginRepository>
+ <pluginRepository>
+ <id>apache-kie-kogito-apps-staging-repository</id>
+ <name>Apache KIE Kogito Apps Staging Repository</name>
+ <url>${KOGITO_APPS_REPO}</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </pluginRepository>
+ <pluginRepository>
+ <id>apache-kie-jitexecutor-native-staging-repository</id>
+ <name>Apache KIE JITExecutor Native Staging Repository</name>
+ <url>${JITEXECUTOR_NATIVE_REPO}</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+ </profiles>
+ <activeProfiles>
+ <activeProfile>additional_repos</activeProfile>
+ </activeProfiles>
+ </settings>" > ${WORKDIR_PATH}/.m2/settings.xml
+
+ - name: Setup maven settings (Windows)
+ if: runner.os == 'Windows'
+ env:
+ WORKDIR_PATH: ${{ github.workspace }}
+ DROOLS_REPO: ${{ github.event.inputs.drools_repository }}
+ KOGITO_RUNTIMES_REPO: ${{
github.event.inputs.kogito_runtimes_repository }}
+ KOGITO_APPS_REPO: ${{ github.event.inputs.kogito_apps_repository }}
+ JITEXECUTOR_NATIVE_REPO: ${{
github.event.inputs.jitexecutor_native_windows_repository }}
+ shell: pwsh
+ run: |
+ New-Item -Name ".m2" -Path "$env:WORKDIR_PATH" -ItemType Directory
+ $contentToAdd = @"
+ <settings>
+ <servers>
+ <server>
+ <id>apache.snapshots.https</id>
+ <username>${{ secrets.NEXUS_USER }}</username>
+ <password>${{ secrets.NEXUS_PW }}</password>
+ </server>
+ </servers>
+ <profiles>
+ <profile>
+ <id>additional_repos</id>
+ <repositories>
+ <repository>
+ <id>apache-kie-drools-staging-repository</id>
+ <name>Apache KIE Drools Staging Repository</name>
+ <url>$env:DROOLS_REPO</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>apache-kie-kogito-runtimes-staging-repository</id>
+ <name>Apache KIE Kogito Runtimes Staging Repository</name>
+ <url>$env:KOGITO_RUNTIMES_REPO</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>apache-kie-kogito-apps-staging-repository</id>
+ <name>Apache KIE Kogito Apps Staging Repository</name>
+ <url>$env:KOGITO_APPS_REPO</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>apache-kie-jitexecutor-native-staging-repository</id>
+ <name>Apache KIE JITExecutor Native Staging Repository</name>
+ <url>$env:JITEXECUTOR_NATIVE_REPO</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>apache-kie-drools-staging-repository</id>
+ <name>Apache KIE Drools Staging Repository</name>
+ <url>$env:DROOLS_REPO</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </pluginRepository>
+ <pluginRepository>
+ <id>apache-kie-kogito-runtimes-staging-repository</id>
+ <name>Apache KIE Kogito Runtimes Staging Repository</name>
+ <url>$env:KOGITO_RUNTIMES_REPO</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </pluginRepository>
+ <pluginRepository>
+ <id>apache-kie-kogito-apps-staging-repository</id>
+ <name>Apache KIE Kogito Apps Staging Repository</name>
+ <url>$env:KOGITO_APPS_REPO</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </pluginRepository>
+ <pluginRepository>
+ <id>apache-kie-jitexecutor-native-staging-repository</id>
+ <name>Apache KIE JITExecutor Native Staging Repository</name>
+ <url>$env:JITEXECUTOR_NATIVE_REPO</url>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+ </profiles>
+ <activeProfiles>
+ <activeProfile>additional_repos</activeProfile>
+ </activeProfiles>
+ </settings>
+ "@
+ Add-Content "$env:WORKDIR_PATH\.m2\settings.xml" $contentToAdd
+
+ - name: "Setup Maven settings file (MacOS)"
+ if: runner.os == 'macOS'
+ shell: bash
+ run: |
+ pnpm -r exec 'bash' '-c' 'echo --settings=${{ github.workspace
}}/.m2/settings.xml >> .mvn/maven.config'
+
+ - name: "Setup Maven settings file (Windows)"
+ if: runner.os == 'Windows'
+ shell: pwsh
+ run: |
+ pnpm -r powershell "Add-Content .\.mvn\maven.config '--settings=${{
github.workspace }}\.m2\settings.xml'"
+
- name: "Bootstrap"
id: bootstrap
uses: ./.github/actions/bootstrap
@@ -91,110 +386,92 @@ jobs:
run: |
pnpm ${{ steps.bootstrap.outputs.pnpm_filter_string }} build:prod
- - name: "Upload Extended Services for macOS"
- if: ${{ runner.os == 'macOS' && !inputs.dry_run &&
!inputs.release_candidate }}
- uses: actions/[email protected]
- env:
- GITHUB_TOKEN: ${{ secrets.gh_token }}
+ - name: Temporary MacOS artifacts
+ if: runner.os == 'macOS'
+ uses: actions/upload-artifact@v4
with:
- upload_url: ${{ inputs.upload_asset_url }}
- asset_path: ./packages/extended-services/dist/darwin/Kogito.dmg
- asset_name: kie_sandbox_extended_services_macos_${{ inputs.tag }}.dmg
- asset_content_type: application/octet-stream
-
- - name: "Upload Extended Services for Windows"
- if: ${{ runner.os == 'Windows' && !inputs.dry_run &&
!inputs.release_candidate }}
- uses: actions/[email protected]
- env:
- GITHUB_TOKEN: ${{ secrets.gh_token }}
+ name: extended-services-macos-artifacts
+ path: ./packages/extended-services/dist/darwin/Kogito.dmg
+ retention-days: 1
+
+ - name: Temporary Windows artifacts
+ if: runner.os == 'Windows'
+ uses: actions/upload-artifact@v4
with:
- upload_url: ${{ inputs.upload_asset_url }}
- asset_path:
"./packages/extended-services/dist/win32/kie_sandbox_extended_services.exe"
- asset_name: "kie_sandbox_extended_services_windows_${{ inputs.tag
}}.exe"
- asset_content_type: application/octet-stream
-
- - name: "Setup Extended Services for macOS artifacts"
- id: macos_setup_artifact
- if: ${{ runner.os == 'macOS' && !inputs.dry_run &&
inputs.release_candidate }}
- shell: bash
- env:
- PROJECT_VERSION: ${{ inputs.release_candidate_version }}
- run: |
-
ARTIFACT_ZIP_FILE="./extended-services-release-artifacts/incubator-kie-$PROJECT_VERSION-sandbox-extended-services-macOS.zip"
- echo "ARTIFACT_ZIP_FILE=$ARTIFACT_ZIP_FILE" >> "$GITHUB_OUTPUT"
- mkdir ./extended-services-release-artifacts
- zip $ARTIFACT_ZIP_FILE
./packages/extended-services/dist/darwin/Kogito.dmg
+ name: extended-services-windows-artifacts
+ path:
.\packages\extended-services\dist\win32\kie_sandbox_extended_services.exe
+ retention-days: 1
- - name: "Sign Extended Services for macOS artifact"
- if: ${{ runner.os == 'macOS' && !inputs.dry_run &&
inputs.release_candidate }}
+ extended_services_sign_and_deploy:
+ needs: [extended_services_build]
+ runs-on: ubuntu-latest
+ env:
+ RELEASE_CANDIDATE_ARTIFACTS_DIR: ${{ github.workspace
}}/extended-services-release-candidate-artifacts
+ steps:
+ - name: Import GPG key
+ if: github.event_name != 'pull_request'
+ uses:
crazy-max/ghaction-import-gpg@111c56156bcc6918c056dbef52164cfa583dc549
+ with:
+ gpg_private_key: ${{ secrets.GPG_KEY }}
+
+ - name: Create release artifacts directory
shell: bash
- env:
- GPG_KEY: ${{ secrets.GPG_KEY }}
- GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
- ARTIFACT_ZIP_FILE: ${{
steps.macos_setup_artifact.outputs.ARTIFACT_ZIP_FILE }}
run: |
- echo $GPG_KEY > ./signkey.gpg
- gpg --list-keys
- gpg --batch --pinentry-mode loopback --passphrase "$GPG_PASSPHRASE"
--import ./signkey.gpg
- rm ./signkey.gpg
- echo $GPG_PASSPHRASE | gpg --no-tty --batch --sign --pinentry-mode
loopback --passphrase-fd 0 --output $ARTIFACT_ZIP_FILE.asc --detach-sig
$ARTIFACT_ZIP_FILE
- shasum -a 512 $ARTIFACT_ZIP_FILE > $ARTIFACT_ZIP_FILE.sha512
-
- - name: "Upload Extended Services for macOS artifact"
- if: ${{ runner.os == 'macOS' && !inputs.dry_run &&
inputs.release_candidate }}
+ mkdir $RELEASE_CANDIDATE_ARTIFACTS_DIR
+
+ - name: Retrieve MacOS artifacts
+ uses: actions/download-artifact@v4
+ with:
+ name: extended-services-macos-artifacts
+ path: $RELEASE_CANDIDATE_ARTIFACTS_DIR
+
+ - name: Retrieve Windows artifacts
+ uses: actions/download-artifact@v4
+ with:
+ name: extended-services-windows-artifacts
+ path: $RELEASE_CANDIDATE_ARTIFACTS_DIR
+
+ - name: "Zip artifacts"
+ id: zip_artifacts
+ if: ${{ !inputs.dry_run }}
shell: bash
env:
- SVN_USERNAME: ${{ secrets.SVN_USERNAME }}
- SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }}
- PROJECT_VERSION: ${{ inputs.release_candidate_version }}
- ARTIFACT_ZIP_FILE: ${{
steps.macos_setup_artifact.outputs.ARTIFACT_ZIP_FILE }}
+ RELEASE_CANDIDATE_VERSION: ${{ inputs.release_candidate_version }}
run: |
- svn co --depth=empty
https://dist.apache.org/repos/dist/dev/incubator/kie svn-kie
- cp ./extended-services-release-artifacts/* svn-kie/$PROJECT_VERSION/
- svn add "svn-kie/$PROJECT_VERSION"
- cd svn-kie
- svn ci --non-interactive --no-auth-cache --username "$SVN_USERNAME"
--password "$SVN_PASSWORD" -m "Apache KIE $PROJECT_VERSION Extended Services
for macOS artifact"
- rm -rf svn-kie
+
MACOS_ARTIFACT_ZIP_FILE="incubator-kie-$RELEASE_CANDIDATE_VERSION-sandbox-extended-services-macOS-x86.zip"
+
WINDOWS_ARTIFACT_ZIP_FILE="incubator-kie-$RELEASE_CANDIDATE_VERSION-sandbox-extended-services-windows-x86.zip"
+ echo "MACOS_ARTIFACT_ZIP_FILE=$MACOS_ARTIFACT_ZIP_FILE" >>
"$GITHUB_OUTPUT"
+ echo "WINDOWS_ARTIFACT_ZIP_FILE=$WINDOWS_ARTIFACT_ZIP_FILE" >>
"$GITHUB_OUTPUT"
+ cd $RELEASE_CANDIDATE_ARTIFACTS_DIR
+ zip $RELEASE_CANDIDATE_ARTIFACTS_DIR/$MACOS_ARTIFACT_ZIP_FILE
./Kogito.dmg
+ zip $RELEASE_CANDIDATE_ARTIFACTS_DIR/$WINDOWS_ARTIFACT_ZIP_FILE
./kie_sandbox_extended_services.exe
+ rm -f ./Kogito.dmg
+ rm -f ./kie_sandbox_extended_services.exe
- - name: "Setup Extended Services for Windows artifacts"
- id: windows_setup_artifact
- if: ${{ runner.os == 'macOS' && !inputs.dry_run &&
inputs.release_candidate }}
- shell: pwsh
+ - name: "Sign artifacts"
+ if: ${{ !inputs.dry_run }}
+ shell: bash
env:
- PROJECT_VERSION: ${{ inputs.release_candidate_version }}
+ MACOS_ARTIFACT_ZIP_FILE: ${{
steps.zip_artifacts.outputs.MACOS_ARTIFACT_ZIP_FILE }}
+ WINDOWS_ARTIFACT_ZIP_FILE: ${{
steps.zip_artifacts.outputs.WINDOWS_ARTIFACT_ZIP_FILE }}
run: |
-
ARTIFACT_ZIP_FILE="./extended-services-release-artifacts/incubator-kie-$PROJECT_VERSION-sandbox-extended-services-macOS.zip"
- echo "ARTIFACT_ZIP_FILE=$ARTIFACT_ZIP_FILE" >> "$GITHUB_OUTPUT"
- mkdir ./extended-services-release-artifacts
- zip $ARTIFACT_ZIP_FILE
./packages/extended-services/dist/win32/kie_sandbox_extended_services.exe
+ cd $RELEASE_CANDIDATE_ARTIFACTS_DIR
+ gpg --no-tty --batch --sign --pinentry-mode loopback --output
$MACOS_ARTIFACT_ZIP_FILE.asc --detach-sig $MACOS_ARTIFACT_ZIP_FILE
+ shasum -a 512 $MACOS_ARTIFACT_ZIP_FILE >
$MACOS_ARTIFACT_ZIP_FILE.sha512
+ gpg --no-tty --batch --sign --pinentry-mode loopback --output
$WINDOWS_ARTIFACT_ZIP_FILE.asc --detach-sig $WINDOWS_ARTIFACT_ZIP_FILE
+ shasum -a 512 $WINDOWS_ARTIFACT_ZIP_FILE >
$WINDOWS_ARTIFACT_ZIP_FILE.sha512
- - name: "Sign Extended Services for Windows artifact"
- if: ${{ runner.os == 'Windows' && !inputs.dry_run &&
inputs.release_candidate }}
- shell: pwsh
- env:
- GPG_KEY: ${{ secrets.GPG_KEY }}
- GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
- ARTIFACT_ZIP_FILE: ${{
steps.windows_setup_artifact.outputs.ARTIFACT_ZIP_FILE }}
- run: |
- echo $GPG_KEY > ./signkey.gpg
- gpg --list-keys
- gpg --batch --pinentry-mode loopback --passphrase "$GPG_PASSPHRASE"
--import ./signkey.gpg
- rm ./signkey.gpg
- echo $GPG_PASSPHRASE | gpg --no-tty --batch --sign --pinentry-mode
loopback --passphrase-fd 0 --output $ARTIFACT_ZIP_FILE.asc --detach-sig
$ARTIFACT_ZIP_FILE
- shasum -a 512 $ARTIFACT_ZIP_FILE > $ARTIFACT_ZIP_FILE.sha512
-
- - name: "Upload Extended Services for Windows artifact"
- if: ${{ runner.os == 'Windows' && !inputs.dry_run &&
inputs.release_candidate }}
- shell: pwsh
+ - name: "Upload artifacts to SVN"
+ if: ${{ !inputs.dry_run }}
+ shell: bash
env:
- SVN_USERNAME: ${{ secrets.SVN_USERNAME }}
- SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }}
- PROJECT_VERSION: ${{ inputs.release_candidate_version }}
- ARTIFACT_ZIP_FILE: ${{
steps.windows_setup_artifact.outputs.ARTIFACT_ZIP_FILE }}
+ SVN_USERNAME: ${{ secrets.INCUBATOR_SVN_DEV_USERNAME }}
+ SVN_PASSWORD: ${{ secrets.INCUBATOR_SVN_DEV_PASSWORD }}
+ RELEASE_CANDIDATE_VERSION: ${{ inputs.release_candidate_version }}
run: |
- svn co --depth=empty
https://dist.apache.org/repos/dist/dev/incubator/kie svn-kie
- cp ./extended-services-release-artifacts/* svn-kie/$PROJECT_VERSION/
- svn add "svn-kie/$PROJECT_VERSION"
+ svn co --depth=empty
https://dist.apache.org/repos/dist/dev/incubator/kie/$RELEASE_CANDIDATE_VERSION/
svn-kie
+ cp $RELEASE_CANDIDATE_ARTIFACTS_DIR/* svn-kie
cd svn-kie
- svn ci --non-interactive --no-auth-cache --username "$SVN_USERNAME"
--password "$SVN_PASSWORD" -m "Apache KIE $PROJECT_VERSION Extended Services
for Windows artifact"
+ svn add . --force
+ svn ci --non-interactive --no-auth-cache --username $SVN_USERNAME
--password "$SVN_PASSWORD" -m "Apache KIE $RELEASE_CANDIDATE_VERSION Extended
Services artifacts"
rm -rf svn-kie
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]