about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorYuki Okushi <jtitor@2k36.org>2021-06-22 00:00:42 +0900
committerGitHub <noreply@github.com>2021-06-22 00:00:42 +0900
commit9c664b23214743645e71f8132057b7aec483ef4d (patch)
tree59b2dc0a408d01fdb0eea592d5d3030b081f75bc /src
parenta81f55fb161a22e287220281d33542406a3a57f8 (diff)
parent61b453cd1ab28b0dabab3293ee12df7474516eb6 (diff)
downloadrust-9c664b23214743645e71f8132057b7aec483ef4d.tar.gz
rust-9c664b23214743645e71f8132057b7aec483ef4d.zip
Rollup merge of #86472 - Mark-Simulacrum:fix-ci-beta, r=pietroalbini
Fix CI to fetch master on beta channel

This forward-ports a fix from the beta channel (landing in #86413, hopefully) to master so that we don't need to apply it on each round of backports.

This bug also demonstrates that our channel-checking is a bit insufficient -- stable is checked, but beta has some of its own peculiarities currently and isn't checked. But this does not attempt to adjust for that; we likely can't afford to run both beta and stable channels by CI and the current state here seems OK for now.

r? `@pietroalbini`
Diffstat (limited to 'src')
-rwxr-xr-xsrc/ci/init_repo.sh2
-rwxr-xr-xsrc/ci/run.sh6
-rw-r--r--src/ci/shared.sh8
3 files changed, 10 insertions, 6 deletions
diff --git a/src/ci/init_repo.sh b/src/ci/init_repo.sh
index 060b3079dad..3c61dcc9d9c 100755
--- a/src/ci/init_repo.sh
+++ b/src/ci/init_repo.sh
@@ -31,7 +31,7 @@ mkdir "$CACHE_DIR"
 
 # On the beta channel we'll be automatically calculating the prerelease version
 # via the git history, so unshallow our shallow clone from CI.
-if grep -q RUST_RELEASE_CHANNEL=beta src/ci/run.sh; then
+if [ "$(releaseChannel)" = "beta" ]; then
   git fetch origin --unshallow beta master
 fi
 
diff --git a/src/ci/run.sh b/src/ci/run.sh
index c5e225c7cd1..b5019d83af4 100755
--- a/src/ci/run.sh
+++ b/src/ci/run.sh
@@ -65,11 +65,7 @@ fi
 # Always set the release channel for bootstrap; this is normally not important (i.e., only dist
 # builds would seem to matter) but in practice bootstrap wants to know whether we're targeting
 # master, beta, or stable with a build to determine whether to run some checks (notably toolstate).
-if [[ -z "${RUST_CI_OVERRIDE_RELEASE_CHANNEL+x}" ]]; then
-    export RUST_RELEASE_CHANNEL="$(cat "${ci_dir}/channel")"
-else
-    export RUST_RELEASE_CHANNEL="${RUST_CI_OVERRIDE_RELEASE_CHANNEL}"
-fi
+export RUST_RELEASE_CHANNEL=$(releaseChannel)
 RUST_CONFIGURE_ARGS="$RUST_CONFIGURE_ARGS --release-channel=$RUST_RELEASE_CHANNEL"
 
 if [ "$DEPLOY$DEPLOY_ALT" = "1" ]; then
diff --git a/src/ci/shared.sh b/src/ci/shared.sh
index 332a949a4dc..b095afb542d 100644
--- a/src/ci/shared.sh
+++ b/src/ci/shared.sh
@@ -141,3 +141,11 @@ function ciCommandSetEnv {
         exit 1
     fi
 }
+
+function releaseChannel {
+    if [[ -z "${RUST_CI_OVERRIDE_RELEASE_CHANNEL+x}" ]]; then
+        cat "${ci_dir}/channel"
+    else
+        echo $RUST_CI_OVERRIDE_RELEASE_CHANNEL
+    fi
+}