-
-
Notifications
You must be signed in to change notification settings - Fork 218
132 lines (128 loc) · 3.81 KB
/
tests.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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
name: Tests
on:
push:
branches: [master]
pull_request:
branches: [master]
concurrency:
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true
permissions: read-all
jobs:
lint:
runs-on: ubuntu-latest
permissions:
checks: write # For trunk to post annotations
contents: read # For repo checkout
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Trunk Check
uses: trunk-io/trunk-action@v1
test:
strategy:
fail-fast: false
matrix:
os: [macos-latest, ubuntu-latest]
bazel_version: [7.0.0, latest] # Minimum supported Bazel version is 7.0.0.
bzlmod: [true, false]
runs-on: ${{ matrix.os }}
steps:
- if: startsWith(matrix.os, 'ubuntu')
name: Install APT packages
run: sudo apt-get -y install libtinfo5
- uses: actions/checkout@v4
- name: Test
env:
USE_BAZEL_VERSION: ${{ matrix.bazel_version }}
USE_BZLMOD: ${{ matrix.bzlmod }}
run: tests/scripts/run_tests.sh
external_test:
strategy:
fail-fast: false
matrix:
# TODO: This doesn't work with arm64 Macs yet, hence pinning to macos-13.
os: [macos-13, ubuntu-latest]
bazel_version: [latest] # rules_rust bzlmod support is experimental and needs latest version as of now (20230912).
bzlmod: [true, false]
runs-on: ${{ matrix.os }}
steps:
- if: startsWith(matrix.os, 'ubuntu')
name: Install APT packages
run: sudo apt-get -y install libtinfo5
- uses: actions/checkout@v4
- name: Test
env:
USE_BAZEL_VERSION: ${{ matrix.bazel_version }}
USE_BZLMOD: ${{ matrix.bzlmod }}
run: tests/scripts/run_external_tests.sh
container_test:
strategy:
fail-fast: false
matrix:
script:
[
archlinux,
debian,
fedora,
suse_leap,
suse_tumbleweed,
ubuntu_20_04,
ubuntu_22_04,
linux_sysroot,
]
bzlmod: [true, false]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Test
env:
USE_BZLMOD: ${{ matrix.bzlmod }}
run: tests/scripts/${{ matrix.script }}_test.sh
xcompile_test:
strategy:
fail-fast: false
matrix:
bzlmod: [true, false]
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Test
env:
USE_BZLMOD: ${{ matrix.bzlmod }}
run: tests/scripts/run_xcompile_tests.sh
abs_paths_test:
strategy:
fail-fast: false
matrix:
bzlmod: [true, false]
runs-on: ubuntu-latest
steps:
- name: Install APT packages
run: sudo apt-get -y install libtinfo5
- uses: actions/checkout@v4
- name: Test
env:
USE_BZLMOD: ${{ matrix.bzlmod }}
run: tests/scripts/run_tests.sh -t @llvm_toolchain_with_absolute_paths//:cc-toolchain-x86_64-linux
sys_paths_test:
strategy:
fail-fast: false
matrix:
bzlmod: [true, false]
runs-on: ubuntu-latest
steps:
- name: Install APT packages
run: sudo apt-get -y install libtinfo5
- uses: actions/checkout@v4
- name: Download and Extract LLVM distribution
env:
release: llvmorg-16.0.0
archive: clang+llvm-16.0.0-x86_64-linux-gnu-ubuntu-18.04
ext: .tar.xz
local_path: /opt/llvm-16
run: wget --no-verbose "https://github.com/llvm/llvm-project/releases/download/${release}/${archive}${ext}" && tar -xf "${archive}${ext}" && mv "${archive}" "${local_path}"
- name: Test
env:
USE_BZLMOD: ${{ matrix.bzlmod }}
run: tests/scripts/run_tests.sh -t @llvm_toolchain_with_system_llvm//:cc-toolchain-x86_64-linux