Skip to content

chore: implement tag inclusion for contracts #1242

chore: implement tag inclusion for contracts

chore: implement tag inclusion for contracts #1242

name: Composition CI
on:
pull_request:
paths:
- "composition/**/*"
- "composition-go/**/*"
# composition-go uses code from shared/
- "shared/**/*"
- ".github/workflows/composition-ci.yaml"
concurrency:
group: ${{github.workflow}}-${{github.head_ref}}
cancel-in-progress: true
env:
CI: true
jobs:
build_test:
timeout-minutes: 10
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: ./.github/actions/node
- uses: ./.github/actions/go
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Generate code
run: pnpm buf generate --template buf.ts.gen.yaml
- name: Generate code to be embedded in Go library
run: ./generate.sh
working-directory: composition-go
- name: Check if git is not dirty after generating files
run: git diff --no-ext-diff --exit-code
- name: Build
run: pnpm run --filter ./composition --filter ./connect --filter ./shared build
- name: Test
run: pnpm run --filter composition test
- name: Lint
run: pnpm run --filter composition lint
- name: Run linter on composition-go
uses: ./.github/actions/go-linter
with:
working-directory: ./composition-go
- name: Test Go library
run: go test
working-directory: composition-go
- name: Test Go library with V8
run: go test -tags wg_composition_v8
working-directory: composition-go