|
1 | 1 | name: CI |
2 | | -on: |
3 | | - push: |
4 | | - branches: |
5 | | - - main |
6 | | - - v6 |
7 | | - - v7 |
8 | | - pull_request: |
| 2 | +on: pull_request |
9 | 3 |
|
10 | 4 | jobs: |
11 | 5 | test-postgres: |
12 | 6 | strategy: |
13 | 7 | fail-fast: false |
14 | 8 | matrix: |
15 | | - node-version: [10, 16] |
| 9 | + node-version: [10, 24] |
16 | 10 | sequelize-version: [5, latest] |
17 | 11 | name: Postgres (Node ${{ matrix.node-version }}, Sequelize ${{ matrix.sequelize-version }}) |
18 | 12 | runs-on: ubuntu-latest |
19 | 13 | env: |
20 | 14 | DIALECT: postgres |
21 | 15 | SEQ_PORT: 54320 |
22 | 16 | steps: |
23 | | - - uses: actions/checkout@v4 |
24 | | - - uses: actions/setup-node@v4 |
| 17 | + - uses: actions/checkout@v5 |
| 18 | + - uses: actions/setup-node@v6 |
25 | 19 | with: |
26 | 20 | node-version: ${{ matrix.node-version }} |
27 | | - - run: yarn install --frozen-lockfile --ignore-engines |
28 | | - - run: yarn add sequelize@${{ matrix.sequelize-version }} --ignore-engines |
| 21 | + - run: if [ "${{ matrix.node-version }}" = "10" ]; then npm install -g npm@7; fi |
| 22 | + - run: npm ci |
| 23 | + - run: npm install sequelize@${{ matrix.sequelize-version }} |
29 | 24 | - run: docker compose up -d ${DIALECT} |
30 | 25 | - run: docker run --link ${DIALECT}:db --net cli_default jwilder/dockerize -wait tcp://${DIALECT}:${SEQ_PORT::-1} -timeout 2m |
31 | | - - run: yarn test |
| 26 | + - run: npm test |
32 | 27 | test-mysql: |
33 | 28 | strategy: |
34 | 29 | fail-fast: false |
35 | 30 | matrix: |
36 | | - node-version: [10, 16] |
| 31 | + node-version: [10, 24] |
37 | 32 | sequelize-version: [5, latest] |
38 | 33 | name: MySQL (Node ${{ matrix.node-version }}, Sequelize ${{ matrix.sequelize-version }}) |
39 | 34 | runs-on: ubuntu-latest |
40 | 35 | env: |
41 | 36 | DIALECT: mysql |
42 | 37 | SEQ_PORT: 33060 |
43 | 38 | steps: |
44 | | - - uses: actions/checkout@v4 |
45 | | - - uses: actions/setup-node@v4 |
| 39 | + - uses: actions/checkout@v5 |
| 40 | + - uses: actions/setup-node@v6 |
46 | 41 | with: |
47 | 42 | node-version: ${{ matrix.node-version }} |
48 | | - - run: yarn install --frozen-lockfile --ignore-engines |
49 | | - - run: yarn add sequelize@${{ matrix.sequelize-version }} --ignore-engines |
| 43 | + - run: if [ "${{ matrix.node-version }}" = "10" ]; then npm install -g npm@7; fi |
| 44 | + - run: npm ci |
| 45 | + - run: npm install sequelize@${{ matrix.sequelize-version }} |
50 | 46 | - run: docker compose up -d ${DIALECT} |
51 | 47 | - run: docker run --link ${DIALECT}:db --net cli_default jwilder/dockerize -wait tcp://${DIALECT}:${SEQ_PORT::-1} -timeout 2m |
52 | | - - run: yarn test |
| 48 | + - run: npm test |
53 | 49 | test-sqlite: |
54 | 50 | strategy: |
55 | 51 | fail-fast: false |
56 | 52 | matrix: |
57 | | - node-version: [10, 16] |
| 53 | + node-version: [10, 24] |
58 | 54 | sequelize-version: [5, latest] |
59 | 55 | name: SQLite (Node ${{ matrix.node-version }}, Sequelize ${{ matrix.sequelize-version }}) |
60 | 56 | runs-on: ubuntu-latest |
61 | 57 | env: |
62 | 58 | DIALECT: sqlite |
63 | 59 | steps: |
64 | | - - uses: actions/checkout@v4 |
65 | | - - uses: actions/setup-node@v4 |
| 60 | + - uses: actions/checkout@v5 |
| 61 | + - uses: actions/setup-node@v6 |
66 | 62 | with: |
67 | 63 | node-version: ${{ matrix.node-version }} |
68 | | - - run: yarn install --frozen-lockfile --ignore-engines |
69 | | - - run: yarn add sequelize@${{ matrix.sequelize-version }} --ignore-engines |
70 | | - - run: yarn test |
71 | | - release: |
72 | | - name: Release |
73 | | - runs-on: ubuntu-latest |
74 | | - needs: |
75 | | - [ |
76 | | - test-sqlite, |
77 | | - test-postgres, |
78 | | - test-mysql |
79 | | - ] |
80 | | - if: github.event_name == 'push' && (github.ref == 'refs/heads/v6' || github.ref == 'refs/heads/v7') |
81 | | - env: |
82 | | - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
83 | | - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} |
84 | | - steps: |
85 | | - - uses: actions/checkout@v4 |
86 | | - - uses: actions/setup-node@v4 |
87 | | - with: |
88 | | - node-version: 18.x |
89 | | - - run: yarn install --frozen-lockfile |
90 | | - - run: npx semantic-release |
91 | | - - id: sequelize |
92 | | - uses: sdepold/github-action-get-latest-release@master |
93 | | - with: |
94 | | - repository: sequelize/cli |
95 | | - - run: | |
96 | | - curl -XPOST -u "sdepold:${{ secrets.GH_TOKEN }}" -H "Accept: application/vnd.github.v3+json" -H "Content-Type: application/json" https://api.github.com/repos/sequelize/cli/dispatches --data '{"event_type":"Release notifier","client_payload":{"release-id": ${{ steps.sequelize.outputs.id }}}}' |
| 64 | + - run: if [ "${{ matrix.node-version }}" = "10" ]; then npm install -g npm@7; fi |
| 65 | + - run: npm ci |
| 66 | + - run: npm install sequelize@${{ matrix.sequelize-version }} |
| 67 | + - run: npm test |
0 commit comments