-
Notifications
You must be signed in to change notification settings - Fork 2k
Expand file tree
/
Copy pathaction.yml
More file actions
81 lines (72 loc) · 2.33 KB
/
action.yml
File metadata and controls
81 lines (72 loc) · 2.33 KB
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
name: Test Go extractor
description: Run build, QL tests, and optionally basic code sanity checks (formatting and generated code) for the Go extractor
inputs:
go-test-version:
description: Which Go version to use for running the tests
required: false
default: "1.25.0-rc.1"
run-code-checks:
description: Whether to run formatting, code and qhelp generation checks
required: false
default: false
dynamic-join-order-mode:
description: Value of the --dynamic-join-order-mode flag to pass to the codeql test command
required: false
default: "none"
runs:
using: composite
steps:
- name: Set up Go ${{ inputs.go-test-version }}
id: setup-go
uses: actions/setup-go@v5
with:
go-version: ${{ inputs.go-test-version }}
cache: false
- name: Set up CodeQL CLI
uses: ./.github/actions/fetch-codeql
- name: Enable problem matchers in repository
shell: bash
run: 'find .github/problem-matchers -name \*.json -exec echo "::add-matcher::{}" \;'
- name: Check checked-in generated code
if: inputs.run-code-checks == 'true'
shell: bash
run: |
bazel run go:gen
git add .
git diff --exit-code HEAD || (
echo "please run bazel run //go:gen"
exit 1
)
- name: Build
shell: bash
run: |
bazel run go:go-installer
- name: Check that all Go code is autoformatted
if: inputs.run-code-checks == 'true' && !cancelled()
shell: bash
run: |
cd go
make check-formatting
- name: Compile qhelp files to markdown
if: inputs.run-code-checks == 'true' && !cancelled()
id: markdown
shell: bash
run: |
cd go
env QHELP_OUT_DIR=qhelp-out make qhelp-to-markdown
- name: Upload qhelp markdown
if: inputs.run-code-checks == 'true' && !cancelled()
uses: actions/upload-artifact@v4
with:
name: qhelp-markdown-${{ steps.setup-go.outputs.go-version }}
path: go/qhelp-out/**/*.md
- name: Cache compilation cache
id: query-cache
uses: ./.github/actions/cache-query-compilation
with:
key: go-qltest
- name: Test
shell: bash
run: |
cd go
make test cache="${{ steps.query-cache.outputs.cache-dir }}" rtjo=${{ inputs.dynamic-join-order-mode }}