2022-07-01 04:58:14 +03:00
|
|
|
name: Engine CI
|
2022-08-28 15:44:10 +03:00
|
|
|
on:
|
2021-12-27 19:56:35 +03:00
|
|
|
push:
|
2022-07-01 04:58:14 +03:00
|
|
|
branches:
|
|
|
|
- develop
|
|
|
|
pull_request: {}
|
|
|
|
workflow_dispatch: {}
|
2021-12-27 19:56:35 +03:00
|
|
|
jobs:
|
2022-07-01 04:58:14 +03:00
|
|
|
enso-build-cli-ci-gen-job-cancel-workflow-linux:
|
|
|
|
name: Cancel Previous Runs
|
2022-02-16 19:04:18 +03:00
|
|
|
runs-on:
|
|
|
|
- X64
|
|
|
|
steps:
|
|
|
|
- name: Cancel Previous Runs
|
|
|
|
uses: styfle/cancel-workflow-action@0.9.1
|
|
|
|
with:
|
2022-08-28 15:44:10 +03:00
|
|
|
access_token: ${{ github.token }}
|
2022-07-01 04:58:14 +03:00
|
|
|
enso-build-cli-ci-gen-job-ci-check-backend-linux:
|
|
|
|
name: Engine (linux)
|
2021-12-27 19:56:35 +03:00
|
|
|
runs-on:
|
|
|
|
- self-hosted
|
2022-07-01 04:58:14 +03:00
|
|
|
- Linux
|
2021-12-27 19:56:35 +03:00
|
|
|
- engine
|
|
|
|
steps:
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
|
|
|
|
name: Setup conda (GH runners only)
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: s-weigand/setup-conda@v1.0.5
|
|
|
|
with:
|
|
|
|
update-conda: false
|
2022-08-28 15:44:10 +03:00
|
|
|
conda-channels: anaconda, conda-forge
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
|
|
|
|
name: Installing wasm-pack
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: jetli/wasm-pack-action@v0.3.0
|
|
|
|
with:
|
|
|
|
version: v0.10.2
|
2022-10-11 00:38:48 +03:00
|
|
|
- name: Expose Artifact API and context information.
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: actions/github-script@v6
|
|
|
|
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-11-09 02:15:26 +03:00
|
|
|
- if: runner.os == 'Windows'
|
|
|
|
name: Workaround for https://github.com/actions/checkout/issues/590 (Windows)
|
2022-10-11 00:38:48 +03:00
|
|
|
run: '"c:\Program Files\Git\bin\bash.exe" -c "git checkout -f $(git -c user.name=x -c user.email=x@x commit-tree $(git hash-object -t tree /dev/null) < /dev/null) || :"'
|
2022-07-27 05:37:47 +03:00
|
|
|
shell: cmd
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: runner.os != 'Windows'
|
|
|
|
name: Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)
|
2022-10-11 00:38:48 +03:00
|
|
|
run: "git checkout -f $(git -c user.name=x -c user.email=x@x commit-tree $(git hash-object -t tree /dev/null) < /dev/null) || :"
|
2022-07-27 05:37:47 +03:00
|
|
|
shell: bash
|
2022-07-01 04:58:14 +03:00
|
|
|
- name: Checking out the repository
|
|
|
|
uses: actions/checkout@v2
|
|
|
|
with:
|
2022-08-25 01:46:36 +03:00
|
|
|
clean: false
|
2022-09-02 23:02:44 +03:00
|
|
|
submodules: recursive
|
2022-07-01 04:58:14 +03:00
|
|
|
- name: Build Script Setup
|
2022-08-28 15:44:10 +03:00
|
|
|
run: ./run --help
|
2022-07-01 04:58:14 +03:00
|
|
|
env:
|
2022-08-28 15:44:10 +03:00
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
|
|
|
- if: "contains(github.event.pull_request.labels.*.name, 'CI: Clean build required')"
|
|
|
|
name: Clean before
|
2022-10-11 00:38:48 +03:00
|
|
|
run: ./run git-clean
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
2022-08-28 15:44:10 +03:00
|
|
|
- run: ./run backend ci-check
|
2022-07-01 04:58:14 +03:00
|
|
|
env:
|
2022-08-28 15:44:10 +03:00
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
|
|
|
- if: success() || failure()
|
|
|
|
name: Engine Test Reporter
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: dorny/test-reporter@v1
|
|
|
|
with:
|
2022-10-11 00:38:48 +03:00
|
|
|
max-annotations: 50
|
|
|
|
name: Engine Tests (linux)
|
|
|
|
path: ${{ env.ENSO_TEST_JUNIT_DIR }}/*.xml
|
|
|
|
path-replace-backslashes: true
|
2022-10-07 05:36:07 +03:00
|
|
|
reporter: java-junit
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: success() || failure()
|
|
|
|
name: Standard Library Test Reporter
|
2022-10-07 05:36:07 +03:00
|
|
|
uses: dorny/test-reporter@v1
|
|
|
|
with:
|
2022-10-11 00:38:48 +03:00
|
|
|
max-annotations: 50
|
|
|
|
name: Standard Library Tests (linux)
|
|
|
|
path: ${{ env.ENSO_TEST_JUNIT_DIR }}/*/*.xml
|
|
|
|
path-replace-backslashes: true
|
2022-07-01 04:58:14 +03:00
|
|
|
reporter: java-junit
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: failure() && runner.os == 'Windows'
|
|
|
|
name: List files if failed (Windows)
|
2022-10-11 00:38:48 +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-10-11 00:38:48 +03:00
|
|
|
run: ls -lAR
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: "always() && always() && contains(github.event.pull_request.labels.*.name, 'CI: Clean build required')"
|
|
|
|
name: Clean after
|
2022-10-11 00:38:48 +03:00
|
|
|
run: ./run git-clean
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
2022-07-01 04:58:14 +03:00
|
|
|
enso-build-cli-ci-gen-job-ci-check-backend-macos:
|
|
|
|
name: Engine (macos)
|
|
|
|
runs-on:
|
|
|
|
- macos-latest
|
|
|
|
steps:
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
|
|
|
|
name: Setup conda (GH runners only)
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: s-weigand/setup-conda@v1.0.5
|
|
|
|
with:
|
|
|
|
update-conda: false
|
2022-08-28 15:44:10 +03:00
|
|
|
conda-channels: anaconda, conda-forge
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
|
|
|
|
name: Installing wasm-pack
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: jetli/wasm-pack-action@v0.3.0
|
|
|
|
with:
|
|
|
|
version: v0.10.2
|
2022-10-11 00:38:48 +03:00
|
|
|
- name: Expose Artifact API and context information.
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: actions/github-script@v6
|
|
|
|
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-11-09 02:15:26 +03:00
|
|
|
- if: runner.os == 'Windows'
|
|
|
|
name: Workaround for https://github.com/actions/checkout/issues/590 (Windows)
|
2022-10-11 00:38:48 +03:00
|
|
|
run: '"c:\Program Files\Git\bin\bash.exe" -c "git checkout -f $(git -c user.name=x -c user.email=x@x commit-tree $(git hash-object -t tree /dev/null) < /dev/null) || :"'
|
2022-07-27 05:37:47 +03:00
|
|
|
shell: cmd
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: runner.os != 'Windows'
|
|
|
|
name: Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)
|
2022-10-11 00:38:48 +03:00
|
|
|
run: "git checkout -f $(git -c user.name=x -c user.email=x@x commit-tree $(git hash-object -t tree /dev/null) < /dev/null) || :"
|
2022-07-27 05:37:47 +03:00
|
|
|
shell: bash
|
2022-07-01 04:58:14 +03:00
|
|
|
- name: Checking out the repository
|
|
|
|
uses: actions/checkout@v2
|
2022-01-17 21:21:34 +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-01 04:58:14 +03:00
|
|
|
- name: Build Script Setup
|
2022-08-28 15:44:10 +03:00
|
|
|
run: ./run --help
|
2022-07-01 04:58:14 +03:00
|
|
|
env:
|
2022-08-28 15:44:10 +03:00
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
|
|
|
- if: "contains(github.event.pull_request.labels.*.name, 'CI: Clean build required')"
|
|
|
|
name: Clean before
|
2022-10-11 00:38:48 +03:00
|
|
|
run: ./run git-clean
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
2022-08-28 15:44:10 +03:00
|
|
|
- run: ./run backend ci-check
|
2022-07-01 04:58:14 +03:00
|
|
|
env:
|
2022-08-28 15:44:10 +03:00
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
|
|
|
- if: success() || failure()
|
|
|
|
name: Engine Test Reporter
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: dorny/test-reporter@v1
|
|
|
|
with:
|
2022-10-11 00:38:48 +03:00
|
|
|
max-annotations: 50
|
|
|
|
name: Engine Tests (macos)
|
|
|
|
path: ${{ env.ENSO_TEST_JUNIT_DIR }}/*.xml
|
|
|
|
path-replace-backslashes: true
|
2022-10-07 05:36:07 +03:00
|
|
|
reporter: java-junit
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: success() || failure()
|
|
|
|
name: Standard Library Test Reporter
|
2022-10-07 05:36:07 +03:00
|
|
|
uses: dorny/test-reporter@v1
|
|
|
|
with:
|
2022-10-11 00:38:48 +03:00
|
|
|
max-annotations: 50
|
|
|
|
name: Standard Library Tests (macos)
|
|
|
|
path: ${{ env.ENSO_TEST_JUNIT_DIR }}/*/*.xml
|
|
|
|
path-replace-backslashes: true
|
2022-07-01 04:58:14 +03:00
|
|
|
reporter: java-junit
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: failure() && runner.os == 'Windows'
|
|
|
|
name: List files if failed (Windows)
|
2022-10-11 00:38:48 +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-10-11 00:38:48 +03:00
|
|
|
run: ls -lAR
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: "always() && always() && contains(github.event.pull_request.labels.*.name, 'CI: Clean build required')"
|
|
|
|
name: Clean after
|
2022-10-11 00:38:48 +03:00
|
|
|
run: ./run git-clean
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
2022-07-01 04:58:14 +03:00
|
|
|
enso-build-cli-ci-gen-job-ci-check-backend-windows:
|
|
|
|
name: Engine (windows)
|
|
|
|
runs-on:
|
|
|
|
- self-hosted
|
|
|
|
- Windows
|
|
|
|
- engine
|
|
|
|
steps:
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
|
|
|
|
name: Setup conda (GH runners only)
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: s-weigand/setup-conda@v1.0.5
|
|
|
|
with:
|
|
|
|
update-conda: false
|
2022-08-28 15:44:10 +03:00
|
|
|
conda-channels: anaconda, conda-forge
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
|
|
|
|
name: Installing wasm-pack
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: jetli/wasm-pack-action@v0.3.0
|
|
|
|
with:
|
|
|
|
version: v0.10.2
|
2022-10-11 00:38:48 +03:00
|
|
|
- name: Expose Artifact API and context information.
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: actions/github-script@v6
|
|
|
|
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-11-09 02:15:26 +03:00
|
|
|
- if: runner.os == 'Windows'
|
|
|
|
name: Workaround for https://github.com/actions/checkout/issues/590 (Windows)
|
2022-10-11 00:38:48 +03:00
|
|
|
run: '"c:\Program Files\Git\bin\bash.exe" -c "git checkout -f $(git -c user.name=x -c user.email=x@x commit-tree $(git hash-object -t tree /dev/null) < /dev/null) || :"'
|
2022-07-27 05:37:47 +03:00
|
|
|
shell: cmd
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: runner.os != 'Windows'
|
|
|
|
name: Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)
|
2022-10-11 00:38:48 +03:00
|
|
|
run: "git checkout -f $(git -c user.name=x -c user.email=x@x commit-tree $(git hash-object -t tree /dev/null) < /dev/null) || :"
|
2022-07-27 05:37:47 +03:00
|
|
|
shell: bash
|
2022-07-01 04:58:14 +03:00
|
|
|
- name: Checking out the repository
|
|
|
|
uses: actions/checkout@v2
|
|
|
|
with:
|
2022-08-25 01:46:36 +03:00
|
|
|
clean: false
|
2022-09-02 23:02:44 +03:00
|
|
|
submodules: recursive
|
2022-07-01 04:58:14 +03:00
|
|
|
- name: Build Script Setup
|
2022-08-28 15:44:10 +03:00
|
|
|
run: ./run --help
|
2022-07-01 04:58:14 +03:00
|
|
|
env:
|
2022-08-28 15:44:10 +03:00
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
|
|
|
- if: "contains(github.event.pull_request.labels.*.name, 'CI: Clean build required')"
|
|
|
|
name: Clean before
|
2022-10-11 00:38:48 +03:00
|
|
|
run: ./run git-clean
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
2022-08-28 15:44:10 +03:00
|
|
|
- run: ./run backend ci-check
|
2022-07-01 04:58:14 +03:00
|
|
|
env:
|
2022-08-28 15:44:10 +03:00
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
|
|
|
- if: success() || failure()
|
|
|
|
name: Engine Test Reporter
|
2022-07-01 04:58:14 +03:00
|
|
|
uses: dorny/test-reporter@v1
|
|
|
|
with:
|
2022-10-11 00:38:48 +03:00
|
|
|
max-annotations: 50
|
|
|
|
name: Engine Tests (windows)
|
|
|
|
path: ${{ env.ENSO_TEST_JUNIT_DIR }}/*.xml
|
|
|
|
path-replace-backslashes: true
|
2022-10-07 05:36:07 +03:00
|
|
|
reporter: java-junit
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: success() || failure()
|
|
|
|
name: Standard Library Test Reporter
|
2022-10-07 05:36:07 +03:00
|
|
|
uses: dorny/test-reporter@v1
|
|
|
|
with:
|
2022-10-11 00:38:48 +03:00
|
|
|
max-annotations: 50
|
|
|
|
name: Standard Library Tests (windows)
|
|
|
|
path: ${{ env.ENSO_TEST_JUNIT_DIR }}/*/*.xml
|
|
|
|
path-replace-backslashes: true
|
2022-07-01 04:58:14 +03:00
|
|
|
reporter: java-junit
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: failure() && runner.os == 'Windows'
|
|
|
|
name: List files if failed (Windows)
|
2022-10-11 00:38:48 +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-10-11 00:38:48 +03:00
|
|
|
run: ls -lAR
|
2022-11-09 02:15:26 +03:00
|
|
|
- if: "always() && always() && contains(github.event.pull_request.labels.*.name, 'CI: Clean build required')"
|
|
|
|
name: Clean after
|
2022-10-11 00:38:48 +03:00
|
|
|
run: ./run git-clean
|
|
|
|
env:
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
2022-11-09 02:15:26 +03:00
|
|
|
timeout-minutes: 360
|
2022-07-01 04:58:14 +03:00
|
|
|
env:
|
|
|
|
ENSO_BUILD_SKIP_VERSION_CHECK: "true"
|