-
Notifications
You must be signed in to change notification settings - Fork 73
72 lines (61 loc) · 2.1 KB
/
validate-pr.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
name: Validate APIs
on:
pull_request:
paths:
- 'specification/**'
- '!specification/_types/**'
- '!specification/_spec_utils/**'
- '!specification/_doc_ids/**'
- '!specification/_json_spec/**'
branches:
- main
jobs:
validate-pr:
name: build
if: github.repository_owner == 'elastic' # this action will fail if executed from a fork
runs-on: ubuntu-latest
env:
STACK_VERSION: 8.9-SNAPSHOT
steps:
- uses: actions/checkout@v2
with:
path: ./elasticsearch-specification
- uses: actions/checkout@v2
with:
repository: elastic/clients-flight-recorder
path: ./clients-flight-recorder
token: ${{ secrets.PAT }}
ref: main
- name: Use Node.js 16.x
uses: actions/setup-node@v1
with:
node-version: 16.x
- name: Install deps 1/2
working-directory: ./clients-flight-recorder
run: |
npm install --prefix scripts/clone-elasticsearch
npm install --prefix scripts/upload-recording
npm install --prefix scripts/types-validator
- name: Install deps 2/2
working-directory: ./elasticsearch-specification
run: |
npm install --prefix .github/validate-pr
make setup
- name: Download artifacts
working-directory: ./clients-flight-recorder
run: |
node scripts/upload-recording/download.js --branch latest
node scripts/clone-elasticsearch/index.js --version ${{ env.STACK_VERSION }}
env:
GCS_CREDENTIALS: ${{ secrets.GCS_CREDENTIALS }}
- name: Remove previous comment
uses: maheshrayas/action-pr-comment-delete@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
org: elastic
repo: elasticsearch-specification
user: github-actions[bot]
issue: ${{ github.event.number }}
- name: Run validation
working-directory: ./elasticsearch-specification
run: node .github/validate-pr --token ${{ secrets.GITHUB_TOKEN }} --version ${{ env.STACK_VERSION }}