Skip to content

Commit

Permalink
#27416 Fixing set up package name and package version.
Browse files Browse the repository at this point in the history
  • Loading branch information
Daniel Colina committed Jan 31, 2024
1 parent b009d64 commit b80ede1
Showing 1 changed file with 168 additions and 168 deletions.
336 changes: 168 additions & 168 deletions .github/workflows/cli-release-process.yml
Original file line number Diff line number Diff line change
Expand Up @@ -84,156 +84,156 @@ jobs:
# echo "HEAD=$HEAD" >> "$GITHUB_OUTPUT"

# Build native executable per runner
build:
# build:
# needs: [ precheck ]
name: 'Build native image on ${{ matrix.os }}'
strategy:
fail-fast: true
matrix:
os: [ macos-13-xlarge, macOS-latest, ubuntu-latest, windows-latest ] #

runs-on: ${{ matrix.os }}
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
ref: ${{ needs.precheck.outputs.HEAD }}
fetch-depth: 0

- name: 'Set up GraalVM for (Linux/MacOS)'
if: ${{ matrix.os != 'windows-latest' }}
run: |
if [ "${{ matrix.os }}" == "ubuntu-latest" ]; then
echo "GraalVM on Linux (AMD64)"
ARCH=amd64
PLATFORM=linux
INSTALLATION_PATH=/usr/lib/jvm
else
if [ "${{ matrix.os }}" == "macos-13-xlarge" ]; then
echo "GraalVM on Mac (AARCH64)"
ARCH=aarch64
else
echo "GraalVM on Mac (AMD64)"
ARCH=amd64
fi
PLATFORM=darwin
INSTALLATION_PATH=/Library/Java/JavaVirtualMachines
fi
echo "PLATFORM=$PLATFORM"
echo "ARCH=$ARCH"
echo "INSTALLATION_PATH=$INSTALLATION_PATH"
wget https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${{ env.GRAALVM_VERSION }}/graalvm-ce-java11-${PLATFORM}-${ARCH}-${{ env.GRAALVM_VERSION }}.tar.gz
sudo mkdir -p $INSTALLATION_PATH
tar -xzf graalvm-ce-java11-${PLATFORM}-${ARCH}-${{ env.GRAALVM_VERSION }}.tar.gz
sudo mv graalvm-ce-java11-${{ env.GRAALVM_VERSION }} $INSTALLATION_PATH
if [ "${{ matrix.os }}" != "ubuntu-latest" ]; then
sudo xattr -r -d com.apple.quarantine /Library/Java/JavaVirtualMachines/graalvm-ce-java11-${{ env.GRAALVM_VERSION }}/Contents/Home
GRAALVM_HOME="${INSTALLATION_PATH}/graalvm-ce-java11-${{ env.GRAALVM_VERSION }}/Contents/Home"
else
GRAALVM_HOME="${INSTALLATION_PATH}/graalvm-ce-java11-${{ env.GRAALVM_VERSION }}"
fi
echo "GRAALVM_HOME=$GRAALVM_HOME" >> $GITHUB_ENV
echo "JAVA_HOME=$GRAALVM_HOME" >> $GITHUB_ENV
PATH="$GRAALVM_HOME/bin:$PATH"
echo "PATH=$PATH" >> $GITHUB_ENV
gu install native-image
- name: 'Set up GraalVM for (Windows)'
if: ${{ matrix.os == 'windows-latest' }}
shell: pwsh
run: |
$ARCH="amd64"
$DOWNLOAD_URL="https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${{ env.GRAALVM_VERSION }}/graalvm-ce-java11-windows-${ARCH}-${{ env.GRAALVM_VERSION }}.zip"
$OUTPUT_PATH="C:\graalvm-ce-java11-windows-${ARCH}-${{ env.GRAALVM_VERSION }}.zip"
$GRAALVM_INSTALLATION_PATH="C:\Program Files (x86)\Java"
Invoke-WebRequest -Uri $DOWNLOAD_URL -OutFile $OUTPUT_PATH
if (Test-Path -Path $GRAALVM_INSTALLATION_PATH -PathType Container) {
Write-Host "GRAALVM installation path exists."
} else {
Write-Host "Creating GRAALVM installation path."
New-Item -ItemType Directory -Path $GRAALVM_INSTALLATION_PATH
}
Expand-Archive -Path $OUTPUT_PATH -DestinationPath $GRAALVM_INSTALLATION_PATH
$env:JAVA_HOME="${GRAALVM_INSTALLATION_PATH}\graalvm-ce-java11-22.1.0"
$env:Path="${env:Path};${env:JAVA_HOME}\bin;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\bin\HostX86\x64"
echo "JAVA_HOME=${env:JAVA_HOME}" >> "$env:GITHUB_ENV"
echo "Path=${env:Path}" >> "$env:GITHUB_ENV"
gu.cmd install native-image
- name: 'Cache Maven packages'
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-

