@@ -63,10 +63,10 @@ jobs:
6363 restore-keys : |
6464 ${{ runner.os }}-node-${{ inputs.nodejs_version }}-
6565 - name : " Repo setup"
66- env :
67- NODE_AUTH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
68- run : |
69- npm ci
66+ uses : ./.github/actions/node-install
67+ with :
68+ node-version : ${{ inputs.nodejs_version }}
69+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
7070 - name : " Generate dependencies"
7171 run : |
7272 npm run generate-dependencies --workspaces --if-present
@@ -92,10 +92,10 @@ jobs:
9292 restore-keys : |
9393 ${{ runner.os }}-node-${{ inputs.nodejs_version }}-
9494 - name : " Repo setup"
95- env :
96- NODE_AUTH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
97- run : |
98- npm ci
95+ uses : ./.github/actions/node-install
96+ with :
97+ node-version : ${{ inputs.nodejs_version }}
98+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
9999 - name : " Generate dependencies"
100100 run : |
101101 npm run generate-dependencies --workspaces --if-present
@@ -114,6 +114,37 @@ jobs:
114114 with :
115115 name : code-coverage-report
116116 path : " .reports/lcov.info"
117+ test-pact :
118+ name : " Pact tests"
119+ runs-on : ubuntu-latest
120+ timeout-minutes : 5
121+ env :
122+ NODE_AUTH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
123+ permissions :
124+ packages : write
125+ contents : read
126+ steps :
127+ - name : " Checkout code"
128+ uses : actions/checkout@v5
129+ - name : " Cache node_modules"
130+ uses : actions/cache@v4
131+ with :
132+ path : |
133+ **/node_modules
134+ key : ${{ runner.os }}-node-${{ inputs.nodejs_version }}-${{ hashFiles('**/package-lock.json') }}
135+ restore-keys : |
136+ ${{ runner.os }}-node-${{ inputs.nodejs_version }}-
137+ - name : " Repo setup"
138+ uses : ./.github/actions/node-install
139+ with :
140+ node-version : ${{ inputs.nodejs_version }}
141+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
142+ - name : " Generate dependencies"
143+ run : npm run generate-dependencies --workspaces --if-present
144+ - name : " Run PACT tests"
145+ run : npm run test:pact --workspace tests
146+ - name : Publish Pact Contracts
147+ run : ./scripts/publish-pact-contracts.sh
117148 test-lint :
118149 name : " Linting"
119150 runs-on : ubuntu-latest
@@ -135,10 +166,10 @@ jobs:
135166 restore-keys : |
136167 ${{ runner.os }}-node-${{ inputs.nodejs_version }}-
137168 - name : " Repo setup"
138- env :
139- NODE_AUTH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
140- run : |
141- npm ci
169+ uses : ./.github/actions/node-install
170+ with :
171+ node-version : ${{ inputs.nodejs_version }}
172+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
142173 - name : " Generate dependencies"
143174 run : |
144175 npm run generate-dependencies --workspaces --if-present
@@ -166,10 +197,10 @@ jobs:
166197 restore-keys : |
167198 ${{ runner.os }}-node-${{ inputs.nodejs_version }}-
168199 - name : " Repo setup"
169- env :
170- NODE_AUTH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
171- run : |
172- npm ci
200+ uses : ./.github/actions/node-install
201+ with :
202+ node-version : ${{ inputs.nodejs_version }}
203+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
173204 - name : " Generate dependencies"
174205 run : |
175206 npm run generate-dependencies --workspaces --if-present
0 commit comments