Skip to content

Manual trigger

Manual trigger #1

name: Manual trigger
on:
workflow_dispatch:
inputs:
limit:
type: choice
options:
- 'no'
- 'PHP8.0/MySQL5.7'
- 'PHP8.0/MySQL8.0'
- 'PHP8.0/MariaDB11'
- 'PHP8.1/MySQL5.7'
- 'PHP8.1/MySQL8.0'
- 'PHP8.1/MariaDB11'
- 'PHP8.2/MySQL5.7'
- 'PHP8.2/MySQL8.0'
- 'PHP8.2/MariaDB11'
- 'PHP8.3/MySQL5.7'
- 'PHP8.3/MySQL8.0'
- 'PHP8.3/MariaDB11'
default: 'PHP8.1/MySQL8.0'
description: 'Limit to one PHP/MySQL combination'
jobs:
build_testplan:
runs-on: ubuntu-latest
outputs:
testplan: '${{ steps.build_testplan.outputs.testplan }}'
steps:
- name: Build testplan construct
id: build_testplan
run: |
# shellcheck disable=SC2088
case "${{ inputs.limit }}" in
"no") LIMIT='';;
"PHP8.0/MySQL5.7") LIMIT='~/defaults/php8.0_mysql5.7_only.yml,' ;;
"PHP8.0/MySQL8.0") LIMIT='~/defaults/php8.0_mysql8.0_only.yml,' ;;
"PHP8.0/MariaDB11") LIMIT='~/defaults/php8.0_mariadb11_only.yml,' ;;
"PHP8.1/MySQL5.7") LIMIT='~/defaults/php8.1_mysql5.7_only.yml,' ;;
"PHP8.1/MySQL8.0") LIMIT='~/defaults/php8.1_mysql8.0_only.yml,' ;;
"PHP8.1/MariaDB11") LIMIT='~/defaults/php8.1_mariadb11_only.yml,' ;;
"PHP8.2/MySQL5.7") LIMIT='~/defaults/php8.2_mysql5.7_only.yml,' ;;
"PHP8.2/MySQL8.0") LIMIT='~/defaults/php8.2_mysql8.0_only.yml,' ;;
"PHP8.2/MariaDB11") LIMIT='~/defaults/php8.2_mariadb11_only.yml,' ;;
"PHP8.3/MySQL5.7") LIMIT='~/defaults/php8.3_mysql5.7_only.yml,' ;;
"PHP8.3/MySQL8.0") LIMIT='~/defaults/php8.3_mysql8.0_only.yml,' ;;
"PHP8.3/MariaDB11") LIMIT='~/defaults/php8.3_mariadb11_only.yml,' ;;
esac
# shellcheck disable=SC2088
TESTPLAN="~/defaults/7.0.x.yml,${LIMIT}~/module-invoice.yml,~/_custom.yml"
echo "testplan=${TESTPLAN}" | tee -a "${GITHUB_OUTPUT}"
dispatch_stable:
needs: build_testplan
uses: oxid-eSales/github-actions/.github/workflows/universal_workflow_light.yml@v4
with:
testplan: ${{ needs.build_testplan.outputs.testplan }}
runs_on: '"ubuntu-latest"'
defaults: 'v4'
plan_folder: '.github/oxid-esales'
secrets:
DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}