generated from bazel-contrib/rules-template
-
Notifications
You must be signed in to change notification settings - Fork 24
91 lines (83 loc) · 3.5 KB
/
ci.yaml
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
name: CI
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [main]
pull_request:
branches: [main]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
concurrency:
# Cancel previous actions from the same PR or branch except 'main' branch.
# See https://docs.github.com/en/actions/using-jobs/using-concurrency and https://docs.github.com/en/actions/learn-github-actions/contexts for more info.
group: concurrency-group::${{ github.workflow }}::${{ github.event.pull_request.number > 0 && format('pr-{0}', github.event.pull_request.number) || github.ref_name }}${{ github.ref_name == 'main' && format('::{0}', github.run_id) || ''}}
cancel-in-progress: ${{ github.ref_name != 'main' }}
jobs:
dev-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Test //pycross/... and //docs/...
run: |
bazel test -- //pycross/... //docs/...
test:
uses: ./.github/workflows/bazel.yaml
with:
bazelversions: |
[
"6.5.0",
"7.4.1"
]
folders: |
[
"e2e/pdm/always_build",
"e2e/pdm/build_wheel",
"e2e/pdm/local_wheel",
"e2e/pdm/requirements",
"e2e/pdm/vendored_lock_file_bzlmod",
"e2e/pdm/vendored_lock_file_workspace",
"e2e/poetry/always_build",
"e2e/poetry/build_wheel",
"e2e/poetry/local_wheel",
"e2e/poetry/requirements",
"e2e/poetry/vendored_lock_file_bzlmod",
"e2e/poetry/vendored_lock_file_workspace",
"e2e/uv/always_build",
"e2e/uv/build_wheel",
"e2e/uv/local_wheel",
"e2e/uv/requirements",
"e2e/uv/vendored_lock_file_bzlmod",
"e2e/uv/vendored_lock_file_workspace"
]
exclude: |
[
{"os": "windows-latest"},
{"folder": "e2e/pdm/vendored_lock_file_bzlmod", "bazelversion": "6.5.0"},
{"folder": "e2e/pdm/vendored_lock_file_bzlmod", "bzlmodEnabled": false},
{"folder": "e2e/pdm/vendored_lock_file_workspace", "bzlmodEnabled": true},
{"folder": "e2e/poetry/vendored_lock_file_bzlmod", "bazelversion": "6.5.0"},
{"folder": "e2e/poetry/vendored_lock_file_bzlmod", "bzlmodEnabled": false},
{"folder": "e2e/poetry/vendored_lock_file_workspace", "bzlmodEnabled": true},
{"folder": "e2e/uv/vendored_lock_file_bzlmod", "bazelversion": "6.5.0"},
{"folder": "e2e/uv/vendored_lock_file_bzlmod", "bzlmodEnabled": false},
{"folder": "e2e/uv/vendored_lock_file_workspace", "bzlmodEnabled": true}
]
# For branch protection settings, this job provides a "stable" name that can be used to gate PR merges
# on "all matrix jobs were successful".
conclusion:
needs: test
runs-on: ubuntu-latest
if: always()
steps:
- uses: technote-space/workflow-conclusion-action@45ce8e0eb155657ab8ccf346ade734257fd196a5 # v3.0.3
# Note: possible conclusion values:
# https://github.com/technote-space/workflow-conclusion-action/blob/main/src/constant.ts
- name: report success
if: ${{ env.WORKFLOW_CONCLUSION == 'success' }}
working-directory: /tmp
run: echo ${{ env.WORKFLOW_CONCLUSION }} && exit 0
- name: report failure
if: ${{ env.WORKFLOW_CONCLUSION == 'failure' }}
working-directory: /tmp
run: echo ${{ env.WORKFLOW_CONCLUSION }} && exit 1