fix: migration files not sorted by timestamp when using glob #1881
This file contains 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: Postgres Test | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
permissions: | |
contents: read # to fetch code (actions/checkout) | |
jobs: | |
migration-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [18, 20] | |
postgres_version: [12.18, 13.14, 14.11, 15.6, 16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Postgres Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm run migrate up -m test/migrations && pnpm run migrate down 0 -m test/migrations --timestamps | |
env: | |
DATABASE_URL: postgres://ubuntu:ubuntu@localhost:5432/integration_test | |
config-1-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Config 1 Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Write config | |
run: | | |
mkdir -p config | |
cat > config/default.json << 'EOF' | |
{ | |
"db": { | |
"user": "ubuntu", | |
"password": "ubuntu", | |
"host": "localhost", | |
"port": "5432", | |
"database": "integration_test" | |
} | |
} | |
EOF | |
- name: Integration Test | |
run: pnpm run migrate up -m test/migrations && pnpm run migrate down 0 -m test/migrations --timestamps | |
config-2-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Config 2 Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Write URL object config | |
run: | | |
mkdir -p config | |
cat > config/default.json << 'EOF' | |
{ | |
"db": { | |
"url": { | |
"connectionString": "postgres://ubuntu:ubuntu@localhost:5432/integration_test" | |
} | |
} | |
} | |
EOF | |
- name: Integration Test for URL object config | |
run: pnpm run migrate up -m test/migrations && pnpm run migrate down 0 -m test/migrations --timestamps | |
dotenv-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Dotenv Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Write config | |
run: | | |
cat > .env << 'EOF' | |
DATABASE_URL=postgres://ubuntu:ubuntu@localhost:5432/integration_test | |
EOF | |
- name: Integration Test | |
run: pnpm run migrate up -m test/migrations && pnpm run migrate down 0 -m test/migrations --timestamps | |
dotenv-expand-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Dotenv Expand Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Write config | |
run: | | |
cat > .env << 'EOF' | |
POSTGRES_USER=ubuntu | |
POSTGRES_PASSWORD=ubuntu | |
POSTGRES_DB=integration_test | |
DATABASE_URL=postgres://$POSTGRES_USER:$POSTGRES_PASSWORD@localhost:5432/$POSTGRES_DB | |
EOF | |
- name: Integration Test | |
run: pnpm run migrate up -m test/migrations && pnpm run migrate down 0 -m test/migrations --timestamps | |
password-1-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
# can't use characters @#?/ in password - they have special meaning in url | |
POSTGRES_PASSWORD: 123456abcdefghABCDEFGH~\`\!$%^\&*-_=+{}[]\(\)\<\>,.\;:\"\'\|\\ | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Password 1 Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm run migrate up -m test/migrations && pnpm run migrate down 0 -m test/migrations --timestamps | |
env: | |
DATABASE_URL: postgres://ubuntu:123456abcdefghABCDEFGH~\`\!$%^\&*-_=+{}[]\(\)\<\>,.\;:\"\'\|\\@localhost:5432/integration_test | |
password-2-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: 123456abcdefghABCDEFGH~`!$%^&*-_=+{}[]()<>,.;:"'|\ | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Password 2 Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Write config | |
run: | | |
mkdir -p config | |
cat > config/default.json << 'EOF' | |
{ | |
"db": { | |
"user": "ubuntu", | |
"password": "123456abcdefghABCDEFGH~`!$%^&*-_=+{}[]()<>,.;:\"'|\\", | |
"host": "localhost", | |
"port": "5432", | |
"database": "integration_test" | |
} | |
} | |
EOF | |
- name: Integration Test | |
run: pnpm run migrate up -m test/migrations && pnpm run migrate down 0 -m test/migrations --timestamps | |
env-vars-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: 123456abcdefghABCDEFGH~\`\!@#$%^\&*-_=+{}[]\(\)\<\>,.\;:\"\'?\|/\\ | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Env Vars Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm run migrate up -m test/migrations && pnpm run migrate down 0 -m test/migrations --timestamps | |
env: | |
PGUSER: ubuntu | |
PGPASSWORD: 123456abcdefghABCDEFGH~\`\!@#$%^\&*-_=+{}[]\(\)\<\>,.\;:\"\'?\|/\\ | |
PGDATABASE: integration_test | |
schema-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Schema Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm run migrate up -s myschema --create-schema -m test/migrations && pnpm run migrate down 0 -s myschema -m test/migrations --timestamps | |
env: | |
DATABASE_URL: postgres://ubuntu:ubuntu@localhost:5432/integration_test | |
SCHEMA: myschema | |
schemas-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'Schemas Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm run migrate up -s myschema public --create-schema -m test/migrations && pnpm run migrate down 0 -s myschema public -m test/migrations --timestamps | |
env: | |
DATABASE_URL: postgres://ubuntu:ubuntu@localhost:5432/integration_test | |
SCHEMA: myschema | |
typescript-migration-via-ts-node-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'TypeScript Migration Test with ts-node: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm run migrate up --tsconfig tsconfig.json --ts-node -m test/ts/migrations && pnpm run migrate down 0 --tsconfig tsconfig.json --ts-node -m test/ts/migrations --timestamps | |
env: | |
DATABASE_URL: postgres://ubuntu:ubuntu@localhost:5432/integration_test | |
typescript-migration-via-tsx-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'TypeScript Migration Test with tsx: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm run migrate up --tsconfig tsconfig.json --tsx -m test/ts/migrations && pnpm run migrate down 0 --tsconfig tsconfig.json --tsx -m test/ts/migrations --timestamps | |
env: | |
DATABASE_URL: postgres://ubuntu:ubuntu@localhost:5432/integration_test | |
typescript-customrunner-url-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'TypeScript Customrunner Url Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm ts-node test/ts/customRunnerDBUrl.ts | |
env: | |
DATABASE_URL: postgres://ubuntu:ubuntu@localhost:5432/integration_test | |
typescript-customrunner-client-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'TypeScript Customrunner Client Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm ts-node test/ts/customRunnerDBClient.ts | |
env: | |
DATABASE_URL: postgres://ubuntu:ubuntu@localhost:5432/integration_test | |
typescript-customrunner-undef-count-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node_version: [20] | |
postgres_version: [16.2] | |
fail-fast: false | |
timeout-minutes: 10 | |
services: | |
postgres: | |
image: postgres:${{ matrix.postgres_version }}-alpine | |
env: | |
POSTGRES_USER: ubuntu | |
POSTGRES_PASSWORD: ubuntu | |
POSTGRES_DB: integration_test | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
ports: | |
# Maps tcp port 5432 on service container to the host | |
- 5432:5432 | |
name: 'TypeScript Customrunner undef count Test: pg-${{ matrix.postgres_version }}, node-${{ matrix.node_version }}, ubuntu-latest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pnpm | |
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 | |
- name: Set node version to ${{ matrix.node_version }} | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
with: | |
node-version: ${{ matrix.node_version }} | |
cache: 'pnpm' | |
- name: Install deps | |
run: pnpm install | |
- name: Build | |
run: pnpm run build | |
- name: Integration Test | |
run: pnpm ts-node test/ts/customRunnerUndefCount.ts | |
env: | |
DATABASE_URL: postgres://ubuntu:ubuntu@localhost:5432/integration_test |