-
Notifications
You must be signed in to change notification settings - Fork 7
137 lines (136 loc) · 5.94 KB
/
chromeos-5.15-clang-19.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
133
134
135
136
# DO NOT MODIFY MANUALLY!
# This file has been autogenerated by invoking:
# $ ./generate_workflow.py chromeos-5.15
name: chromeos-5.15 (clang-19)
'on':
push:
branches:
- presubmit/*
paths:
- check_logs.py
- utils.py
- tuxsuite/chromeos-5.15-clang-19.tux.yml
- .github/workflows/chromeos-5.15-clang-19.yml
schedule:
- cron: 0 6 * * 1,2,3,4,5
workflow_dispatch: null
permissions: read-all
jobs:
check_cache:
name: Check Cache
runs-on: ubuntu-latest
container: tuxmake/x86_64_korg-clang-19
env:
GIT_REPO: https://chromium.googlesource.com/chromiumos/third_party/kernel.git
GIT_REF: chromeos-5.15
outputs:
output: ${{ steps.step2.outputs.output }}
status: ${{ steps.step2.outputs.status }}
steps:
- uses: actions/checkout@v4
- name: pip install -r requirements.txt
run: apt-get install -y python3-venv && python3 -m venv venv && . venv/bin/activate && pip install -r requirements.txt
- name: python check_cache.py
id: step1
continue-on-error: true
run: . venv/bin/activate && python caching/check.py -w '${{ github.workflow }}' -g ${{ secrets.REPO_SCOPED_PAT }} -r ${{ env.GIT_REF }} -o ${{ env.GIT_REPO }}
- name: Save exit code to GITHUB_OUTPUT
id: step2
run: echo "output=${{ steps.step1.outcome }}" >> "$GITHUB_OUTPUT" && echo "status=$CACHE_PASS" >> "$GITHUB_OUTPUT"
kick_tuxsuite_defconfigs:
name: TuxSuite (defconfigs)
runs-on: ubuntu-latest
container: tuxsuite/tuxsuite
needs: check_cache
env:
TUXSUITE_TOKEN: ${{ secrets.TUXSUITE_TOKEN }}
REPO_SCOPED_PAT: ${{ secrets.REPO_SCOPED_PAT }}
timeout-minutes: 480
steps:
- name: Checking Cache Pass
if: ${{ needs.check_cache.outputs.output == 'success' && github.event_name != 'workflow_dispatch' && needs.check_cache.outputs.status == 'pass' }}
run: echo 'Cache HIT on previously PASSED build. Passing this build to avoid redundant work.' && exit 0
- name: Checking Cache Fail
if: ${{ needs.check_cache.outputs.output == 'success' && github.event_name != 'workflow_dispatch' && needs.check_cache.outputs.status == 'fail' }}
run: echo 'Cache HIT on previously FAILED build. Failing this build to avoid redundant work.' && exit 1
- uses: actions/checkout@v4
if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }}
- name: tuxsuite
if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }}
run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-5.15 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-5.15-clang-19.tux.yml || true
- name: Update Cache Build Status
if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }}
run: python caching/update.py
- name: save builds.json
if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }}
uses: actions/upload-artifact@v4
with:
path: builds.json
name: output_artifact_defconfigs
if-no-files-found: error
- name: generate boot-utils.json
if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }}
run: python3 scripts/generate-boot-utils-json.py ${{ secrets.GITHUB_TOKEN }}
- name: save boot-utils.json
if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }}
uses: actions/upload-artifact@v4
with:
path: boot-utils.json
name: boot_utils_json_defconfigs
if-no-files-found: error
_debf7a6d9c60a1be2264b0111ac9231b:
runs-on: ubuntu-latest
needs:
- kick_tuxsuite_defconfigs
- check_cache
name: ARCH=arm64 LLVM=1 LLVM_IAS=1 LLVM_VERSION=19 chromeos/config/chromeos/base.config+chromeos/config/chromeos/arm64/common.config+chromeos/config/chromeos/arm64/chromiumos-arm64-generic.flavour.config+CONFIG_SECURITY_CHROMIUMOS=n
if: ${{ needs.check_cache.outputs.status != 'pass' }}
env:
ARCH: arm64
LLVM_VERSION: 19
BOOT: 1
CONFIG: chromeos/config/chromeos/base.config+chromeos/config/chromeos/arm64/common.config+chromeos/config/chromeos/arm64/chromiumos-arm64-generic.flavour.config+CONFIG_SECURITY_CHROMIUMOS=n
REPO_SCOPED_PAT: ${{ secrets.REPO_SCOPED_PAT }}
container:
image: ghcr.io/clangbuiltlinux/qemu
options: --ipc=host
steps:
- uses: actions/checkout@v4
with:
submodules: true
- uses: actions/download-artifact@v4
with:
name: output_artifact_defconfigs
- uses: actions/download-artifact@v4
with:
name: boot_utils_json_defconfigs
- name: Check Build and Boot Logs
run: scripts/check-logs.py
_00353bd08a5cd70140cad5e28803cb0a:
runs-on: ubuntu-latest
needs:
- kick_tuxsuite_defconfigs
- check_cache
name: ARCH=x86_64 LLVM=1 LLVM_IAS=1 LLVM_VERSION=19 chromeos/config/chromeos/base.config+chromeos/config/chromeos/x86_64/common.config+chromeos/config/chromeos/x86_64/chromiumos-x86_64-generic.flavour.config+CONFIG_SECURITY_CHROMIUMOS=n
if: ${{ needs.check_cache.outputs.status != 'pass' }}
env:
ARCH: x86_64
LLVM_VERSION: 19
BOOT: 1
CONFIG: chromeos/config/chromeos/base.config+chromeos/config/chromeos/x86_64/common.config+chromeos/config/chromeos/x86_64/chromiumos-x86_64-generic.flavour.config+CONFIG_SECURITY_CHROMIUMOS=n
REPO_SCOPED_PAT: ${{ secrets.REPO_SCOPED_PAT }}
container:
image: ghcr.io/clangbuiltlinux/qemu
options: --ipc=host
steps:
- uses: actions/checkout@v4
with:
submodules: true
- uses: actions/download-artifact@v4
with:
name: output_artifact_defconfigs
- uses: actions/download-artifact@v4
with:
name: boot_utils_json_defconfigs
- name: Check Build and Boot Logs
run: scripts/check-logs.py