3434 if : >-
3535 github.repository_owner == 'llvm' &&
3636 (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
3840 steps :
3941 - name : Checkout LLVM
4042 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -52,169 +54,5 @@ jobs:
5254 # are ready for people to start recieving notifications.
5355 continue-on-error : true
5456 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