Skip to content
This repository was archived by the owner on Jul 3, 2023. It is now read-only.

Commit 4cd35a9

Browse files
committed
CI uses new self-hosted runners.
1 parent c4c8878 commit 4cd35a9

File tree

3 files changed

+72
-4
lines changed

3 files changed

+72
-4
lines changed

.github/workflows/coverage.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ env:
1111
jobs:
1212
check:
1313
name: Coverage
14-
runs-on: ubuntu-latest
14+
runs-on: [self-hosted, Linux, skylake-2x]
1515

1616
steps:
1717
- name: Checkout

.github/workflows/main.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535
- {
3636
rust: nightly,
3737
target: x86_64-unknown-linux-gnu,
38-
os: ubuntu-latest,
38+
os: [self-hosted, Linux, skylake-2x],
3939
}
4040
- { rust: nightly, target: x86_64-apple-darwin, os: macos-latest }
4141
- {
@@ -158,12 +158,12 @@ jobs:
158158
# ```
159159
# but no, instead we have to do whatever the hell this is
160160
matrix:
161-
os: [ubuntu-latest, macos-latest]
161+
os: [skylake-2x, macos-latest]
162162
sanitizer: [address, thread, memory, leak]
163163
target: [x86_64-unknown-linux-gnu] # x86_64-apple-darwin
164164
exclude:
165165
# Exclude ubuntu runs with darwin targets
166-
- { os: ubuntu-latest, target: x86_64-apple-darwin }
166+
- { os: skylake-2x, target: x86_64-apple-darwin }
167167
# Exclude macos runs with linux targets
168168
- { os: macos-latest, target: x86_64-unknown-linux-gnu }
169169
# Exclude darwin runs with memory sanitizers since

doc/self_hosted_ci_config.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# CI self-hosted runners
2+
3+
Steps on how to set-up and configure a Ubuntu 22.04 Linux self-hosted CI runner
4+
machine.
5+
6+
## Configuration
7+
8+
```bash
9+
sudo apt-get install libssl-dev zsh build-essential pkg-config git gcc clang libclang-dev
10+
sudo useradd github-runner -m -s /bin/zsh
11+
```
12+
13+
Add sudo capability for github-runner:
14+
15+
```bash
16+
sudo visudo
17+
# github-runner ALL=(ALL) NOPASSWD: ALL
18+
```
19+
20+
Login and install rust:
21+
22+
```bash
23+
sudo su github-runner
24+
cd $HOME
25+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
26+
```
27+
28+
Other than that, follow the steps listed under Settings -> Actions -> Runner -> Add runner:
29+
30+
```
31+
<< steps from Web-UI >>
32+
```
33+
34+
## Starting the runner
35+
36+
Finally, launch the runner:
37+
38+
```bash
39+
cd $HOME/actions-runner
40+
source $HOME/.cargo/env
41+
./run.sh
42+
```
43+
44+
## Starting the runner as systemd service
45+
46+
```bash
47+
cd $HOME/actions-runner
48+
sudo ./svc.sh install
49+
sudo ./svc.sh start
50+
```
51+
52+
Check the runner status with:
53+
54+
```bash
55+
sudo ./svc.sh status
56+
```
57+
58+
## Stopping the runner
59+
60+
```bash
61+
sudo ./svc.sh stop
62+
```
63+
64+
Uninstall the service with:
65+
66+
```bash
67+
sudo ./svc.sh uninstall
68+
```

0 commit comments

Comments
 (0)