diff options
| author | Josh Stone <jistone@redhat.com> | 2023-02-28 10:25:05 -0800 |
|---|---|---|
| committer | Josh Stone <jistone@redhat.com> | 2023-02-28 12:02:14 -0800 |
| commit | 565de58dd705e6b4dc1adda0f96b102360276ef5 (patch) | |
| tree | 6b22efdbead9b13062cf477ddfb320da503fadca /src/bootstrap | |
| parent | 313f04f4fff32ecf376c8af0e5d80e196f2bc056 (diff) | |
Skip test `download_ci_llvm` with modified LLVM
Diffstat (limited to 'src/bootstrap')
| -rw-r--r-- | src/bootstrap/config/tests.rs | 5 | ||||
| -rw-r--r-- | src/bootstrap/native.rs | 21 |
2 files changed, 17 insertions, 9 deletions
diff --git a/src/bootstrap/config/tests.rs b/src/bootstrap/config/tests.rs index 681ecbfeb5b..5a105007f21 100644 --- a/src/bootstrap/config/tests.rs +++ b/src/bootstrap/config/tests.rs @@ -11,6 +11,11 @@ fn parse(config: &str) -> Config { #[test] fn download_ci_llvm() { + if crate::native::is_ci_llvm_modified(&parse("")) { + eprintln!("Detected LLVM as non-available: running in CI and modified LLVM in this change"); + return; + } + let parse_llvm = |s| parse(s).llvm_from_ci; let if_available = parse_llvm("llvm.download-ci-llvm = \"if-available\""); diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs index 07d339c067c..31b22228934 100644 --- a/src/bootstrap/native.rs +++ b/src/bootstrap/native.rs @@ -216,21 +216,24 @@ pub(crate) fn is_ci_llvm_available(config: &Config, asserts: bool) -> bool { } } - if CiEnv::is_ci() { + if is_ci_llvm_modified(config) { + eprintln!("Detected LLVM as non-available: running in CI and modified LLVM in this change"); + return false; + } + + true +} + +/// Returns true if we're running in CI with modified LLVM (and thus can't download it) +pub(crate) fn is_ci_llvm_modified(config: &Config) -> bool { + CiEnv::is_ci() && { // We assume we have access to git, so it's okay to unconditionally pass // `true` here. let llvm_sha = detect_llvm_sha(config, true); let head_sha = output(config.git().arg("rev-parse").arg("HEAD")); let head_sha = head_sha.trim(); - if llvm_sha == head_sha { - eprintln!( - "Detected LLVM as non-available: running in CI and modified LLVM in this change" - ); - return false; - } + llvm_sha == head_sha } - - true } #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] |
