Remove most logic from root build.gradle file (#247) #213
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Publish Snapshot | |
env: | |
GRAALCE_JDK_VERSION: '17.0.9' | |
# concatenation of env variables isn't currently supported | |
# so need to specify version explicitly | |
GRAALVM_HOME: /opt/hostedtoolcache/Java_graalce_jdk/17.0.9/x64 | |
on: | |
push: | |
branches: | |
- master | |
jobs: | |
changes: | |
runs-on: ubuntu-latest | |
outputs: | |
core: ${{ steps.filter.outputs.core }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dorny/paths-filter@v3 | |
id: filter | |
with: | |
filters: | | |
core: | |
- '.github/workflows/**' | |
- 'bom/**' | |
- 'buildSrc/**' | |
- 'core/**' | |
- 'extension/**' | |
- 'faker/**' | |
- 'gradle/**' | |
- '*gradle*' | |
- 'set-version.sh' | |
build: | |
needs: changes | |
if: ${{ needs.changes.outputs.core == 'true' }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up JDK 8 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 8 | |
distribution: 'temurin' | |
# loosely based on https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#installing-java-from-local-file | |
- name: Fetch latest graalce JDK | |
id: fetch_latest_jdk | |
run: | | |
jdk_version=${{ env.GRAALCE_JDK_VERSION }} | |
cd $RUNNER_TEMP | |
latest_jdk_download_url="https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${jdk_version}/graalvm-community-jdk-${jdk_version}_linux-x64_bin.tar.gz" | |
echo "$latest_jdk_download_url" | |
curl -Ls "$latest_jdk_download_url" -o java_package.tar.gz | |
echo "java_version=$jdk_version" >> "$GITHUB_OUTPUT" | |
- name: Set up GraalCE JDK | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'jdkfile' | |
jdkFile: ${{ runner.temp }}/java_package.tar.gz | |
java-version: ${{ steps.fetch_latest_jdk.outputs.java_version }} | |
architecture: x64 | |
mvn-toolchain-vendor: GraalVM | |
mvn-toolchain-id: graalce-${{ env.GRAALCE_JDK_VERSION }} | |
- name: Gradle Wrapper Validation | |
uses: gradle/wrapper-validation-action@v2 | |
- name: Grant execute permission to scripts | |
run: | | |
chmod +x gradlew | |
chmod +x set-version.sh | |
- name: Set version | |
id: semver | |
run: ./set-version.sh -t minor | |
- name: Publish snapshot for next minor release | |
run: VERSION=${{ steps.semver.outputs.SEMVER }} make snapshot-minor | |
env: | |
ORG_GRADLE_PROJECT_sonatypeUsername: ${{ secrets.SONATYPEUSERNAME }} | |
ORG_GRADLE_PROJECT_sonatypePassword: ${{ secrets.SONATYPEPASSWORD }} |