Optimize building and casting of EnsoMultiValue #1239
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This file is not auto-generated. Feel free to edit it. | |
name: ✨ GUI | |
on: | |
push: | |
branches: | |
- develop | |
pull_request: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }}-gui-pull-request | |
cancel-in-progress: ${{ github.ref != 'refs/heads/develop' }} | |
permissions: | |
contents: read # Read-only access to repository contents | |
issues: write # Write access to issues | |
pull-requests: write # Write access to pull requests | |
statuses: write # Write access to commit statuses | |
checks: write | |
jobs: | |
gui-changed-files: | |
name: 🔍 Files Changed | |
uses: ./.github/workflows/gui-changed-files.yml | |
secrets: inherit | |
prettier: | |
name: 🧹 Prettier | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: 📦 Setup pnpm | |
uses: pnpm/action-setup@v4 | |
- uses: actions/setup-node@v4 | |
name: ⎔ Setup Node | |
with: | |
node-version-file: .node-version | |
cache: "pnpm" | |
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') | |
name: Installing wasm-pack | |
uses: jetli/[email protected] | |
with: | |
version: v0.12.1 | |
- name: 📦 Install dependencies | |
run: pnpm install --frozen-lockfile --ignore-scripts | |
- uses: actions/cache/restore@v4 | |
name: Download cache | |
id: cache | |
with: | |
path: | | |
node_modules/.cache/prettier | |
key: ${{ runner.os }}-gui-${{ github.run_id }} | |
restore-keys: | | |
${{ runner.os }}-gui | |
- name: Run prettier | |
run: pnpm run ci:prettier | |
- name: 💾 Save cache | |
uses: actions/cache/save@v4 | |
if: always() && steps.cache.outputs.cache-hit != 'true' | |
id: save-cache | |
with: | |
key: ${{ steps.cache.outputs.cache-primary-key }} | |
path: | | |
node_modules/.cache/prettier | |
gui-checks: | |
name: 🧰 Checks | |
uses: ./.github/workflows/gui-checks.yml | |
needs: [gui-changed-files] | |
if: needs.gui-changed-files.outputs.any_changed == 'true' || github.ref == 'refs/heads/develop' | |
secrets: inherit | |
storybook: | |
name: 📚 Deploy Storybook | |
uses: ./.github/workflows/storybook.yml | |
needs: [gui-changed-files] | |
if: needs.gui-changed-files.outputs.any_changed == 'true' || github.ref == 'refs/heads/develop' | |
secrets: inherit | |
required-checks: | |
name: GUI Required Checks | |
runs-on: ubuntu-latest | |
needs: [prettier, gui-checks, storybook] | |
if: always() | |
steps: | |
- name: Checks Summary | |
run: | | |
echo "Prettier: ${{ needs.prettier.result }}" | |
echo "GUI Checks: ${{ needs.gui-checks.result }}" | |
echo "Storybook: ${{ needs.storybook.result }}" | |
declare -a checks | |
checks+=("${{ needs.prettier.result }}") | |
checks+=("${{ needs.gui-checks.result }}") | |
checks+=("${{ needs.storybook.result }}") | |
for result in "${checks[@]}"; do | |
if [[ "$result" == "failure" ]]; then | |
exit 1 | |
fi | |
done | |
echo "Success!" |