Skip to content

Moving from Vite default to Bun default #797

Moving from Vite default to Bun default

Moving from Vite default to Bun default #797

Workflow file for this run

name: Lucky CLI Main CI
on:
push:
branches: [main]
pull_request:
branches: "*"
env:
FORCE_COLOR: 1
LUCKY_ENV: test
jobs:
check_format:
strategy:
fail-fast: false
runs-on: ubuntu-latest
continue-on-error: false
steps:
- uses: actions/checkout@v6
- uses: crystal-lang/install-crystal@v1
with:
crystal: latest
- name: Install shards
run: shards install
- name: Format
run: crystal tool format --check
platform_specs:
needs: check_format
strategy:
fail-fast: false
matrix:
include:
- { os: ubuntu-latest }
- { os: macos-latest }
- { os: windows-latest }
runs-on: ${{matrix.os}}
continue-on-error: false
steps:
- uses: actions/checkout@v6
- uses: crystal-lang/install-crystal@v1
with:
crystal: latest
- name: Install shards
run: shards install
- name: Run unit and integration specs
run: crystal spec spec/integration/ spec/unit/
# NOTE: These e2e specs will take a while to run
browser_with_auth:
needs: [check_format, platform_specs]
strategy:
fail-fast: false
matrix:
include:
- { os: ubuntu-latest }
- { os: macos-latest }
# - { os: windows-latest }
runs-on: ${{matrix.os}}
continue-on-error: false
steps:
- uses: actions/checkout@v6
- name: Setup PostgreSQL
uses: ikalnytskyi/action-setup-postgres@v8
with:
username: postgres
password: postgres
port: 5432
postgres-version: 18
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- uses: crystal-lang/install-crystal@v1
with:
crystal: latest
- name: Install shards
run: shards install --skip-postinstall --skip-executables
- name: Install LuckyCLI
run: crystal build src/lucky.cr
- name: Add current directory to PATH
run: echo "$PWD" >> "$GITHUB_PATH"
- name: Set SHARDS_OVERRIDE
run: echo "SHARDS_OVERRIDE=${GITHUB_WORKSPACE}/shard.override.yml" >> "$GITHUB_ENV"
- name: Run e2e Browser app with authentication flow
run: crystal spec spec/end_to_end/browser_with_auth_spec.cr
browser_without_auth:
needs: [check_format, platform_specs]
strategy:
fail-fast: false
matrix:
include:
- { os: ubuntu-latest }
- { os: macos-latest }
# - { os: windows-latest }
runs-on: ${{matrix.os}}
continue-on-error: false
steps:
- uses: actions/checkout@v6
- name: Setup PostgreSQL
uses: ikalnytskyi/action-setup-postgres@v8
with:
username: postgres
password: postgres
port: 5432
postgres-version: 18
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- uses: crystal-lang/install-crystal@v1
with:
crystal: latest
- name: Install shards
run: shards install --skip-postinstall --skip-executables
- name: Install LuckyCLI
run: crystal build src/lucky.cr
- name: Add current directory to PATH
run: echo "$PWD" >> "$GITHUB_PATH"
- name: Set SHARDS_OVERRIDE
run: echo "SHARDS_OVERRIDE=${GITHUB_WORKSPACE}/shard.override.yml" >> "$GITHUB_ENV"
- name: Run e2e Browser app without authentication flow
run: crystal spec spec/end_to_end/browser_no_auth_spec.cr
api_with_auth:
needs: [check_format, platform_specs]
strategy:
fail-fast: false
matrix:
include:
- { os: ubuntu-latest }
- { os: macos-latest }
# - { os: windows-latest }
runs-on: ${{matrix.os}}
continue-on-error: false
steps:
- uses: actions/checkout@v6
- name: Setup PostgreSQL
uses: ikalnytskyi/action-setup-postgres@v8
with:
username: postgres
password: postgres
port: 5432
postgres-version: 18
- uses: crystal-lang/install-crystal@v1
with:
crystal: latest
- name: Install shards
run: shards install --skip-postinstall --skip-executables
- name: Install LuckyCLI
run: crystal build src/lucky.cr
- name: Add current directory to PATH
run: echo "$PWD" >> "$GITHUB_PATH"
- name: Set SHARDS_OVERRIDE
run: echo "SHARDS_OVERRIDE=${GITHUB_WORKSPACE}/shard.override.yml" >> "$GITHUB_ENV"
- name: Run e2e API app with authentication flow
run: crystal spec spec/end_to_end/api_with_auth_spec.cr
api_without_auth:
needs: [check_format, platform_specs]
strategy:
fail-fast: false
matrix:
include:
- { os: ubuntu-latest }
- { os: macos-latest }
# - { os: windows-latest }
runs-on: ${{matrix.os}}
continue-on-error: false
steps:
- uses: actions/checkout@v6
- name: Setup PostgreSQL
uses: ikalnytskyi/action-setup-postgres@v8
with:
username: postgres
password: postgres
port: 5432
postgres-version: 18
- uses: crystal-lang/install-crystal@v1
with:
crystal: latest
- name: Install shards
run: shards install --skip-postinstall --skip-executables
- name: Install LuckyCLI
run: crystal build src/lucky.cr -o lucky
- name: Add current directory to PATH
run: echo "$PWD" >> "$GITHUB_PATH"
- name: Set SHARDS_OVERRIDE
run: echo "SHARDS_OVERRIDE=${GITHUB_WORKSPACE}/shard.override.yml" >> "$GITHUB_ENV"
- name: Run e2e API app without authentication flow
run: crystal spec spec/end_to_end/api_no_auth_spec.cr