mirror of https://github.com/FriendsOfTYPO3/tea.git synced 2024-11-25 01:36:13 +01:00

[FEATURE] Add shellcheck to Github pipeline (#1400)

Fixes #1398
This commit is contained in:
Felix Althaus 2024-07-31 18:04:23 +02:00 committed by GitHub
parent 0dc3e82829
commit 99a2b7f176
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 17 additions and 1 deletions

View file

@ -313,6 +313,16 @@ jobs:
- typo3-version: "^12.4" - typo3-version: "^12.4"
php-version: "8.3" php-version: "8.3"
composer-dependencies: highest composer-dependencies: highest
shellcheck:
name: Check shell scripts
runs-on: ubuntu-24.04
timeout-minutes: 2
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Check scripts
run: |
Build/Scripts/runTests.sh -s shellcheck
documentation: documentation:
name: Documentation name: Documentation
runs-on: ubuntu-24.04 runs-on: ubuntu-24.04

View file

@ -1,7 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# #
# TYPO3 core test runner based on docker. # TYPO3 extension tea test runner based on docker.
# #
trap 'cleanUp;exit 2' SIGINT trap 'cleanUp;exit 2' SIGINT
@ -162,6 +162,7 @@ Options:
- lintYaml: YAML linting - lintYaml: YAML linting
- phpstan: phpstan tests - phpstan: phpstan tests
- phpstanGenerateBaseline: regenerate phpstan baseline, handy after phpstan updates - phpstanGenerateBaseline: regenerate phpstan baseline, handy after phpstan updates
- shellcheck: check runTests.sh for shell issues
- unit (default): PHP unit tests - unit (default): PHP unit tests
- unitRandom: PHP unit tests in random order, add -o <number> to use specific seed - unitRandom: PHP unit tests in random order, add -o <number> to use specific seed
@ -446,6 +447,7 @@ mkdir -p .Build/public/typo3temp/var/tests
IMAGE_PHP="ghcr.io/typo3/core-testing-$(echo "php${PHP_VERSION}" | sed -e 's/\.//'):latest" IMAGE_PHP="ghcr.io/typo3/core-testing-$(echo "php${PHP_VERSION}" | sed -e 's/\.//'):latest"
IMAGE_NODE="docker.io/node:${NODE_VERSION}-alpine" IMAGE_NODE="docker.io/node:${NODE_VERSION}-alpine"
IMAGE_ALPINE="docker.io/alpine:3.8" IMAGE_ALPINE="docker.io/alpine:3.8"
IMAGE_SHELLCHECK="docker.io/koalaman/shellcheck:v0.10.0"
IMAGE_DOCS="ghcr.io/typo3-documentation/render-guides:latest" IMAGE_DOCS="ghcr.io/typo3-documentation/render-guides:latest"
IMAGE_MARIADB="docker.io/mariadb:${DBMS_VERSION}" IMAGE_MARIADB="docker.io/mariadb:${DBMS_VERSION}"
IMAGE_MYSQL="docker.io/mysql:${DBMS_VERSION}" IMAGE_MYSQL="docker.io/mysql:${DBMS_VERSION}"
@ -539,6 +541,10 @@ case ${TEST_SUITE} in
${CONTAINER_BIN} run ${CONTAINER_INTERACTIVE} --rm --pull always ${USERSET} -v "${ROOT_DIR}":/project ${IMAGE_DOCS} --config=Documentation --fail-on-log ${CONTAINER_BIN} run ${CONTAINER_INTERACTIVE} --rm --pull always ${USERSET} -v "${ROOT_DIR}":/project ${IMAGE_DOCS} --config=Documentation --fail-on-log
SUITE_EXIT_CODE=$? SUITE_EXIT_CODE=$?
;; ;;
shellcheck)
${CONTAINER_BIN} run ${CONTAINER_INTERACTIVE} --rm --pull always ${USERSET} -v "${ROOT_DIR}":/project:ro -e SHELLCHECK_OPTS="-e SC2086" ${IMAGE_SHELLCHECK} /project/Build/Scripts/runTests.sh
SUITE_EXIT_CODE=$?
;;
functional) functional)
[ -z "${TEST_FILE}" ] && TEST_FILE="Tests/Functional" [ -z "${TEST_FILE}" ] && TEST_FILE="Tests/Functional"
COMMAND=".Build/bin/phpunit -c Build/phpunit/FunctionalTests.xml --exclude-group not-${DBMS} ${EXTRA_TEST_OPTIONS} ${TEST_FILE}" COMMAND=".Build/bin/phpunit -c Build/phpunit/FunctionalTests.xml --exclude-group not-${DBMS} ${EXTRA_TEST_OPTIONS} ${TEST_FILE}"