forked from Klaveness-Digital/cypress-cucumber-preprocessor
-
-
Notifications
You must be signed in to change notification settings - Fork 149
153 lines (146 loc) · 4.12 KB
/
package-managers-branch.yml
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
name: Package managers (branch)
on:
push:
branches-ignore:
- master
defaults:
run:
shell: bash
env:
EXAMPLE_TO_RUN: webpack-cjs
jobs:
build-package:
runs-on: ubuntu-latest
container:
image: cypress/base:latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Change owner
run: "chown root: ."
- name: Dependencies
env:
CYPRESS_INSTALL_BINARY: "0"
run: |
npm install
- name: Build
run: npm run build
- name: Pack
run: npm pack
- name: Store dirty build
uses: actions/upload-artifact@v4
with:
name: build
path: badeball-*
npm:
needs:
- build-package
runs-on: ubuntu-latest
container:
image: cypress/base:latest
env:
NPM_CONFIG_PACKAGE_LOCK: "false"
steps:
- uses: actions/setup-node@v4
with:
node-version: latest
- name: Checkout
uses: actions/checkout@v4
# In lack of native support, https://github.com/actions/checkout/issues/172.
- name: Make checkout sparse
run: |
shopt -s extglob
rm -rf examples/!(${{ env.EXAMPLE_TO_RUN }})
rm -rf !(examples)
- name: Retrieve dirty build
uses: actions/download-artifact@v4
with:
name: build
path: examples/${{ env.EXAMPLE_TO_RUN }}
- name: Install NPM modules
working-directory: examples/${{ env.EXAMPLE_TO_RUN }}
run: npm install --engine-strict badeball-*
- name: Run Cypress
working-directory: examples/${{ env.EXAMPLE_TO_RUN }}
run: npx cypress run --e2e
- name: Versions
run: |
npx cypress --version
node --version
npm --version
pnpm:
needs:
- build-package
runs-on: ubuntu-latest
container:
image: cypress/base:latest
env:
NPM_CONFIG_PACKAGE_LOCK: "false"
steps:
- uses: actions/setup-node@v4
with:
node-version: latest
- name: Install pnpm
run: npm install --global pnpm@latest
- name: Checkout
uses: actions/checkout@v4
# In lack of native support, https://github.com/actions/checkout/issues/172.
- name: Make checkout sparse
run: |
shopt -s extglob
rm -rf examples/!(${{ env.EXAMPLE_TO_RUN }})
rm -rf !(examples)
- name: Retrieve dirty build
uses: actions/download-artifact@v4
with:
name: build
path: examples/${{ env.EXAMPLE_TO_RUN }}
- name: Install NPM modules
working-directory: examples/${{ env.EXAMPLE_TO_RUN }}
run: pnpm install --engine-strict badeball-*
- name: Run Cypress
working-directory: examples/${{ env.EXAMPLE_TO_RUN }}
run: pnpm exec cypress run --e2e
- name: Versions
run: |
pnpm exec cypress --version
node --version
pnpm --version
yarn:
needs:
- build-package
runs-on: ubuntu-latest
container:
image: cypress/base:latest
env:
NPM_CONFIG_PACKAGE_LOCK: "false"
steps:
- uses: actions/setup-node@v4
with:
node-version: latest
- name: Install yarn
run: npm install --global yarn@latest
- name: Checkout
uses: actions/checkout@v4
# In lack of native support, https://github.com/actions/checkout/issues/172.
- name: Make checkout sparse
run: |
shopt -s extglob
rm -rf examples/!(${{ env.EXAMPLE_TO_RUN }})
rm -rf !(examples)
- name: Retrieve dirty build
uses: actions/download-artifact@v4
with:
name: build
path: examples/${{ env.EXAMPLE_TO_RUN }}
- name: Install NPM modules
working-directory: examples/${{ env.EXAMPLE_TO_RUN }}
run: yarn install --engine-strict badeball-*
- name: Run Cypress
working-directory: examples/${{ env.EXAMPLE_TO_RUN }}
run: yarn exec cypress run --e2e
- name: Versions
run: |
yarn exec cypress --version
node --version
yarn --version