File: ci.yml

package info (click to toggle)
node-postgres 8.16.3%2B~cs35.24.27-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,772 kB
  • sloc: javascript: 15,879; python: 79; makefile: 57
file content (76 lines) | stat: -rw-r--r-- 1,858 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
name: CI

on: [push, pull_request]

permissions:
  contents: read

jobs:
  lint:
    timeout-minutes: 5
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          persist-credentials: false
      - name: Setup node
        uses: actions/setup-node@v4
        with:
          node-version: 18
          cache: yarn
      - run: yarn install --frozen-lockfile
      - run: yarn lint
  build:
    timeout-minutes: 15
    needs: lint
    services:
      postgres:
        image: ghcr.io/railwayapp-templates/postgres-ssl
        env:
          POSTGRES_USER: postgres
          POSTGRES_PASSWORD: postgres
          POSTGRES_HOST_AUTH_METHOD: 'md5'
          POSTGRES_DB: ci_db_test
        ports:
          - 5432:5432
        options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
    strategy:
      fail-fast: false
      matrix:
        node:
          - '16'
          - '18'
          - '20'
          - '22'
          - '23'
          - '24'
        os:
          - ubuntu-latest
    name: Node.js ${{ matrix.node }}
    runs-on: ubuntu-latest
    env:
      PGUSER: postgres
      PGPASSWORD: postgres
      PGHOST: localhost
      PGDATABASE: ci_db_test
      PGTESTNOSSL: 'true'
      SCRAM_TEST_PGUSER: scram_test
      SCRAM_TEST_PGPASSWORD: test4scram
    steps:
      - name: Show OS
        run: |
          uname -a
      - run: |
          psql \
            -c "SET password_encryption = 'scram-sha-256'" \
            -c "CREATE ROLE scram_test LOGIN PASSWORD 'test4scram'"
      - uses: actions/checkout@v4
        with:
          persist-credentials: false
      - name: Setup node
        uses: actions/setup-node@v4
        with:
          node-version: ${{ matrix.node }}
          cache: yarn
      - run: yarn install --frozen-lockfile
      - run: yarn test