enso/.github/workflows/gui.yml
Michał Wawrzyniec Urbańczyk 43a893cae6
Bump the build script (#3535)
2022-07-01 03:58:14 +02:00

511 lines
20 KiB
YAML

---
name: GUI CI
"on":
push:
branches:
- develop
- unstable
- stable
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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-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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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-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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
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: Checking out the repository
uses: actions/checkout@v2
with:
clean: false
- 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
run: ls -R
if: failure()
env:
ENSO_BUILD_SKIP_VERSION_CHECK: "true"