Skip to content

Checks

Checks #2162

name: Checks
on:
workflow_dispatch: {}
push:
branches:
- stable
- v3
- feat/js-runtime-v3
schedule:
- cron: '0 0-23/2 * * *'
env:
GRADLE_CACHE_LOCAL: false
GRADLE_CACHE_REMOTE: true
GRADLE_CACHE_PUSH: true
CACHE_ENDPOINT: "https://global.less.build/cache/generic/"
GRADLE_CACHE_USERNAME: ${{ secrets.GRADLE_CACHE_USERNAME }}
GRADLE_CACHE_PASSWORD: ${{ secrets.GRADLE_CACHE_PASSWORD }}
GRADLE_OPTS: "-Xmx6g -XX:MaxMetaspaceSize=1024m -XX:+UseParallelGC"
jobs:
##
## Job: Check Repo Pull-ability
##
check-repos:
name: "Repositories: Clone Test"
runs-on: "ubuntu-latest"
continue-on-error: true
permissions:
contents: "read"
id-token: "write"
checks: "write"
pull-requests: "write"
steps:
- name: "Setup: Test Area"
run: mkdir -p repos
- name: "Clone: Elide"
run: git clone https://github.com/elide-dev/v3.git ./repos/elide
- name: "Clone: Runtime"
continue-on-error: true
run: git clone https://github.com/elide-dev/runtime.git ./repos/runtime
- name: "Clone: Build Tools"
run: git clone https://github.com/elide-dev/buildtools.git ./repos/buildtools
##
## Job: Check Image Pull-ability
##
check-images:
name: "Images: Pull Test"
runs-on: "ubuntu-latest"
permissions:
contents: "read"
id-token: "write"
checks: "write"
pull-requests: "write"
steps:
- name: "Setup: Docker"
uses: docker/setup-buildx-action@v2
id: buildx
with:
install: true
## Image: CLI
- name: "Pull: CLI (DockerHub)"
run: docker pull elidetools/elide:latest
- name: "Pull: CLI (GitHub)"
run: docker pull ghcr.io/elide-dev/elide:latest
## Image: Base
- name: "Pull: Base (DockerHub)"
run: docker pull elidetools/base:latest
- name: "Pull: Base (GitHub)"
run: docker pull ghcr.io/elide-dev/base:latest
## Image: Base (Alpine)
- name: "Pull: Base - Alpine (DockerHub)"
run: docker pull elidetools/base-alpine:latest
- name: "Pull: Base - Alpine (GitHub)"
run: docker pull ghcr.io/elide-dev/base/alpine:latest
## Image: Runtime (JVM11)
- name: "Pull: Runtime - JVM11 (DockerHub)"
run: docker pull elidetools/jvm11:latest
- name: "Pull: Runtime - JVM11 (GitHub)"
run: docker pull ghcr.io/elide-dev/runtime/jvm11:latest
## Image: Runtime (JVM17)
- name: "Pull: Runtime - JVM17 (DockerHub)"
run: docker pull elidetools/jvm17:latest
- name: "Pull: Runtime - JVM17 (GitHub)"
run: docker pull ghcr.io/elide-dev/runtime/jvm17:latest
## Image: Runtime (JVM19)
- name: "Pull: Runtime - JVM19 (DockerHub)"
run: docker pull elidetools/jvm19:latest
- name: "Pull: Runtime - JVM19 (GitHub)"
run: docker pull ghcr.io/elide-dev/runtime/jvm19:latest
## Image: Runtime (Native)
- name: "Pull: Runtime - Native (DockerHub)"
run: docker pull elidetools/native:latest
- name: "Pull: Runtime - Native (GitHub)"
run: docker pull ghcr.io/elide-dev/runtime/native:latest
## Image: Runtime (Native Alpine)
- name: "Pull: Runtime - Native Alpine (DockerHub)"
run: docker pull elidetools/native-alpine:latest
- name: "Pull: Runtime - Native Alpine (GitHub)"
run: docker pull ghcr.io/elide-dev/runtime/native/alpine:latest
##
## Job: Check Cached Build
##
check-build:
name: "Quick-build"
runs-on: "ubuntu-latest"
permissions:
contents: "read"
id-token: "write"
checks: "write"
pull-requests: "write"
defaults:
run:
shell: bash
steps:
- name: "Setup: Docker"
uses: docker/setup-buildx-action@v2
id: buildx
with:
install: true
- name: "Setup: Checkout"
uses: actions/checkout@v3
- name: "Setup: GraalVM (Java 19)"
uses: graalvm/setup-graalvm@v1
with:
components: "native-image,js"
version: 22.3.1
java-version: 19
check-for-updates: ${{ matrix.os == 'ubuntu' }}
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: "Setup: Node"
uses: actions/setup-node@v3
with:
node-version: 18
cache: "yarn"
- name: "Setup: Yarn"
run: npm install -g [email protected] && yarn
- id: "auth"
name: "Setup: Authorize Service Account"
uses: "google-github-actions/auth@v1"
with:
credentials_json: "${{ secrets.BUILDBOT_SERVICE_ACCOUNT }}"
create_credentials_file: true
export_environment_variables: true
cleanup_credentials: true
- name: "🛠️ Build"
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629 # v2.4.2
id: gradlebuild
continue-on-error: ${{ matrix.mode == 'labs' }}
env:
CI: true
with:
cache-read-only: false
arguments: |
build
-x check
-x test
-x jvmTest
-x jsTest
-x jsBrowserTest
-x nativeCompile
--scan
--no-daemon
--warning-mode=none
--dependency-verification=lenient
-Pelide.ci=true
-PbuildSamples=false
-PbuildDocsSite=false
-PbuildDocs=false
-Pversions.java.minimum=11
-Pversions.java.language=19