Skip to content

Commit 814e35a

Browse files
committed
NPA-4689 Migrate Schema Checks to Matrix
1 parent 7e093ff commit 814e35a

File tree

3 files changed

+47
-169
lines changed

3 files changed

+47
-169
lines changed

.github/workflows/openapi-validate.yml

Lines changed: 35 additions & 157 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,40 @@ name: Open API Validate
55
permissions:
66
contents: read
77
jobs:
8-
GET_Consent:
9-
name: GET Consent test
8+
ExamplesSchemasChecks:
9+
name: Examples Schemas Checks
1010
runs-on: ubuntu-latest
11+
strategy:
12+
fail-fast: false
13+
matrix:
14+
endpoint:
15+
[
16+
{
17+
name: "GET /Consent",
18+
make_target: "schema-get-consent",
19+
},
20+
{
21+
name: "POST /Consent",
22+
make_target: "schema-post-consent",
23+
},
24+
{
25+
name: "PATCH /Consent",
26+
make_target: "schema-patch-consent",
27+
},
28+
{
29+
name: "GET /RelatedPerson",
30+
make_target: "schema-related-person",
31+
},
32+
{
33+
name: "POST /Questionnaire",
34+
make_target: "schema-questionnaire",
35+
},
36+
{
37+
name: "GET /Questionnaire",
38+
make_target: "schema-get-questionnaire",
39+
},
40+
{ name: "Errors", make_target: "schema-errors" },
41+
]
1142
steps:
1243
- name: Checkout repository
1344
uses: actions/checkout@v4
@@ -27,159 +58,6 @@ jobs:
2758
run: |
2859
poetry install --all-extras
2960
30-
- name: Run Python script for all files
61+
- name: Check S
3162
run: |
32-
make schema-get-consent
33-
34-
POST_Consent:
35-
name: POST Consent test
36-
runs-on: ubuntu-latest
37-
steps:
38-
- name: Checkout repository
39-
uses: actions/checkout@v4
40-
41-
- name: Set up Python
42-
uses: actions/setup-python@v5
43-
with:
44-
python-version: 3.9
45-
46-
- name: Install Poetry
47-
shell: bash
48-
run: |
49-
pipx install poetry==1.8.5
50-
51-
- name: Install Script Packages with Poetry
52-
shell: bash
53-
run: |
54-
poetry install --all-extras
55-
56-
- name: Run Python script for all files
57-
run: |
58-
make schema-post-consent
59-
60-
PATCH_Consent:
61-
name: PATCH Consent test
62-
runs-on: ubuntu-latest
63-
steps:
64-
- name: Checkout repository
65-
uses: actions/checkout@v4
66-
67-
- name: Set up Python
68-
uses: actions/setup-python@v5
69-
with:
70-
python-version: 3.9
71-
72-
- name: Install Poetry
73-
shell: bash
74-
run: |
75-
pipx install poetry==1.8.5
76-
77-
- name: Install Script Packages with Poetry
78-
shell: bash
79-
run: |
80-
poetry install --all-extras
81-
82-
- name: Run Python script for all files
83-
run: |
84-
make schema-patch-consent
85-
86-
GET_RelatedPerson:
87-
name: GET Related Person test
88-
runs-on: ubuntu-latest
89-
steps:
90-
- name: Checkout repository
91-
uses: actions/checkout@v4
92-
93-
- name: Set up Python
94-
uses: actions/setup-python@v5
95-
with:
96-
python-version: 3.9
97-
98-
- name: Install Poetry
99-
shell: bash
100-
run: |
101-
pipx install poetry==1.8.5
102-
103-
- name: Install Script Packages with Poetry
104-
shell: bash
105-
run: |
106-
poetry install --all-extras
107-
108-
- name: Run Python script for all files
109-
run: |
110-
make schema-related-person
111-
112-
POST_Questionnaire:
113-
name: POST questionnaire test
114-
runs-on: ubuntu-latest
115-
steps:
116-
- name: Checkout repository
117-
uses: actions/checkout@v4
118-
119-
- name: Set up Python
120-
uses: actions/setup-python@v5
121-
with:
122-
python-version: 3.9
123-
124-
- name: Install Poetry
125-
shell: bash
126-
run: |
127-
pipx install poetry==1.8.5
128-
129-
- name: Install Script Packages with Poetry
130-
shell: bash
131-
run: |
132-
poetry install --all-extras
133-
134-
- name: Run Python script for all files
135-
run: |
136-
make schema-questionnaire
137-
138-
GET_Questionnaire:
139-
name: GET questionnaire test
140-
runs-on: ubuntu-latest
141-
steps:
142-
- name: Checkout repository
143-
uses: actions/checkout@v4
144-
145-
- name: Set up Python
146-
uses: actions/setup-python@v5
147-
with:
148-
python-version: 3.9
149-
150-
- name: Install Poetry
151-
shell: bash
152-
run: |
153-
pipx install poetry==1.8.5
154-
- name: Install Script Packages with Poetry
155-
shell: bash
156-
run: |
157-
poetry install --all-extras
158-
- name: Run Python script for all files
159-
run: |
160-
make schema-get-questionnaire
161-
Errors:
162-
name: Error schema test
163-
runs-on: ubuntu-latest
164-
steps:
165-
- name: Checkout repository
166-
uses: actions/checkout@v4
167-
168-
- name: Set up Python
169-
uses: actions/setup-python@v5
170-
with:
171-
python-version: 3.9
172-
173-
- name: Install Poetry
174-
shell: bash
175-
run: |
176-
pipx install poetry==1.8.5
177-
178-
- name: Install Script Packages with Poetry
179-
shell: bash
180-
run: |
181-
poetry install --all-extras
182-
183-
- name: Run Python script for all files
184-
run: |
185-
make schema-errors
63+
make ${{ matrix.endpoint.make_target }}

.github/workflows/run-postman-collection.yml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ jobs:
55
run-postman-collection:
66
runs-on: ubuntu-latest
77
steps:
8-
- name: Check out the repository
9-
uses: actions/checkout@v4
10-
- name: Set up Node.js
11-
uses: actions/setup-node@v4
12-
with:
13-
node-version: '22'
14-
- name: Install Newman
15-
run: npm install -g newman
16-
- name: Run Postman Collection
17-
run: newman run ./postman/Validate\ Relationship\ Service\ Sandbox.postman_collection.json
8+
- name: Check out the repository
9+
uses: actions/checkout@v4
10+
- name: Set up Node.js
11+
uses: actions/setup-node@v4
12+
with:
13+
node-version: "22"
14+
- name: Install Newman
15+
run: npm install -g newman
16+
- name: Run Postman Collection
17+
run: newman run ./postman/Validate\ Relationship\ Service\ Sandbox.postman_collection.json

.github/workflows/sandbox-checks.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ jobs:
1010
run: pipx install poetry
1111
- uses: actions/setup-python@v5
1212
with:
13-
python-version: '3.8'
14-
cache: 'poetry'
13+
python-version: "3.8"
14+
cache: "poetry"
1515
- name: Install Sandbox dependencies
1616
run: make install
1717
working-directory: ./sandbox

0 commit comments

Comments
 (0)