fix: set sh as default shell for containers (#853)

* fix: set default shell for containers to sh

This matches GitHub Actions behaviour where,
runners use bash since it's guaranteed to exist there
while containers use sh for compatibility

* tests: fixup for default shell
This commit is contained in:
Ryan
2021-11-03 19:47:47 +01:00
committed by GitHub
parent 7c73531008
commit e9ae7894e3
8 changed files with 76 additions and 3 deletions

View File

@@ -1,6 +1,10 @@
name: container-hostname
on: push
defaults:
run:
shell: bash
jobs:
with-hostname:
runs-on: ubuntu-latest

View File

@@ -5,6 +5,19 @@ jobs:
steps:
- shell: bash
run: |
if [[ -n "$PATH" ]] ; then
echo "I'm Bash!"
if [[ -n "$BASH" ]]; then
echo "I'm $BASH!"
else
exit 1
fi
check-container:
runs-on: ubuntu-latest
container: node:12-buster-slim
steps:
- shell: bash
run: |
if [[ -n "$BASH" ]]; then
echo "I'm $BASH!"
else
exit 1
fi

View File

@@ -0,0 +1,21 @@
on: push
jobs:
check: # GHA uses `bash` as default for runners
runs-on: ubuntu-latest
steps:
- run: |
if [[ -n "$BASH" ]]; then
echo "I'm $BASH!"
else
exit 1
fi
check-container: # GHA uses `sh` as default for containers
runs-on: ubuntu-latest
container: alpine:latest
steps:
- run: |
if [ -z ${BASH+x} ]; then
echo "I'm sh!"
else
exit 1
fi

View File

@@ -6,3 +6,10 @@ jobs:
- shell: pwsh
run: |
$PSVersionTable
check-container:
runs-on: ubuntu-latest
container: ghcr.io/justingrote/act-pwsh:latest
steps:
- shell: pwsh
run: |
$PSVersionTable

View File

@@ -7,3 +7,11 @@ jobs:
run: |
import platform
print(platform.python_version())
check-container:
runs-on: ubuntu-latest
container: node:12-buster
steps:
- shell: python
run: |
import platform
print(platform.python_version())

View File

@@ -5,6 +5,19 @@ jobs:
steps:
- shell: sh
run: |
if [ -n "$PATH" ] ; then
if [ -z ${BASH+x} ]; then
echo "I'm sh!"
else
exit 1
fi
check-container:
runs-on: ubuntu-latest
container: alpine:latest
steps:
- shell: sh
run: |
if [ -z ${BASH+x} ]; then
echo "I'm sh!"
else
exit 1
fi