1
+ name : OAS PR health check
2
+
3
+ on :
4
+ pull_request :
5
+ branches :
6
+ - master
7
+ push :
8
+ branches :
9
+ - master
10
+
11
+ jobs :
12
+ pr-health-check :
13
+ runs-on : ubuntu-latest
14
+ permissions :
15
+ contents : write
16
+ pull-requests : write
17
+ actions : read
18
+
19
+ steps :
20
+ - name : Checkout Repository
21
+ uses : actions/checkout@v4
22
+ with :
23
+ fetch-depth : 0
24
+
25
+ # ***** YAML Linting steps are disabled for now *****
26
+
27
+
28
+
29
+ # - name: Install Open API yaml linter
30
+ # run: npm i -g @quobix/vacuum
31
+
32
+ # - name: Run open API validation for yamls
33
+ # run: |
34
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero_accounting.yaml
35
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero_assets.yaml
36
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero_bankfeeds.yaml
37
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero_files.yaml
38
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero-app-store.yaml
39
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero-finance.yaml
40
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero-identity.yaml
41
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero-payroll-au.yaml
42
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero-payroll-nz.yaml
43
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero-payroll-uk.yaml
44
+ # docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v4.3.1 validate -i /local/xero-projects.yaml
45
+ # working-directory: ${{ github.workspace }}
46
+
47
+ # - name: Run linting
48
+ # run: |
49
+ # vacuum lint -d -e xero_accounting.yaml xero_assets.yaml xero_bankfeeds.yaml xero_files.yaml xero-app-store.yaml xero-finance.yaml xero-identity.yaml xero-payroll-au.yaml xero-payroll-nz.yaml xero-payroll-uk.yaml xero-projects.yaml
50
+
51
+
52
+
53
+ # ****** Linting steps are disabled for now *******
54
+
55
+ - name : Install octokit dependencies
56
+ run : npm i
57
+ working-directory : ${{ github.workspace }}/.github/octokit
58
+
59
+ - name : Get github app access token
60
+ id : get_access_token
61
+ env :
62
+ GITHUB_APP_ID : ${{ secrets.XERO_GITHUB_APP_ID }}
63
+ GITHUB_APP_PRIVATE_KEY : ${{ secrets.XERO_GITHUB_APPLICATION_KEY }}
64
+ uses : actions/github-script@v7
65
+ with :
66
+ result-encoding : string
67
+ script : |
68
+ const { getAccessToken } = await import('${{ github.workspace }}/.github/octokit/index.js')
69
+ const token = await getAccessToken()
70
+ return token
71
+
72
+ - name : Trigger all SDK workflow
73
+ uses : codex-/return-dispatch@v2
74
+ id : return_dispatch
75
+ with :
76
+ token : ${{ steps.get_access_token.outputs.result }}
77
+ repo : xeroapi-sdk-codegen
78
+ owner : xero-internal
79
+ workflow : pr.yml
80
+ ref : refs/heads/master
81
+ workflow_inputs : ' {"branch_name": "${{github.head_ref}}" }'
82
+
83
+ - name : Checking SDK health status
84
+ uses : Codex-/await-remote-run@v1.12.2
85
+ with :
86
+ token : ${{ steps.get_access_token.outputs.result }}
87
+ repo : xeroapi-sdk-codegen
88
+ owner : xero-internal
89
+ run_id : ${{ steps.return_dispatch.outputs.run_id }}
90
+
0 commit comments