Skip to content

Commit 8193d15

Browse files
committed
fix: parse node and npm version from package.json
This uses the `engines`, `devEngines` or `packageManager` fields of the `package.json` to properly setup the environment. Its required as `setup-node` does not yet know about `devEngines` and also does not setup the package manager - and never will. Signed-off-by: Ferdinand Thiessen <[email protected]>
1 parent 9ae34bc commit 8193d15

File tree

12 files changed

+103
-13
lines changed

12 files changed

+103
-13
lines changed

workflow-templates/command-l10n-update.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,17 @@ jobs:
6060
git config --local user.email "[email protected]"
6161
git config --local user.name "nextcloud-command"
6262
63+
- name: Read package.json
64+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
65+
id: versions
66+
6367
- name: Set up node
6468
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
6569
with:
66-
node-version-file: package.json
70+
node-version: ${{ steps.versions.outputs.node-version }}
71+
72+
- name: Set up npm
73+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
6774

6875
- name: Install dependencies & build l10n
6976
run: |

workflow-templates/command-playwright-update.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,17 @@ jobs:
6565
git config --local user.email "[email protected]"
6666
git config --local user.name "nextcloud-command"
6767
68+
- name: Read package.json
69+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
70+
id: versions
71+
6872
- name: Set up node
6973
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
7074
with:
71-
node-version-file: package.json
75+
node-version: ${{ steps.versions.outputs.node-version }}
76+
77+
- name: Set up npm
78+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
7279

7380
- name: Install dependencies
7481
run: npm ci

workflow-templates/cypress.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,10 +94,17 @@ jobs:
9494
key: cypress-context-${{ github.run_id }}
9595
path: ./
9696

97+
- name: Read package.json
98+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
99+
id: versions
100+
97101
- name: Set up node
98102
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
99103
with:
100-
node-version-file: 'package.json'
104+
node-version: ${{ steps.versions.outputs.node-version }}
105+
106+
- name: Set up npm
107+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
101108

102109
- name: Run ${{ startsWith(matrix.containers, 'component') && 'component' || 'E2E' }} cypress tests
103110
uses: cypress-io/github-action@b8ba51a856ba5f4c15cf39007636d4ab04f23e3c # v6.10.2

workflow-templates/documentation.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,17 @@ jobs:
2727
with:
2828
persist-credentials: false
2929

30+
- name: Read package.json
31+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
32+
id: versions
33+
3034
- name: Set up node
3135
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
3236
with:
33-
node-version-file: 'package.json'
37+
node-version: ${{ steps.versions.outputs.node-version }}
38+
39+
- name: Set up npm
40+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
3441

3542
- name: Install dependencies & build
3643
env:

workflow-templates/lint-eslint.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,17 @@ jobs:
2929
with:
3030
persist-credentials: false
3131

32+
- name: Read package.json
33+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
34+
id: versions
35+
3236
- name: Set up node
3337
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
3438
with:
35-
node-version-file: 'package.json'
39+
node-version: ${{ steps.versions.outputs.node-version }}
40+
41+
- name: Set up npm
42+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
3643

3744
- name: Install dependencies
3845
env:

workflow-templates/lint-stylelint.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,17 @@ jobs:
2929
with:
3030
persist-credentials: false
3131

32+
- name: Read package.json
33+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
34+
id: versions
35+
3236
- name: Set up node
3337
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
3438
with:
35-
node-version-file: 'package.json'
39+
node-version: ${{ steps.versions.outputs.node-version }}
40+
41+
- name: Set up npm
42+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
3643

3744
- name: Install dependencies
3845
env:

workflow-templates/lint-typescript.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,17 @@ jobs:
3434
with:
3535
persist-credentials: false
3636

37+
- name: Read package.json
38+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
39+
id: versions
40+
3741
- name: Set up node
3842
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
3943
with:
40-
node-version-file: 'package.json'
44+
node-version: ${{ steps.versions.outputs.node-version }}
45+
46+
- name: Set up npm
47+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
4148

4249
- name: Install dependencies
4350
env:

workflow-templates/node-test.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,17 @@ jobs:
3434
with:
3535
persist-credentials: false
3636

37+
- name: Read package.json
38+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
39+
id: versions
40+
3741
- name: Set up node
3842
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
3943
with:
40-
node-version-file: 'package.json'
44+
node-version: ${{ steps.versions.outputs.node-version }}
45+
46+
- name: Set up npm
47+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
4148

4249
- name: Install dependencies & build
4350
env:

workflow-templates/node.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,17 @@ jobs:
2828
with:
2929
persist-credentials: false
3030

31+
- name: Read package.json
32+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
33+
id: versions
34+
3135
- name: Set up node
3236
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
3337
with:
34-
node-version-file: 'package.json'
38+
node-version: ${{ steps.versions.outputs.node-version }}
39+
40+
- name: Set up npm
41+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
3542

3643
- name: Install dependencies & build
3744
env:

workflow-templates/npm-audit-fix.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,17 @@ jobs:
3737
ref: ${{ matrix.branches }}
3838
continue-on-error: true
3939

40+
- name: Read package.json
41+
uses: nextcloud-libraries/parse-package-engines-action@122ae05d4257008180a514e1ddeb0c1b9d094bdd # v0.1.0
42+
id: versions
43+
4044
- name: Set up node
4145
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
4246
with:
43-
node-version-file: 'package.json'
47+
node-version: ${{ steps.versions.outputs.node-version }}
48+
49+
- name: Set up npm
50+
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'
4451

4552
- name: Fix npm audit
4653
id: npm-audit

0 commit comments

Comments
 (0)