Skip to content

Adds cross platform architecture compilation for native image #372

Adds cross platform architecture compilation for native image

Adds cross platform architecture compilation for native image #372

Workflow file for this run

name: Validate PR
on:
pull_request:
jobs:
validate:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v2
- name: "Running shasum for cache invalidation"
run: |
shasum build.sbt \
project/plugins.sbt \
project/build.properties > gha.cache.tmp
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('gha.cache.tmp') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Loading coursier cache
uses: actions/cache@v1
with:
path: ~/.cache/coursier
key: ${{ runner.os }}-coursier-${{ hashFiles('gha.cache.tmp') }}
restore-keys: |
${{ runner.os }}-coursier-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt "^validate"
scripted-universal:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt "^validateUniversal"
scripted-jar:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt "^validateJar"
scripted-bash:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt "^validateBash"
scripted-ash:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt "^validateAsh"
scripted-rpm:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt "^validateRpm"
scripted-debian:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt "^validateDebian"
scripted-jdk-packager:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Download JDK 1.8
run: wget -O zulu-jdk.tar.gz https://cdn.azul.com/zulu/bin/zulu8.38.0.13-ca-fx-jdk8.0.212-linux_x64.tar.gz
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
# the standard zulu dist doesn't include javafx
jdkFile: 'zulu-jdk.tar.gz'
- name: Validate
run: sbt "^validateJdkPackagerTravis"
scripted-docker:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt "^validateDocker"
scripted-jlink:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up JDK 1.11.0-2
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.11
- name: Validate
run: sbt "^validateJlink"
scripted-graavlvm:
runs-on: ubuntu-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Setup GraalVM environment
uses: graalvm/setup-graalvm@v1
with:
java-version: 17.0.8
distribution: 'graalvm'
cache: 'sbt'
- name: Docker Setup Buildx
uses: docker/setup-buildx-action@v2.9.1
- name: Validate
run: sbt "^validateGraalVMNativeImage"
scripted-macos:
runs-on: macos-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt "^validate" "^validateMacOS"
scripted-windows:
runs-on: windows-latest
strategy:
fail-fast: false
needs: [ validate ]
steps:
- uses: actions/checkout@v2
- name: Loading ivy cache
uses: actions/cache@v1
with:
path: ~/.ivy2/cache
key: ${{ runner.os }}-ivy-${{ hashFiles('**/*.sbt') }}
restore-keys: |
${{ runner.os }}-ivy-
- name: Set up Azul JDK 1.8 and SBT
uses: olafurpg/setup-scala@v10
with:
java-version: zulu@1.8
- name: Validate
run: sbt validateWindows