-
-
Notifications
You must be signed in to change notification settings - Fork 220
129 lines (125 loc) · 3.79 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
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]
# TODO: Test with Bazel 8 after https://github.com/bazelbuild/bazel/pull/24154 has been released.
bazel_version: [7.x, latest] # Minimum supported Bazel version is 7.x
bzlmod: [true, false]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- if: startsWith(matrix.os, 'ubuntu')
run: tests/scripts/ubuntu_install_libtinfo.sh
- 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:
- uses: actions/checkout@v4
- if: startsWith(matrix.os, 'ubuntu')
run: tests/scripts/ubuntu_install_libtinfo.sh
- 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:
- uses: actions/checkout@v4
- run: tests/scripts/ubuntu_install_libtinfo.sh
- 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:
- uses: actions/checkout@v4
- run: tests/scripts/ubuntu_install_libtinfo.sh
- 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