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-kogito-apps.git
The following commit(s) were added to refs/heads/main by this push:
new 450d01a1d kie-issues#1258: jitexecutor-native Release Candidate job
(#2078)
450d01a1d is described below
commit 450d01a1da3ea9255d36c6f149346f3de0854756
Author: Rodrigo Antunes <[email protected]>
AuthorDate: Wed Jul 31 13:28:24 2024 -0300
kie-issues#1258: jitexecutor-native Release Candidate job (#2078)
* jitexecutor-native Release Candidate job
* Fix java distribution
* Fix import gpg key function
---
.../workflows/publish-jitexecutor-native-rc.yml | 169 +++++++++++++++++++++
1 file changed, 169 insertions(+)
diff --git a/.github/workflows/publish-jitexecutor-native-rc.yml
b/.github/workflows/publish-jitexecutor-native-rc.yml
new file mode 100644
index 000000000..a5cb5a12d
--- /dev/null
+++ b/.github/workflows/publish-jitexecutor-native-rc.yml
@@ -0,0 +1,169 @@
+name: "Publish jitexecutor-native - Release Candidate"
+
+on:
+ pull_request:
+ branches: ["**"]
+ paths:
+ - ".github/workflows/publish-jitexecutor-native-rc.yml"
+ workflow_dispatch:
+ inputs:
+ release_candidate_version:
+ description: "Release candidate version"
+ required: true
+
+jobs:
+ build_jitexecutor_native:
+ runs-on: ${{ matrix.os }}
+ strategy:
+ fail-fast: true
+ matrix:
+ os: [ubuntu-latest, macos-latest, windows-latest]
+
+ steps:
+ - name: Set version
+ id: version
+ run: |
+ if [ ${{ github.event_name }} == "pull_request" ]; then
+ echo
"REPOSITORY=${{github.event.pull_request.head.repo.full_name}}" >>
"$GITHUB_OUTPUT"
+ echo "REF=${{github.event.pull_request.head.ref}}" >>
"$GITHUB_OUTPUT"
+ echo "PROJECT_VERSION=999-SNAPSHOT" >> "$GITHUB_OUTPUT"
+ else
+ VERSION="${{ github.event.inputs.release_candidate_version }}"
+ echo "REPOSITORY=apache/incubator-kie-kogito-apps" >>
"$GITHUB_OUTPUT"
+ echo "REF=${VERSION//-SNAPSHOT/}" >> "$GITHUB_OUTPUT"
+ echo "PROJECT_VERSION=$VERSION" >> "$GITHUB_OUTPUT"
+ fi
+ shell: bash
+
+ - name: "Set long paths for Windows"
+ if: runner.os == 'Windows'
+ run: git config --system core.longpaths true
+
+ - name: "Checkout kie-kogito-apps"
+ uses: actions/checkout@v4
+ with:
+ repository: ${{ steps.version.outputs.REPOSITORY }}
+ ref: ${{ steps.version.outputs.REF }}
+
+ - name: "Set up Maven"
+ uses: stCarolas/setup-maven@v5
+ with:
+ maven-version: 3.9.6
+
+ - name: Import GPG key
+ uses: crazy-max/ghaction-import-gpg@v6
+ with:
+ gpg_private_key: ${{ secrets.GPG_KEY }}
+
+ - name: "Set up JDK 17"
+ uses: actions/setup-java@v4
+ with:
+ java-version: "17"
+ distribution: "temurin"
+ server-id: apache.releases.https
+ server-username: ${{ secrets.NEXUS_STAGE_DEPLOYER_USER }}
+ server-password: ${{ secrets.NEXUS_STAGE_DEPLOYER_PW }}
+ gpg-private-key: ${{ secrets.GPG_KEY }}
+ gpg-passphrase: ""
+
+ - name: "Setup Linux"
+ if: runner.os == 'Linux'
+ run: |
+ sudo apt update && \
+ sudo apt install -y \
+ build-essential \
+ libgtk-3-dev \
+ libappindicator3-dev \
+ gir1.2-appindicator3-0.1
+
+ - name: "Setup macOS"
+ if: runner.os == 'macOS'
+ run: |
+ brew install make && \
+ wget
https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-17.0.9/graalvm-community-jdk-17.0.9_macos-x64_bin.tar.gz
&& \
+ tar -xzf graalvm-community-jdk-17.0.9_macos-x64_bin.tar.gz && \
+ sudo mv graalvm-community-openjdk-17.0.9+9.1
/Library/Java/JavaVirtualMachines/graalvm-community-openjdk-17.0.9+9.1
+ export
GRAALVM_HOME=/Library/Java/JavaVirtualMachines/graalvm-community-openjdk-17.0.9+9.1/Contents/Home
+ export PATH=${GRAALVM_HOME}/bin:$PATH
+ echo "${GRAALVM_HOME}/bin" >> $GITHUB_PATH && \
+ echo "GRAALVM_HOME=${GRAALVM_HOME}" >> $GITHUB_ENV && \
+ gu install native-image
+
+ - name: "Setup MSCV"
+ if: runner.os == 'Windows'
+ uses: ilammy/msvc-dev-cmd@v1
+
+ - name: "Setup MSBUILD"
+ if: runner.os == 'Windows'
+ uses: microsoft/setup-msbuild@v2
+
+ - name: "Setup GraalVM"
+ if: runner.os == 'Windows'
+ uses: graalvm/setup-graalvm@v1
+ with:
+ java-version: "17"
+ components: "native-image"
+
+ - name: "Configure Pagefile"
+ if: runner.os == 'Windows'
+ uses:
al-cheb/configure-pagefile-action@a3b6ebd6b634da88790d9c58d4b37a7f4a7b8708 #v1.4
+ with:
+ minimum-size: 16GB
+ maximum-size: 16GB
+ disk-root: "C:"
+
+ - name: "Update versions (Linux and macOS)"
+ if: (runner.os == 'Linux' || runner.os == 'macOS') &&
github.event_name != 'pull_request'
+ shell: bash
+ run: |
+ mvn -B -fae -ntp -N -e versions:update-parent -DparentVersion="[${{
steps.version.outputs.PROJECT_VERSION }}]" -DallowSnapshots=true
-DgenerateBackupPoms=false
+ mvn -B -fae -ntp -N -e versions:update-child-modules
-DallowSnapshots=true -DgenerateBackupPoms=false
+
+ - name: "Update versions Windows"
+ if: runner.os == 'Windows' && github.event_name != 'pull_request'
+ shell: pwsh
+ run: |
+ mvn -B -fae -ntp -N -e versions:update-parent -DparentVersion="[${{
steps.version.outputs.PROJECT_VERSION }}]" -DallowSnapshots=true
-DgenerateBackupPoms=false
+ mvn -B -fae -ntp -N -e versions:update-child-modules
-DallowSnapshots=true -DgenerateBackupPoms=false
+
+ - name: "Build macOS"
+ if: runner.os == 'macOS' && github.event_name == 'pull_request'
+ shell: bash
+ run: |
+ mvn clean install -B -ntp -DskipTests -pl
jitexecutor-native/jitexecutor-native-darwin -am -Pjitexecutor-native
+
+ - name: "Build and publish macOS"
+ if: runner.os == 'macOS' && github.event_name != 'pull_request'
+ shell: bash
+ run: |
+ mvn clean deploy -B -ntp -DdeployAtEnd -DskipTests -pl
jitexecutor-native/jitexecutor-native-darwin -am -Pjitexecutor-native -Prelease
+
+ - name: "Build Linux"
+ if: runner.os == 'Linux' && github.event_name == 'pull_request'
+ shell: bash
+ run: |
+ mvn clean install -B -ntp -DskipTests -pl
jitexecutor-native/jitexecutor-native-linux -am -Pjitexecutor-native
+
+ - name: "Build and Publish Linux"
+ if: runner.os == 'Linux' && github.event_name != 'pull_request'
+ shell: bash
+ run: |
+ mvn clean deploy -B -ntp -DdeployAtEnd -DskipTests -pl
jitexecutor-native/jitexecutor-native-linux -am -Pjitexecutor-native -Prelease
+
+ - name: "Build Windows"
+ if: runner.os == 'Windows' && github.event_name == 'pull_request'
+ shell: pwsh
+ run: |
+ mvn clean install -B -ntp -DskipTests -pl
jitexecutor-native/jitexecutor-native-win32 -am -Pjitexecutor-native
+
+ - name: "Build and Publish Windows"
+ if: runner.os == 'Windows' && github.event_name != 'pull_request'
+ shell: pwsh
+ run: |
+ mvn clean deploy -B -ntp -DdeployAtEnd -DskipTests -pl
jitexecutor-native/jitexecutor-native-win32 -am -Pjitexecutor-native -Prelease
+
+ - name: "Upload JIT Executor binary"
+ uses: actions/upload-artifact@v4
+ with:
+ name: jitexecutor_${{ runner.os }}
+ path:
./jitexecutor-native/jitexecutor-native-*/target/jitexecutor-native-*-${{
steps.version.outputs.PROJECT_VERSION }}-run*
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]