2023-01-27 03:09:09 +03:00
|
|
|
# This file is auto-generated. Do not edit it manually!
|
|
|
|
# Edit the enso_build::ci_gen module instead and run `cargo run --package enso-build-ci-gen`.
|
|
|
|
|
2022-07-05 23:03:29 +03:00
|
|
|
name: Benchmark Engine
|
2022-08-28 15:44:10 +03:00
|
|
|
on:
|
2022-07-05 23:03:29 +03:00
|
|
|
schedule:
|
2023-03-10 03:18:54 +03:00
|
|
|
- cron: 0 0 * * *
|
2022-08-11 10:21:44 +03:00
|
|
|
workflow_dispatch:
|
|
|
|
inputs:
|
|
|
|
just-check:
|
2022-10-11 00:38:48 +03:00
|
|
|
description: If set, benchmarks will be only checked to run correctly, not to measure actual performance.
|
2022-08-11 10:21:44 +03:00
|
|
|
required: true
|
|
|
|
type: boolean
|
|
|
|
default: false
|
2022-07-05 23:03:29 +03:00
|
|
|
jobs:
|
Add some engine jobs that run with Oracle GraalVM (#9322)
Adds `Oracle GraalVM` configuration for some backend jobs. `Oracle GraalVM` jobs run only on Linux so far. The old jobs use `GraalVM CE`.
### Important Notes
- The JDK to download and use is deduced from the `JAVA_VENDOR` environment variable. By default, `GraalVM CE` is used.
- sbt can be started with both GraalVM CE and Oracle GraalVM without any warnings.
- If you try to start sbt with JDK from a different vendor, but with the same Java version, a warning is printed.
Current list of jobs in the `Engine CI` workflow (these jobs are visible on this PR, because they are scheduled to run on every PR):
- Engine (GraalVM CE) (linux, x86_64)
- Engine (GraalVM CE) (macos, x86_64)
- Engine (GraalVM CE) (windows, x86_64)
- **Engine (Oracle GraalVM) (linux, x86_64)**
- Scala Tests (GraalVM CE) (linux, x86_64)
- Scala Tests (GraalVM CE) (macos, x86_64)
- Scala Tests (GraalVM CE) (windows, x86_64)
- **Scala Tests (Oracle GraalVM) (linux, x86_64)**
- Standard Library Tests (GraalVM CE) (linux, x86_64)
- Standard Library Tests (GraalVM CE) (macos, x86_64)
- Standard Library Tests (GraalVM CE) (windows, x86_64)
- **Standard Library Tests (Oracle GraalVM) (linux x86_64)**
- Verify License Packages (linux, x86_64)
Benchmark Engine workflow (not visible on this PR, cannot schedule manually yet):
- Benchmark Engine (GraalVM CE)
- **Benchmark Engine (Oracle GraalVM)**
Benchmark Standard Libraries workflow (not visible on this PR, cannot schedule manually yet):
- Benchmark Standard Libraries (GraalVM CE)
- **Benchmark Standard Libraries (Oracle GraalVM)**
2024-03-12 22:25:26 +03:00
|
|
|
benchmark-engine-graal-vm-ce:
|
|
|
|
name: Benchmark Engine (GraalVM CE)
|
2022-07-05 23:03:29 +03:00
|
|
|
runs-on:
|
|
|
|
- benchmark
|
|
|
|
steps:
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
|
|
|
|
name: Installing wasm-pack
|
2023-09-30 01:24:20 +03:00
|
|
|
uses: jetli/wasm-pack-action@v0.4.0
|
2022-07-05 23:03:29 +03:00
|
|
|
with:
|
|
|
|
version: v0.10.2
|
2022-10-11 00:38:48 +03:00
|
|
|
- name: Expose Artifact API and context information.
|
2024-02-01 15:53:50 +03:00
|
|
|
uses: actions/github-script@v7
|
2022-07-05 23:03:29 +03:00
|
|
|
with:
|
2022-10-11 00:38:48 +03:00
|
|
|
script: "\n core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\n core.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\n core.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])\n console.log(context)\n "
|
2022-07-05 23:03:29 +03:00
|
|
|
- name: Checking out the repository
|
2023-10-17 01:59:52 +03:00
|
|
|
uses: actions/checkout@v4
|
2022-07-05 23:03:29 +03:00
|
|
|
with:
|
2022-08-25 01:46:36 +03:00
|
|
|
clean: false
|
2022-09-02 23:02:44 +03:00
|
|
|
submodules: recursive
|
2022-07-05 23:03:29 +03:00
|
|
|
- name: Build Script Setup
|
2024-03-11 20:44:39 +03:00
|
|
|
run: ./run --help || (git clean -ffdx && ./run --help)
|
2022-07-05 23:03:29 +03:00
|
|
|
env:
|
2022-08-28 15:44:10 +03:00
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2024-03-05 18:40:46 +03:00
|
|
|
- if: (always())
|
2022-11-09 02:15:26 +03:00
|
|
|
name: Clean before
|
2022-10-11 00:38:48 +03:00
|
|
|
run: ./run git-clean
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2023-05-05 22:24:19 +03:00
|
|
|
- run: ./run backend benchmark runtime
|
2022-07-05 23:03:29 +03:00
|
|
|
env:
|
2022-08-28 15:44:10 +03:00
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: failure() && runner.os == 'Windows'
|
|
|
|
name: List files if failed (Windows)
|
2022-08-10 04:41:44 +03:00
|
|
|
run: Get-ChildItem -Force -Recurse
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: failure() && runner.os != 'Windows'
|
|
|
|
name: List files if failed (non-Windows)
|
2022-08-10 04:41:44 +03:00
|
|
|
run: ls -lAR
|
2024-03-05 18:40:46 +03:00
|
|
|
- if: (always())
|
2022-11-09 02:15:26 +03:00
|
|
|
name: Clean after
|
2022-10-11 00:38:48 +03:00
|
|
|
run: ./run git-clean
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
Add some engine jobs that run with Oracle GraalVM (#9322)
Adds `Oracle GraalVM` configuration for some backend jobs. `Oracle GraalVM` jobs run only on Linux so far. The old jobs use `GraalVM CE`.
### Important Notes
- The JDK to download and use is deduced from the `JAVA_VENDOR` environment variable. By default, `GraalVM CE` is used.
- sbt can be started with both GraalVM CE and Oracle GraalVM without any warnings.
- If you try to start sbt with JDK from a different vendor, but with the same Java version, a warning is printed.
Current list of jobs in the `Engine CI` workflow (these jobs are visible on this PR, because they are scheduled to run on every PR):
- Engine (GraalVM CE) (linux, x86_64)
- Engine (GraalVM CE) (macos, x86_64)
- Engine (GraalVM CE) (windows, x86_64)
- **Engine (Oracle GraalVM) (linux, x86_64)**
- Scala Tests (GraalVM CE) (linux, x86_64)
- Scala Tests (GraalVM CE) (macos, x86_64)
- Scala Tests (GraalVM CE) (windows, x86_64)
- **Scala Tests (Oracle GraalVM) (linux, x86_64)**
- Standard Library Tests (GraalVM CE) (linux, x86_64)
- Standard Library Tests (GraalVM CE) (macos, x86_64)
- Standard Library Tests (GraalVM CE) (windows, x86_64)
- **Standard Library Tests (Oracle GraalVM) (linux x86_64)**
- Verify License Packages (linux, x86_64)
Benchmark Engine workflow (not visible on this PR, cannot schedule manually yet):
- Benchmark Engine (GraalVM CE)
- **Benchmark Engine (Oracle GraalVM)**
Benchmark Standard Libraries workflow (not visible on this PR, cannot schedule manually yet):
- Benchmark Standard Libraries (GraalVM CE)
- **Benchmark Standard Libraries (Oracle GraalVM)**
2024-03-12 22:25:26 +03:00
|
|
|
env:
|
|
|
|
GRAAL_EDITION: GraalVM CE
|
|
|
|
timeout-minutes: 240
|
2022-07-05 23:03:29 +03:00
|
|
|
env:
|
2022-10-11 00:38:48 +03:00
|
|
|
ENSO_BUILD_MINIMAL_RUN: ${{ true == inputs.just-check }}
|
2022-07-05 23:03:29 +03:00
|
|
|
ENSO_BUILD_SKIP_VERSION_CHECK: "true"
|