forked from TraceMachina/nativelink
-
Notifications
You must be signed in to change notification settings - Fork 0
68 lines (59 loc) · 1.91 KB
/
coverage.yaml
File metadata and controls
68 lines (59 loc) · 1.91 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
---
name: Coverage
on:
push:
branches: [main]
paths-ignore:
- '.github/styles/**'
- 'web/**'
pull_request:
branches: [main]
paths-ignore:
- '.github/styles/**'
- 'web/**'
permissions: read-all
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
jobs:
coverage:
name: Coverage
runs-on: xlarge-ubuntu-24.04
timeout-minutes: 180
steps:
- name: Checkout
uses: >- # v6.0.2
actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- name: Prepare Worker
uses: ./.github/actions/prepare-nix
with:
nativelink_attic_token: ${{ secrets.NATIVELINK_ATTIC_TOKEN }}
# Ubuntu 24.04 restricts unprivileged user namespaces by default, which breaks
# the worker tests that use namespaces (e.g. for sandboxing).
- name: Disable AppArmor namespace restrictions
run: sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
- name: Generate coverage
run: |
nix build -L .#nativelinkCoverageForHost
- name: Upload coverage artifact
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
uses: >- # v3.0.1
actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa
with:
path: result/html
deploy:
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
name: Deploy Coverage
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
needs: coverage
runs-on: ubuntu-24.04
permissions:
pages: write # to deploy to GitHub Pages
id-token: write # to authenticate to GitHub Pages
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: >- # v4.0.5
actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e