34
34
if : >-
35
35
github.repository_owner == 'llvm' &&
36
36
(github.event_name != 'pull_request' || github.event.action != 'closed')
37
- runs-on : llvm-premerge-linux-runners
37
+ runs-on : ubuntu-latest
38
+ container :
39
+ image : ghcr.io/gburgessiv/llvm-ci-with-checkout:latest
38
40
steps :
39
41
- name : Checkout LLVM
40
42
uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -52,169 +54,5 @@ jobs:
52
54
# are ready for people to start recieving notifications.
53
55
continue-on-error : true
54
56
run : |
55
- git config --global --add safe.directory '*'
56
-
57
- modified_files=$(git diff --name-only HEAD~1...HEAD)
58
- modified_dirs=$(echo "$modified_files" | cut -d'/' -f1 | sort -u)
59
-
60
- echo $modified_files
61
- echo $modified_dirs
62
-
63
- . ./.ci/compute-projects.sh
64
-
65
- all_projects="bolt clang clang-tools-extra compiler-rt cross-project-tests flang libc libclc lld lldb llvm mlir openmp polly pstl"
66
- modified_projects="$(keep-modified-projects ${all_projects})"
67
-
68
- linux_projects_to_test=$(exclude-linux $(compute-projects-to-test 0 ${modified_projects}))
69
- linux_check_targets=$(check-targets ${linux_projects_to_test} | sort | uniq)
70
- linux_projects=$(add-dependencies ${linux_projects_to_test} | sort | uniq)
71
-
72
- linux_runtimes_to_test=$(compute-runtimes-to-test ${linux_projects_to_test})
73
- linux_runtime_check_targets=$(check-targets ${linux_runtimes_to_test} | sort | uniq)
74
- linux_runtimes=$(echo ${linux_runtimes_to_test} | sort | uniq)
75
-
76
- if [[ "${linux_projects}" == "" ]]; then
77
- echo "No projects to build"
78
- exit 0
79
- fi
80
-
81
- echo "Building projects: ${linux_projects}"
82
- echo "Running project checks targets: ${linux_check_targets}"
83
- echo "Building runtimes: ${linux_runtimes}"
84
- echo "Running runtimes checks targets: ${linux_runtime_check_targets}"
85
-
86
- export CC=/opt/llvm/bin/clang
87
- export CXX=/opt/llvm/bin/clang++
88
-
89
- ./.ci/monolithic-linux.sh "$(echo ${linux_projects} | tr ' ' ';')" "$(echo ${linux_check_targets})" "$(echo ${linux_runtimes} | tr ' ' ';')" "$(echo ${linux_runtime_check_targets})"
90
-
91
- premerge-checks-windows :
92
- name : Windows Premerge Checks (Test Only - Please Ignore Results)
93
- if : >-
94
- github.repository_owner == 'llvm' &&
95
- (github.event_name != 'pull_request' || github.event.action != 'closed')
96
- runs-on : llvm-premerge-windows-runners
97
- defaults :
98
- run :
99
- shell : bash
100
- steps :
101
- - name : Checkout LLVM
102
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
103
- with :
104
- fetch-depth : 2
105
- - name : Setup ccache
106
- uses : hendrikmuhs/ccache-action@a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
107
- with :
108
- variant : " sccache"
109
- max-size : " 2000M"
110
- - name : Compute Projects
111
- id : vars
112
- run : |
113
- modified_files=$(git diff --name-only HEAD~1...HEAD)
114
- modified_dirs=$(echo "$modified_files" | cut -d'/' -f1 | sort | uniq)
115
-
116
- echo $modified_files
117
- echo $modified_dirs
118
-
119
- . ./.ci/compute-projects.sh
120
-
121
- all_projects="bolt clang clang-tools-extra compiler-rt cross-project-tests flang libc libclc lld lldb llvm mlir openmp polly pstl"
122
- modified_projects="$(keep-modified-projects ${all_projects})"
123
-
124
- windows_projects_to_test=$(exclude-windows $(compute-projects-to-test 1 ${modified_projects}))
125
- windows_check_targets=$(check-targets ${windows_projects_to_test} | sort | uniq | tr -d '\r' | tr '\n' ' ')
126
- windows_projects=$(add-dependencies ${windows_projects_to_test} | sort | uniq | tr -d '\r' | tr '\n' ';')
127
-
128
- if [[ "${windows_projects}" == "" ]]; then
129
- echo "No projects to build"
130
- fi
131
-
132
- echo "Building projects: ${windows_projects}"
133
- echo "Running project checks targets: ${windows_check_targets}"
134
-
135
- echo "windows-projects=${windows_projects}" >> $GITHUB_OUTPUT
136
- echo "windows-check-targets=${windows_check_targets}" >> $GITHUB_OUTPUT
137
- - name : Build and Test
138
- # Mark the job as a success even if the step fails so that people do
139
- # not get notified while the new premerge pipeline is in an
140
- # experimental state.
141
- # TODO(boomanaiden154): Remove this once the pipeline is stable and we
142
- # are ready for people to start recieving notifications.
143
- continue-on-error : true
144
- if : ${{ steps.vars.outputs.windows-projects != '' }}
145
- shell : cmd
146
- run : |
147
- set MAX_PARALLEL_COMPILE_JOBS=64
148
- set MAX_PARALLEL_LINK_JOBS=64
149
- call C:\\BuildTools\\Common7\\Tools\\VsDevCmd.bat -arch=amd64 -host_arch=amd64
150
- bash .ci/monolithic-windows.sh "${{ steps.vars.outputs.windows-projects }}" "${{ steps.vars.outputs.windows-check-targets }}"
151
-
152
- premerge-check-macos :
153
- name : MacOS Premerge Checks
154
- runs-on : macos-14
155
- if : >-
156
- github.repository_owner == 'llvm' &&
157
- (startswith(github.ref_name, 'release/') ||
158
- startswith(github.base_ref, 'release/')) &&
159
- (github.event_name != 'pull_request' || github.event.action != 'closed')
160
- steps :
161
- - name : Checkout LLVM
162
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
163
- with :
164
- fetch-depth : 2
165
- - name : Setup ccache
166
- uses : hendrikmuhs/ccache-action@a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
167
- with :
168
- max-size : " 2000M"
169
- - name : Install Ninja
170
- uses : llvm/actions/install-ninja@main
171
- - name : Build and Test
172
- run : |
173
- modified_files=$(git diff --name-only HEAD~1...HEAD)
174
- modified_dirs=$(echo "$modified_files" | cut -d'/' -f1 | sort -u)
175
-
176
- echo $modified_files
177
- echo $modified_dirs
178
-
179
- . ./.ci/compute-projects.sh
180
-
181
- all_projects="clang clang-tools-extra lld lldb llvm mlir"
182
- modified_projects="$(keep-modified-projects ${all_projects})"
183
-
184
- # We have to disable the runtimes builds due to https://github.com/llvm/llvm-project/issues/90568
185
- # and the lldb tests depend on libcxx, so we need to skip them.
186
- mac_check_targets=$(check-targets ${modified_projects} | sort | uniq | tr '\n' ' ' | sed -e 's/check-lldb //g')
187
- mac_projects=$(add-dependencies ${modified_projects} | sort | uniq | tr '\n' ' ')
188
-
189
- mac_runtimes_to_test=$(compute-runtimes-to-test ${modified_projects})
190
- mac_runtime_check_targets=$(check-targets ${mac_runtimes_to_test} | sort | uniq | tr '\n' ' ')
191
- mac_runtimes=$(echo ${mac_runtimes_to_test} | tr ' ' '\n' | sort | uniq | tr '\n' ' ')
192
-
193
- if [[ "${mac_projects}" == "" ]]; then
194
- echo "No projects to build"
195
- exit 0
196
- fi
197
-
198
- echo "Projects to test: ${modified_projects}"
199
- echo "Runtimes to test: ${mac_runtimes_to_test}"
200
- echo "Building projects: ${mac_projects}"
201
- echo "Running project checks targets: ${mac_check_targets}"
202
- echo "Building runtimes: ${mac_runtimes}"
203
- echo "Running runtimes checks targets: ${mac_runtime_check_targets}"
204
-
205
- # -DLLVM_DISABLE_ASSEMBLY_FILES=ON is for
206
- # https://github.com/llvm/llvm-project/issues/81967
207
- # Disable sharding in lit so that the LIT_XFAIL environment var works.
208
- cmake -G Ninja \
209
- -B build \
210
- -S llvm \
211
- -DLLVM_ENABLE_PROJECTS="$(echo ${mac_projects} | tr ' ' ';')" \
212
- -DLLVM_DISABLE_ASSEMBLY_FILES=ON \
213
- -DCMAKE_BUILD_TYPE=Release \
214
- -DLLDB_INCLUDE_TESTS=OFF \
215
- -DLLVM_ENABLE_ASSERTIONS=ON \
216
- -DCMAKE_C_COMPILER_LAUNCHER=ccache \
217
- -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
218
-
219
- # The libcxx tests fail, so we are skipping the runtime targets.
220
- ninja -C build $mac_check_targets
57
+ ls /home/gha
58
+ exit 1
0 commit comments