enso/.github/workflows/gui.yml
Michał Wawrzyniec Urbańczyk bd3b778721
Replace webpack with esbuild (#3592)
This PR replaces webpack with esbuild, as our bundler.

The change leads to out-of-the-box ~5x improvement in bundling times, reducing the latency in watch-based workflows. 
Along with this a new development server (with live reload capacity) has been introduced to support watch command.

[ci no changelog needed]

### Important Notes
* workflow for checking docs has been removed because it was using outdated prettier version and caused troubles; while the same check is performed in a better way by the GUI/Lint job.
* introduced little more typescript in the scripts in place of js, usually with minimal changes.
2022-08-10 03:41:44 +02:00

660 lines
31 KiB
YAML

---
name: GUI CI
"on":
push:
branches:
- develop
pull_request: {}
workflow_dispatch: {}
jobs:
enso-build-cli-ci-gen-job-assert-changelog-linux:
name: Assert if CHANGELOG.md was updated (on pull request)
runs-on:
- self-hosted
- Linux
- engine
steps:
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- id: changed_files
run: "git fetch\nlist=`git diff --name-only origin/develop HEAD | tr '\\n' ' '`\necho $list\necho \"::set-output name=list::'$list'\""
- run: "if [[ ${{ contains(steps.changed_files.outputs.list,'CHANGELOG.md') || contains(github.event.head_commit.message,'[ci no changelog needed]') || contains(github.event.pull_request.body,'[ci no changelog needed]') || github.event.pull_request.user.login == 'dependabot' }} == false ]]; then exit 1; fi"
if: "github.base_ref == 'develop' || github.base_ref == 'unstable' || github.base_ref == 'stable'"
enso-build-cli-ci-gen-job-build-backend-linux:
name: Build Backend (linux)
runs-on:
- self-hosted
- Linux
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run backend get"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-build-backend-macos:
name: Build Backend (macos)
runs-on:
- macos-latest
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run backend get"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-build-backend-windows:
name: Build Backend (windows)
runs-on:
- self-hosted
- Windows
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run backend get"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-build-wasm-linux:
name: Build GUI (WASM) (linux)
runs-on:
- self-hosted
- Linux
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run --upload-artifacts ${{ runner.os == 'Linux' }} wasm build"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-build-wasm-macos:
name: Build GUI (WASM) (macos)
runs-on:
- macos-latest
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run --upload-artifacts ${{ runner.os == 'Linux' }} wasm build"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-build-wasm-windows:
name: Build GUI (WASM) (windows)
runs-on:
- self-hosted
- Windows
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run --upload-artifacts ${{ runner.os == 'Linux' }} wasm build"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-cancel-workflow-linux:
name: Cancel Previous Runs
runs-on:
- X64
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.9.1
with:
access_token: "${{ github.token }}"
enso-build-cli-ci-gen-job-integration-test-linux:
name: IDE integration tests (linux)
needs:
- enso-build-cli-ci-gen-job-build-backend-linux
runs-on:
- self-hosted
- Linux
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run ide integration-test --backend-source current-ci-run"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-lint-linux:
name: Lint (linux)
runs-on:
- self-hosted
- Linux
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run lint"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-native-test-linux:
name: Native GUI tests (linux)
runs-on:
- self-hosted
- Linux
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run wasm test --no-wasm"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-package-ide-linux:
name: Package IDE (linux)
needs:
- enso-build-cli-ci-gen-job-build-backend-linux
- enso-build-cli-ci-gen-job-build-wasm-linux
runs-on:
- self-hosted
- Linux
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run ide build --wasm-source current-ci-run --backend-source current-ci-run"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-package-ide-macos:
name: Package IDE (macos)
needs:
- enso-build-cli-ci-gen-job-build-backend-macos
- enso-build-cli-ci-gen-job-build-wasm-linux
runs-on:
- macos-latest
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run ide build --wasm-source current-ci-run --backend-source current-ci-run"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-package-ide-windows:
name: Package IDE (windows)
needs:
- enso-build-cli-ci-gen-job-build-backend-windows
- enso-build-cli-ci-gen-job-build-wasm-linux
runs-on:
- self-hosted
- Windows
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run ide build --wasm-source current-ci-run --backend-source current-ci-run"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
enso-build-cli-ci-gen-job-wasm-test-linux:
name: WASM GUI tests (linux)
runs-on:
- self-hosted
- Linux
- engine
steps:
- name: Setup conda (GH runners only)
uses: s-weigand/setup-conda@v1.0.5
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
update-conda: false
conda-channels: "anaconda, conda-forge"
- name: Installing wasm-pack
uses: jetli/wasm-pack-action@v0.3.0
if: "startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')"
with:
version: v0.10.2
- name: Setup the Artifact API environment
uses: actions/github-script@v6
with:
script: "core.exportVariable(\"ACTIONS_RUNTIME_TOKEN\", process.env[\"ACTIONS_RUNTIME_TOKEN\"])\ncore.exportVariable(\"ACTIONS_RUNTIME_URL\", process.env[\"ACTIONS_RUNTIME_URL\"])\ncore.exportVariable(\"GITHUB_RETENTION_DAYS\", process.env[\"GITHUB_RETENTION_DAYS\"])"
- name: "Workaround for https://github.com/actions/checkout/issues/590 (Windows)"
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) || :\""
if: "runner.os == 'Windows'"
shell: cmd
- name: "Workaround for https://github.com/actions/checkout/issues/590 (non-Windows)"
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) || :"
if: "runner.os != 'Windows'"
shell: bash
- name: Checking out the repository
uses: actions/checkout@v2
with:
clean: true
- name: Build Script Setup
run: "./run --help"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- run: "./run wasm test --no-native"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: List files if failed (Windows)
run: Get-ChildItem -Force -Recurse
if: "failure() && runner.os == 'Windows'"
- name: List files if failed (non-Windows)
run: ls -lAR
if: "failure() && runner.os != 'Windows'"
env:
ENSO_BUILD_SKIP_VERSION_CHECK: "true"