Files
catalyst/.github/workflows/ci.yml
dependabot[bot] c94a0f4940 build(deps): bump actions/checkout from 4 to 6 (#1172)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-23 07:11:55 +01:00

129 lines
3.3 KiB
YAML

name: CI
on:
push: { branches: [ main ] }
pull_request:
release: { types: [ published ] }
jobs:
generate-go:
name: Generate Go
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v5
with: { go-version: '1.25' }
- run: make install-golangci-lint generate-go
- run: git diff --exit-code
generate-ui:
name: Generate UI
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v1
- run: make install-ui generate-ui
- run: git diff --exit-code
fmt-go:
name: Fmt Go
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v5
with: { go-version: '1.25' }
- run: make install-golangci-lint fmt-go
- run: git diff --exit-code
fmt-ui:
name: Fmt UI
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v1
- run: make install-ui fmt-ui
lint-go:
name: Lint Go
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v5
with: { go-version: '1.25' }
- run: make install-golangci-lint lint-go
lint-ui:
name: Lint UI
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v1
- run: make install-ui lint-ui
build-ui:
name: Build UI
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v1
- run: make install-ui build-ui
test-go:
name: Test Go
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v5
with: { go-version: '1.25' }
- run: make test-coverage
- uses: codecov/codecov-action@v4
with:
files: ./coverage.out
token: ${{ secrets.CODECOV_TOKEN }}
test-ui:
name: Test UI
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v5
with: { go-version: '1.25' }
- uses: oven-sh/setup-bun@v1
- run: make install-ui test-ui
test-playwright:
name: Test Playwright
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v5
with: { go-version: '1.25' }
- uses: oven-sh/setup-bun@v1
- run: make install-ui build-ui install-playwright test-playwright
list-upgrade-test-folders:
name: List Upgrade Test Folders
runs-on: ubuntu-latest
outputs:
folders: ${{ steps.set-dirs.outputs.matrix }}
steps:
- uses: actions/checkout@v6
- id: set-dirs
run: |
FOLDERS=$(ls -d ./testing/data/*/ | xargs -n 1 basename | jq -R . | jq -c -s .)
echo "matrix=$FOLDERS" >> $GITHUB_OUTPUT
test-upgrade-playwright:
name: Test Playwright Upgrade
needs: list-upgrade-test-folders
runs-on: ubuntu-latest
strategy:
matrix:
folder: ${{ fromJson(needs.list-upgrade-test-folders.outputs.folders) }}
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v5
with: { go-version: '1.25' }
- uses: oven-sh/setup-bun@v1
- run: mkdir -p catalyst_data
- run: cp testing/data/${{ matrix.folder }}/data.db catalyst_data/data.db
- run: make install-ui build-ui install-playwright test-playwright