Skip to content

feat(runtime): migrate docker-git to bun and gridland #571

feat(runtime): migrate docker-git to bun and gridland

feat(runtime): migrate docker-git to bun and gridland #571

Workflow file for this run

name: Check
on:
workflow_dispatch:
pull_request:
branches: [main]
push:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
build:
name: Build
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Build (docker-git package)
run: bun run --cwd packages/app build
types:
name: Types
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Typecheck (app)
run: bun run --cwd packages/app check
- name: Typecheck (lib)
run: bun run --cwd packages/lib typecheck
lint:
name: Lint
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Lint (app)
run: bun run --cwd packages/app lint
- name: Lint (lib)
run: bun run --cwd packages/lib lint
test:
name: Test
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Test (app)
run: bun run --cwd packages/app test
- name: Test (lib)
run: bun run --cwd packages/lib test
lint-effect:
name: Lint Effect-TS
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Lint Effect-TS (app)
run: bun run --cwd packages/app lint:effect
- name: Lint Effect-TS (lib)
run: bun run --cwd packages/lib lint:effect
e2e-local-package:
name: E2E (Local package CLI)
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Pack and run local package via Bun
run: bash scripts/e2e/local-package-cli.sh
e2e-opencode:
name: E2E (OpenCode)
runs-on: ubuntu-latest
timeout-minutes: 25
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Docker info
run: docker version && docker compose version
- name: OpenCode autoconnect
run: bash scripts/e2e/opencode-autoconnect.sh
e2e-clone-cache:
name: E2E (Clone cache)
runs-on: ubuntu-latest
timeout-minutes: 25
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Docker info
run: docker version && docker compose version
- name: Clone cache reuse
run: bash scripts/e2e/clone-cache.sh
e2e-login-context:
name: E2E (Login context)
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Docker info
run: docker version && docker compose version
- name: Login context notice
run: bash scripts/e2e/login-context.sh
e2e-runtime-volumes-ssh:
name: E2E (Runtime volumes + SSH)
runs-on: ubuntu-latest
timeout-minutes: 25
steps:
- uses: actions/checkout@v6
- name: Install dependencies
uses: ./.github/actions/setup
- name: Docker info
run: docker version && docker compose version
- name: Runtime volumes + host SSH CLI
run: bash scripts/e2e/runtime-volumes-ssh.sh