- name: 'Prepare dotCMS license'
env:
DOTCMS_LICENSE_KEY: ${{ secrets.DOTCMS_LICENSE }}
run: |
DOTCMS_LICENSE_PATH=${GITHUB_WORKSPACE}/tools/dotcms-cli/license
mkdir -p ${DOTCMS_LICENSE_PATH}
echo "${DOTCMS_LICENSE_KEY}" > ${DOTCMS_LICENSE_PATH}/license.dat
echo "DOTCMS_LICENSE_FILE=${DOTCMS_LICENSE_PATH}/license.dat" >> "$GITHUB_ENV"
- name: 'Compile source code'
working-directory: ${{ github.workspace }}
run: |
./mvnw clean install -Dtest.failure.ignore=true -DskipTests=${{ github.event.inputs.skipTests }} -am -pl :dotcms-cli
- name: 'Build uber-jar'
working-directory: ${{ github.workspace }}
run: |
./mvnw package -Dquarkus.package.type=${{ env.PACKAGE_TYPE }} -DskipTests=${{ github.event.inputs.skipTests }} -pl :dotcms-cli
- name: 'Build Native Image (Linux/MacOS)'
if: ${{ matrix.os != 'windows-latest' }}
working-directory: ${{ github.workspace }}
run: |
./mvnw package -Pnative -DskipTests=${{ github.event.inputs.skipTests }} -pl :dotcms-cli
- name: 'Build Native Image (Windows)'
if: ${{ matrix.os == 'windows-latest' }}
working-directory: ${{ github.workspace }}
shell: pwsh
run: |
cmd /c 'call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat" && .\mvnw.cmd package -Dnative -DskipTests=true -pl :dotcms-cli'
- name: 'Create distribution'
working-directory: ${{ github.workspace }}
run: |
./mvnw -B -ntp -Pdist package -DskipTests=${{ github.event.inputs.skipTests }} -pl :dotcms-cli
- name: 'Distribution tree'
working-directory: ${{ github.workspace }}/tools/dotcms-cli/
run: |
ls -ltr cli/target/distributions
- name: 'Upload build artifact'
uses: actions/upload-artifact@v4
with:
name: artifacts-${{ matrix.os }}
path: |
${{ github.workspace }}/tools/dotcms-cli/cli/target/*-runner.jar
${{ github.workspace }}/tools/dotcms-cli/cli/target/distributions/*.zip
${{ github.workspace }}/tools/dotcms-cli/cli/target/distributions/*.tar.gz
# name: 'Build native image on ${{ matrix.os }}'
# strategy:
# fail-fast: true
# matrix:
# os: [ macos-13-xlarge, macOS-latest, ubuntu-latest, windows-latest ] #

# runs-on: ${{ matrix.os }}
# steps:
# - name: Checkout Repository
# uses: actions/checkout@v4
# with:
# ref: ${{ needs.precheck.outputs.HEAD }}
# fetch-depth: 0

# - name: 'Set up GraalVM for (Linux/MacOS)'
# if: ${{ matrix.os != 'windows-latest' }}
# run: |
# if [ "${{ matrix.os }}" == "ubuntu-latest" ]; then
# echo "GraalVM on Linux (AMD64)"

# ARCH=amd64
# PLATFORM=linux
# INSTALLATION_PATH=/usr/lib/jvm

# else
# if [ "${{ matrix.os }}" == "macos-13-xlarge" ]; then
# echo "GraalVM on Mac (AARCH64)"
# ARCH=aarch64
# else
# echo "GraalVM on Mac (AMD64)"
# ARCH=amd64
# fi

# PLATFORM=darwin
# INSTALLATION_PATH=/Library/Java/JavaVirtualMachines
# fi

# echo "PLATFORM=$PLATFORM"
# echo "ARCH=$ARCH"
# echo "INSTALLATION_PATH=$INSTALLATION_PATH"

# wget https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${{ env.GRAALVM_VERSION }}/graalvm-ce-java11-${PLATFORM}-${ARCH}-${{ env.GRAALVM_VERSION }}.tar.gz
# sudo mkdir -p $INSTALLATION_PATH
# tar -xzf graalvm-ce-java11-${PLATFORM}-${ARCH}-${{ env.GRAALVM_VERSION }}.tar.gz
# sudo mv graalvm-ce-java11-${{ env.GRAALVM_VERSION }} $INSTALLATION_PATH

# if [ "${{ matrix.os }}" != "ubuntu-latest" ]; then
# sudo xattr -r -d com.apple.quarantine /Library/Java/JavaVirtualMachines/graalvm-ce-java11-${{ env.GRAALVM_VERSION }}/Contents/Home
# GRAALVM_HOME="${INSTALLATION_PATH}/graalvm-ce-java11-${{ env.GRAALVM_VERSION }}/Contents/Home"
# else
# GRAALVM_HOME="${INSTALLATION_PATH}/graalvm-ce-java11-${{ env.GRAALVM_VERSION }}"
# fi

# echo "GRAALVM_HOME=$GRAALVM_HOME" >> $GITHUB_ENV
# echo "JAVA_HOME=$GRAALVM_HOME" >> $GITHUB_ENV
# PATH="$GRAALVM_HOME/bin:$PATH"
# echo "PATH=$PATH" >> $GITHUB_ENV
# gu install native-image

# - name: 'Set up GraalVM for (Windows)'
# if: ${{ matrix.os == 'windows-latest' }}
# shell: pwsh
# run: |
# $ARCH="amd64"
# $DOWNLOAD_URL="https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-${{ env.GRAALVM_VERSION }}/graalvm-ce-java11-windows-${ARCH}-${{ env.GRAALVM_VERSION }}.zip"
# $OUTPUT_PATH="C:\graalvm-ce-java11-windows-${ARCH}-${{ env.GRAALVM_VERSION }}.zip"
# $GRAALVM_INSTALLATION_PATH="C:\Program Files (x86)\Java"

# Invoke-WebRequest -Uri $DOWNLOAD_URL -OutFile $OUTPUT_PATH

# if (Test-Path -Path $GRAALVM_INSTALLATION_PATH -PathType Container) {
# Write-Host "GRAALVM installation path exists."
# } else {
# Write-Host "Creating GRAALVM installation path."
# New-Item -ItemType Directory -Path $GRAALVM_INSTALLATION_PATH
# }

# Expand-Archive -Path $OUTPUT_PATH -DestinationPath $GRAALVM_INSTALLATION_PATH

# $env:JAVA_HOME="${GRAALVM_INSTALLATION_PATH}\graalvm-ce-java11-22.1.0"
# $env:Path="${env:Path};${env:JAVA_HOME}\bin;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build;C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\bin\HostX86\x64"

# echo "JAVA_HOME=${env:JAVA_HOME}" >> "$env:GITHUB_ENV"
# echo "Path=${env:Path}" >> "$env:GITHUB_ENV"

# gu.cmd install native-image

# - name: 'Cache Maven packages'
# uses: actions/cache@v4
# with:
# path: ~/.m2/repository
# key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
# restore-keys: ${{ runner.os }}-maven-

# - name: 'Prepare dotCMS license'
# env:
# DOTCMS_LICENSE_KEY: ${{ secrets.DOTCMS_LICENSE }}
# run: |
# DOTCMS_LICENSE_PATH=${GITHUB_WORKSPACE}/tools/dotcms-cli/license
# mkdir -p ${DOTCMS_LICENSE_PATH}
# echo "${DOTCMS_LICENSE_KEY}" > ${DOTCMS_LICENSE_PATH}/license.dat
# echo "DOTCMS_LICENSE_FILE=${DOTCMS_LICENSE_PATH}/license.dat" >> "$GITHUB_ENV"

# - name: 'Compile source code'
# working-directory: ${{ github.workspace }}
# run: |
# ./mvnw clean install -Dtest.failure.ignore=true -DskipTests=${{ github.event.inputs.skipTests }} -am -pl :dotcms-cli

# - name: 'Build uber-jar'
# working-directory: ${{ github.workspace }}
# run: |
# ./mvnw package -Dquarkus.package.type=${{ env.PACKAGE_TYPE }} -DskipTests=${{ github.event.inputs.skipTests }} -pl :dotcms-cli

# - name: 'Build Native Image (Linux/MacOS)'
# if: ${{ matrix.os != 'windows-latest' }}
# working-directory: ${{ github.workspace }}
# run: |
# ./mvnw package -Pnative -DskipTests=${{ github.event.inputs.skipTests }} -pl :dotcms-cli

# - name: 'Build Native Image (Windows)'
# if: ${{ matrix.os == 'windows-latest' }}
# working-directory: ${{ github.workspace }}
# shell: pwsh
# run: |
# cmd /c 'call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat" && .\mvnw.cmd package -Dnative -DskipTests=true -pl :dotcms-cli'

# - name: 'Create distribution'
# working-directory: ${{ github.workspace }}
# run: |
# ./mvnw -B -ntp -Pdist package -DskipTests=${{ github.event.inputs.skipTests }} -pl :dotcms-cli

# - name: 'Distribution tree'
# working-directory: ${{ github.workspace }}/tools/dotcms-cli/
# run: |
# ls -ltr cli/target/distributions

# - name: 'Upload build artifact'
# uses: actions/upload-artifact@v4
# with:
# name: artifacts-${{ matrix.os }}
# path: |
# ${{ github.workspace }}/tools/dotcms-cli/cli/target/*-runner.jar
# ${{ github.workspace }}/tools/dotcms-cli/cli/target/distributions/*.zip
# ${{ github.workspace }}/tools/dotcms-cli/cli/target/distributions/*.tar.gz

publish-package:
if: success()
needs: [ build ]
# if: success()
# needs: [ build ]
runs-on: ubuntu-latest
steps:
- name: 'Set up Node.js'
Expand All @@ -250,8 +250,8 @@ jobs:
- name: 'Set up package name and package version'
working-directory: ${{ github.workspace }}/tools/dotcms-cli/
run: |
PACKAGE_NAME=$(./mvnw -q -Dexec.executable=echo -Dexec.args='${project.artifactId}' -f cli/pom.xml exec:exec)
PACKAGE_VERSION=$(./mvnw -q -Dexec.executable=echo -Dexec.args='${project.version}' -f cli/pom.xml exec:exec)
PACKAGE_NAME=$(./mvnw -q -Dexec.executable=echo -Dexec.args='${project.artifactId}' -f ${{ github.workspace }}/tools/dotcms-cli/cli/pom.xml exec:exec)
PACKAGE_VERSION=$(./mvnw -q -Dexec.executable=echo -Dexec.args='${project.version}' -f ${{ github.workspace }}/tools/dotcms-cli/cli/pom.xml exec:exec)
echo "PACKAGE_NAME=$PACKAGE_NAME" >> "$GITHUB_ENV"
echo "PACKAGE_VERSION=$PACKAGE_VERSION" >> "$GITHUB_ENV"
Expand All @@ -266,28 +266,28 @@ jobs:
jinja2 package.j2 -D packageName=${PACKAGE_NAME} -D packageVersion=${PACKAGE_VERSION} --format json -o package.json
rm -f package.j2
- name: 'Download all build artifacts'
uses: actions/download-artifact@v4
with:
path: ${{ github.workspace }}/artifacts
pattern: artifacts-*
merge-multiple: true

- name: 'Prepare package'
working-directory: ${{ github.workspace }}/tools/dotcms-cli/npm/
run: |
mv src/postinstall.js.seed src/postinstall.js
mkdir -p bin
unzip ${{ github.workspace }}/artifacts/distributions/*.zip -d bin/
# - name: 'Download all build artifacts'
# uses: actions/download-artifact@v4
# with:
# path: ${{ github.workspace }}/artifacts
# pattern: artifacts-*
# merge-multiple: true

# - name: 'Prepare package'
# working-directory: ${{ github.workspace }}/tools/dotcms-cli/npm/
# run: |
# mv src/postinstall.js.seed src/postinstall.js
# mkdir -p bin
# unzip ${{ github.workspace }}/artifacts/distributions/*.zip -d bin/

cp ${{ github.workspace }}/tools/dotcms-cli/README.md .
# cp ${{ github.workspace }}/tools/dotcms-cli/README.md .

- name: 'Verify package'
working-directory: ${{ github.workspace }}/tools/dotcms-cli/npm/
run: |
ls -R
# - name: 'Verify package'
# working-directory: ${{ github.workspace }}/tools/dotcms-cli/npm/
# run: |
# ls -R

# tar -xzf ${{ github.workspace }}/artifacts/distributions/*.tar.gz -C bin/
# tar -xzf ${{ github.workspace }}/artifacts/distributions/*.tar.gz -C bin/

# - name: Install dependencies
# run: npm install
Expand Down

0 comments on commit b80ede1

Please sign in to comment.