mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-22 23:04:33 +00:00
ci: Replace exec-with-shell wrapper with "plain bash"
Also, promote defaults.run.shell from inside only the primary jobs to the top level. The src/ci/exec-with-shell.py wrapper script was formerly used to change out the shell mid-job by intercepting a CI_OVERRIDE_SHELL environment variable. Now, instead, we just set `bash` as the global default across all jobs, and we also delete the exec-with-shell.py script. Signed-off-by: Kristofer Rye <kristofer.rye@gmail.com>
This commit is contained in:
parent
49f5078048
commit
586629c0b6
14
.github/workflows/ci.yml
vendored
14
.github/workflows/ci.yml
vendored
@ -26,7 +26,7 @@ name: CI
|
|||||||
- "**"
|
- "**"
|
||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
shell: "python src/ci/exec-with-shell.py {0}"
|
shell: bash
|
||||||
jobs:
|
jobs:
|
||||||
pr:
|
pr:
|
||||||
name: PR
|
name: PR
|
||||||
@ -51,9 +51,6 @@ jobs:
|
|||||||
os: ubuntu-latest-xl
|
os: ubuntu-latest-xl
|
||||||
timeout-minutes: 600
|
timeout-minutes: 600
|
||||||
runs-on: "${{ matrix.os }}"
|
runs-on: "${{ matrix.os }}"
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
steps:
|
steps:
|
||||||
- name: disable git crlf conversion
|
- name: disable git crlf conversion
|
||||||
run: git config --global core.autocrlf false
|
run: git config --global core.autocrlf false
|
||||||
@ -153,9 +150,6 @@ jobs:
|
|||||||
env: {}
|
env: {}
|
||||||
timeout-minutes: 600
|
timeout-minutes: 600
|
||||||
runs-on: "${{ matrix.os }}"
|
runs-on: "${{ matrix.os }}"
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
steps:
|
steps:
|
||||||
- name: disable git crlf conversion
|
- name: disable git crlf conversion
|
||||||
run: git config --global core.autocrlf false
|
run: git config --global core.autocrlf false
|
||||||
@ -473,9 +467,6 @@ jobs:
|
|||||||
os: windows-latest-xl
|
os: windows-latest-xl
|
||||||
timeout-minutes: 600
|
timeout-minutes: 600
|
||||||
runs-on: "${{ matrix.os }}"
|
runs-on: "${{ matrix.os }}"
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
steps:
|
steps:
|
||||||
- name: disable git crlf conversion
|
- name: disable git crlf conversion
|
||||||
run: git config --global core.autocrlf false
|
run: git config --global core.autocrlf false
|
||||||
@ -601,9 +592,6 @@ jobs:
|
|||||||
os: macos-latest
|
os: macos-latest
|
||||||
timeout-minutes: 600
|
timeout-minutes: 600
|
||||||
runs-on: "${{ matrix.os }}"
|
runs-on: "${{ matrix.os }}"
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
steps:
|
steps:
|
||||||
- name: disable git crlf conversion
|
- name: disable git crlf conversion
|
||||||
run: git config --global core.autocrlf false
|
run: git config --global core.autocrlf false
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
#!/usr/bin/env python
|
|
||||||
# A simple wrapper that forwards the arguments to bash, unless the
|
|
||||||
# CI_OVERRIDE_SHELL environment variable is present: in that case the content
|
|
||||||
# of that environment variable is used as the shell path.
|
|
||||||
|
|
||||||
import os
|
|
||||||
import sys
|
|
||||||
import subprocess
|
|
||||||
|
|
||||||
try:
|
|
||||||
shell = os.environ["CI_OVERRIDE_SHELL"]
|
|
||||||
except KeyError:
|
|
||||||
shell = "bash"
|
|
||||||
|
|
||||||
res = subprocess.call([shell] + sys.argv[1:])
|
|
||||||
sys.exit(res)
|
|
@ -75,9 +75,6 @@ x--expand-yaml-anchors--remove:
|
|||||||
- &base-ci-job
|
- &base-ci-job
|
||||||
timeout-minutes: 600
|
timeout-minutes: 600
|
||||||
runs-on: "${{ matrix.os }}"
|
runs-on: "${{ matrix.os }}"
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
env: *shared-ci-variables
|
env: *shared-ci-variables
|
||||||
steps:
|
steps:
|
||||||
- name: disable git crlf conversion
|
- name: disable git crlf conversion
|
||||||
@ -233,18 +230,10 @@ on:
|
|||||||
|
|
||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
# While on Linux and macOS builders it just forwards the arguments to the
|
# On Linux, macOS, and Windows, use the system-provided bash as the default
|
||||||
# system bash, this wrapper allows switching from the host's bash.exe to
|
# shell. (This should only make a difference on Windows, where the default
|
||||||
# the one we install along with MSYS2 mid-build on Windows.
|
# shell is PowerShell.)
|
||||||
#
|
shell: bash
|
||||||
# Once the step to install MSYS2 is executed, the CI_OVERRIDE_SHELL
|
|
||||||
# environment variable is set pointing to our MSYS2's bash.exe. From that
|
|
||||||
# moment the host's bash.exe will not be called anymore.
|
|
||||||
#
|
|
||||||
# This is needed because we can't launch our own bash.exe from the host
|
|
||||||
# bash.exe, as that would load two different cygwin1.dll in memory, causing
|
|
||||||
# "cygwin heap mismatch" errors.
|
|
||||||
shell: python src/ci/exec-with-shell.py {0}
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
pr:
|
pr:
|
||||||
|
Loading…
Reference in New Issue
Block a user