SY-4129: Add TypeScript Client Support for Server-Side Import and Export #9289
Workflow file for this run
This file contains hidden or 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
| name: Test - Freighter (Python & TypeScript) | |
| on: | |
| pull_request: | |
| paths: | |
| - .github/actions/test-python/** | |
| - .github/actions/test-typescript/** | |
| - .github/workflows/test.freighter.yaml | |
| - alamos/go/** | |
| - alamos/py/** | |
| - alamos/ts/** | |
| - codecov.yaml | |
| - configs/eslint/** | |
| - configs/ts/** | |
| - configs/vite/** | |
| - freighter/go/** | |
| - freighter/integration/** | |
| - freighter/py/** | |
| - freighter/ts/** | |
| - package.json | |
| - pnpm-lock.yaml | |
| - pnpm-workspace.yaml | |
| - pyproject.toml | |
| - uv.lock | |
| - uv.toml | |
| - turbo.json | |
| - x/go/** | |
| - x/ts/** | |
| push: | |
| branches: | |
| - main | |
| - rc | |
| paths: | |
| - .github/actions/test-python/** | |
| - .github/actions/test-typescript/** | |
| - .github/workflows/test.freighter.yaml | |
| - alamos/go/** | |
| - alamos/py/** | |
| - alamos/ts/** | |
| - codecov.yaml | |
| - configs/eslint/** | |
| - configs/ts/** | |
| - configs/vite/** | |
| - freighter/go/** | |
| - freighter/integration/** | |
| - freighter/py/** | |
| - freighter/ts/** | |
| - package.json | |
| - pnpm-lock.yaml | |
| - pnpm-workspace.yaml | |
| - pyproject.toml | |
| - uv.lock | |
| - uv.toml | |
| - turbo.json | |
| - x/go/** | |
| - x/ts/** | |
| workflow_dispatch: | |
| jobs: | |
| changes: | |
| name: Changes | |
| runs-on: ubuntu-latest | |
| outputs: | |
| integration: ${{ steps.filter.outputs.integration }} | |
| py: ${{ steps.filter.outputs.py }} | |
| ts: ${{ steps.filter.outputs.ts }} | |
| steps: | |
| - name: Checkout Repository | |
| uses: actions/checkout@v7 | |
| - name: Diff Changes | |
| uses: dorny/paths-filter@v4 | |
| id: filter | |
| with: | |
| base: ${{ github.ref }} | |
| filters: | | |
| server: &server | |
| - .github/workflows/test.freighter.yaml | |
| - alamos/go/** | |
| - freighter/go/** | |
| - freighter/integration/** | |
| - x/go/** | |
| py: | |
| - *server | |
| - .github/actions/test-python/** | |
| - alamos/py/** | |
| - codecov.yaml | |
| - freighter/py/** | |
| - pyproject.toml | |
| - uv.lock | |
| - uv.toml | |
| ts: | |
| - *server | |
| - .github/actions/test-typescript/** | |
| - alamos/ts/** | |
| - codecov.yaml | |
| - configs/eslint/** | |
| - configs/ts/** | |
| - configs/vite/** | |
| - freighter/ts/** | |
| - package.json | |
| - pnpm-lock.yaml | |
| - pnpm-workspace.yaml | |
| - turbo.json | |
| - x/ts/** | |
| server: | |
| needs: changes | |
| if: needs.changes.outputs.py == 'true' || needs.changes.outputs.ts == 'true' | |
| uses: ./.github/workflows/build.docker.yaml | |
| permissions: | |
| packages: write | |
| with: | |
| module: freighter/integration | |
| tag: ghcr.io/synnaxlabs/freighter-go-integration:latest | |
| py: | |
| name: Test - Python | |
| needs: [changes, server] | |
| if: needs.changes.outputs.py == 'true' | |
| runs-on: ubuntu-latest | |
| env: | |
| CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
| services: | |
| integration: | |
| image: ghcr.io/synnaxlabs/freighter-go-integration:latest | |
| credentials: | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| ports: | |
| - 8080:8080 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| - name: Test Python | |
| uses: ./.github/actions/test-python | |
| with: | |
| directory: freighter/py | |
| coverage: true | |
| coverage_module: freighter | |
| coverage_flag: freighter-py | |
| ts: | |
| name: Test - TypeScript | |
| needs: [changes, server] | |
| if: needs.changes.outputs.ts == 'true' | |
| runs-on: ubuntu-latest | |
| env: | |
| TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }} | |
| TURBO_TEAM: ${{ vars.TURBO_TEAM }} | |
| CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
| services: | |
| integration: | |
| image: ghcr.io/synnaxlabs/freighter-go-integration:latest | |
| credentials: | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| ports: | |
| - 8080:8080 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| - name: Test TypeScript | |
| uses: ./.github/actions/test-typescript | |
| with: | |
| package: freighter | |
| coverage_flag: freighter-ts | |
| directory: freighter/ts |