Skip to content

Manual version PRs #150

Manual version PRs

Manual version PRs #150

name: Manual versioning
on:
workflow_dispatch:
inputs:
shopware_version:
description: "Shopware version"
required: true
type: string
php_version:
description: "PHP version"
required: false
type: string
default: "8.2"
trigger_default_schema:
description: "Trigger schema"
required: false
type: boolean
default: true
trigger_commercial_schema:
description: "Trigger commercial schema"
required: false
type: boolean
default: true
trigger_digitalsalesroom_schema:
description: "Trigger digitalsalesroom schema"
required: false
type: boolean
default: true
trigger_customproducts_schema:
description: "Trigger custom products schema"
required: false
type: boolean
default: true
jobs:
guard:
name: "Check version matches branch"
runs-on: ubuntu-22.04
outputs:
proceed: ${{ steps.check.outputs.proceed }}
steps:
- id: check
env:
VERSION: ${{ inputs.shopware_version }}
BRANCH: ${{ github.ref_name }}
run: |
# Map branch -> expected version pattern. Bump `latest` when it moves.
case "$BRANCH" in
latest) expected='^v?6\.7\.' ;;
v6.6) expected='^v?6\.6\.' ;;
main|trunk) expected='.*' ;;
*) expected='.*' ;;
esac
if [[ "$VERSION" =~ $expected ]]; then
echo "proceed=true" >> "$GITHUB_OUTPUT"
echo "::notice::Accepting $VERSION on branch $BRANCH"
else
echo "proceed=false" >> "$GITHUB_OUTPUT"
echo "::notice::Skipping: $VERSION does not belong on branch $BRANCH"
fi
generate-trunk:
needs: guard
if: ${{ needs.guard.outputs.proceed == 'true' && inputs.trigger_default_schema }}
uses: ./.github/workflows/base_schema.yml
with:
shopware_version: ${{ inputs.shopware_version }}
php_version: ${{ inputs.php_version }}
secrets: inherit
generate-commercial-trunk:
needs: guard
if: ${{ needs.guard.outputs.proceed == 'true' && inputs.trigger_commercial_schema }}
uses: ./.github/workflows/plugin_commercial_schema.yml
with:
shopware_version: ${{ inputs.shopware_version }}
php_version: ${{ inputs.php_version }}
secrets: inherit
generate-digitalsalesroom-trunk:
needs: guard
if: ${{ needs.guard.outputs.proceed == 'true' && inputs.trigger_digitalsalesroom_schema }}
uses: ./.github/workflows/plugin_digitalsalesroom_schema.yml
with:
shopware_version: ${{ inputs.shopware_version }}
php_version: ${{ inputs.php_version }}
secrets: inherit
generate-customproducts-trunk:
needs: guard
if: ${{ needs.guard.outputs.proceed == 'true' && inputs.trigger_customproducts_schema }}
uses: ./.github/workflows/plugin_customproducts_schema.yml
with:
shopware_version: ${{ inputs.shopware_version }}
php_version: ${{ inputs.php_version }}
secrets: inherit