-
Notifications
You must be signed in to change notification settings - Fork 8
198 lines (198 loc) · 9.12 KB
/
no-console-warnings.js.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
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
name: Frank configs should not produce warnings
on:
push:
branches:
- master
workflow_dispatch:
jobs:
testing:
strategy:
matrix:
include:
- name: ladybugInstance-v520
frankConfig: frank-manual/srcSteps/ladybugInstance/v520
- name: Frank2Hermes-v560
frankConfig: frank-manual/srcSteps/Frank2Hermes/v560
- name: NewHorizons-v510
frankConfig: frank-manual/srcSteps/NewHorizons/v510
iafUtilAllowed: true
- name: exercise-v500
frankConfig: frank-manual/srcSteps/exercise/v500
- name: forFrankConsole-v510
frankConfig: frank-manual/srcSteps/forFrankConsole/v510
- name: advancedDevelopmentCredentials
frankConfig: frank-manual/src/advancedDevelopmentCredentials
- name: advancedDevelopmentProperties
frankConfig: frank-manual/src/advancedDevelopmentProperties
- name: deploymentTomcat
frankConfig: frank-manual/src/deploymentTomcat
iafUtilAllowed: true
- name: Frank2Monitoring-v510
frankConfig: frank-manual/srcSteps/Frank2Monitoring/v510
- name: Frank2DockerDevel-v530
frankConfig: frank-manual/srcSteps/Frank2DockerDevel/v530
iafUtilAllowed: true
withDocker: true
- name: Frank2Authentication-v515 client
frankConfig: frank-manual/srcSteps/Frank2Authentication/v515
iafUtilAllowed: true
withDocker: true
- name: Frank2Authentication-v515 server
frankConfig: frank-manual/srcSteps/Frank2Authentication/v515
iafUtilAllowed: true
withDocker: true
port: 8091
# To make these work, we need access to our private Nexus docker repository
# - name: Frank2Transactions with queue
# frankConfig: frank-manual/srcSteps/Frank2Transactions/v515
# iafUtilAllowed: true
# withDocker: true
# waitTime: 600
# - name: Frank2Transactions with table ibisstore
# frankConfig: frank-manual/srcSteps/Frank2Transactions/v525
# iafUtilAllowed: true
# withDocker: true
# waitTime: 600
name: ${{matrix.name}} - Test that Frank config has no warnings
runs-on: ubuntu-latest
steps:
- name: Show additional properties
run: echo "Testing ${{matrix.frankConfig}} with iafUtilAllowed = ${{ matrix.iafUtilAllowed }} and withDocker = ${{ matrix.withDocker }}"
- name: Checkout Frank!Runner
if: ${{ matrix.withDocker != true }}
uses: actions/checkout@v4
with:
repository: wearefrank/frank-runner
path: frank-runner
- name: See commit number of checked-out frank-runner
if: ${{ matrix.withDocker != true }}
run: git log -1
working-directory: frank-runner
- name: Set port where Frank!Framework is served
if: ${{ matrix.withDocker != true }}
run: echo "tomcat.connector.port=8090" > frank-runner/build.properties
- name: Set debug to true
if: ${{ matrix.withDocker != true }}
run: echo "debug=true" >> frank-runner/build.properties
- name: Set projects.dir
if: ${{ matrix.withDocker != true }}
run: echo "projects.dir=.." >> frank-runner/build.properties
- name: Select the configuration in the manual we want to test
if: ${{ matrix.withDocker != true }}
run: echo "project.dir=${{matrix.frankConfig}}" >> frank-runner/build.properties
- name: Checkout frank-manual
uses: actions/checkout@v4
with:
path: frank-manual
- name: Change the port queried by the test to the default - 8090
if: ${{ ! matrix.port }}
run: ./adjustServerPort.sh ../../cypress/cypress.config.ts 8090
working-directory: frank-manual/.github/workflows
- name: Change the port queried by the test to ${{ matrix.port }}
if: ${{ matrix.port }}
run: ./adjustServerPort.sh ../../cypress/cypress.config.ts ${{ matrix.port }}
working-directory: frank-manual/.github/workflows
- name: Use Node.js 20.x
uses: actions/setup-node@v2
with:
node-version: 20.x
cache: "yarn"
cache-dependency-path: "**/yarn.lock"
- name: Show node version
run: node -v
working-directory: "frank-manual/cypress"
- name: Show yarn version
run: yarn -v
working-directory: "frank-manual/cypress"
- name: Install packages
run: yarn install --immutable
working-directory: frank-manual/cypress
- name: Cache Frank!Runner dependencies - build
if: ${{ matrix.withDocker != true }}
uses: actions/cache@v3
with:
path: frank-runner/build
key: ${{ runner.os }}${{ matrix.frankConfig }}-frank-runner-build
restore-keys: |
${{ runner.os }}${{ matrix.frankConfig }}-frank-runner-build
- name: Cache Frank!Runner dependencies - download
if: ${{ matrix.withDocker != true }}
uses: actions/cache@v3
with:
path: frank-runner/download
key: ${{ runner.os }}${{ matrix.frankConfig }}-frank-runner-download
restore-keys: |
${{ runner.os }}${{ matrix.frankConfig }}-frank-runner-download
- name: Show current time, allows you to check that logs are not old
run: date
- name: Let Frank!Runner do its downloads
if: ${{ matrix.withDocker != true }}
run: ./env.sh > installFrankRunnerEnv.log
working-directory: frank-runner
- name: Show apache-tomcat directories
if: ${{ matrix.withDocker != true }}
run: find . -path './build/*' -name 'apache-tomcat*'
working-directory: frank-runner
- name: Remove old Tomcat directories
if: ${{ matrix.withDocker != true }}
run: rm -rf ./build/apache-tomcat-9*
working-directory: frank-runner
- name: Check that there is only one version of Tomcat
if: ${{ matrix.withDocker != true }}
run: test $(find . -path './build/*' -name 'apache-tomcat*' | wc -w) -eq 1
working-directory: frank-runner
- name: Delete old Ladybug test reports
if: ${{ matrix.withDocker != true }}
run: find . -path './build/apache-tomcat*/logs/testtool*' -delete
working-directory: frank-runner
- name: Remove old catalina.out
if: ${{ matrix.withDocker != true }}
run: find . -path './build/apache-tomcat*/catalina.out' -delete
working-directory: frank-runner
- name: Start server using Frank!Runner in background
if: ${{ matrix.withDocker != true }}
run: ./restart.sh > serverStartLog.log &
working-directory: frank-runner
- name: Start server using docker-compose
if: ${{ matrix.withDocker == true }}
run: docker compose up &
working-directory: ${{ matrix.frankConfig }}
- name: Wait for server to be available - default port 8090 - default time 240
if: ${{ ! matrix.port && ! matrix.waitTime }}
run: ./waitForUrl.sh http://localhost:8090 240
working-directory: frank-manual/.github/workflows
- name: Wait for server to be available - port ${{ matrix.port }} - default time 240
if: ${{ matrix.port && ! matrix.waitTime }}
run: ./waitForUrl.sh http://localhost:${{ matrix.port }} 240
working-directory: frank-manual/.github/workflows
- name: Wait for server to be available - default port 8090 - time ${{ matrix.waitTime }}
if: ${{ ! matrix.port && matrix.waitTime }}
run: ./waitForUrl.sh http://localhost:8090 ${{ matrix.waitTime }}
working-directory: frank-manual/.github/workflows
- name: Wait for server to be available - port ${{ matrix.port }} - time ${{ matrix.waitTime }}
if: ${{ matrix.port && matrix.waitTime }}
run: ./waitForUrl.sh http://localhost:${{ matrix.port }} ${{ matrix.waitTime }}
working-directory: frank-manual/.github/workflows
- name: Run the tests - really no warnings
if: ${{ matrix.iafUtilAllowed != true }}
run: yarn run cypress run --spec cypress/e2e/no-warnings.cy.ts
working-directory: frank-manual/cypress
- name: Run the tests - allow warning about IAF_Util
if: ${{ matrix.iafUtilAllowed == true }}
run: yarn run cypress run --spec cypress/e2e/warning-only-iaf-util.cy.ts
working-directory: frank-manual/cypress
- name: Try to access server directly with curl - default port 8090
if: ${{ ! matrix.port }}
run: curl -v -i -X DELETE http://localhost:8090/iaf/ladybug/api/report/all/Test
- name: Try to access server directly with curl - port ${{ matrix.port }}
if: ${{ matrix.port }}
run: curl -v -i -X DELETE http://localhost:${{ matrix.port }}/iaf/ladybug/api/report/all/Test
- name: Show files
run: tree -L 5 .
if: always()
- name: Store cypress.config.ts
uses: actions/upload-artifact@v4
if: always()
with:
name: cypress.config.ts ${{ matrix.name }}
path: frank-manual/cypress/cypress.config.ts