name: deploy-featurebranch

on:
  pull_request:
    types: 
      - labeled
      - opened
      - synchronize
      - reopened

jobs:
  release:
    if: |
      (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == 'Budibase/budibase') &&
      (
        contains(github.event.pull_request.labels.*.name, 'feature-branch') ||
        contains(github.event.pull_request.labels.*.name, 'feature-branch-pro') ||
        contains(github.event.pull_request.labels.*.name, 'feature-branch-team') ||
        contains(github.event.pull_request.labels.*.name, 'feature-branch-business') ||
        contains(github.event.pull_request.labels.*.name, 'feature-branch-enterprise')
      )
    runs-on: ubuntu-latest
    env:
      PAYLOAD_BRANCH: ${{ github.head_ref }}
      PAYLOAD_PR_NUMBER: ${{ github.event.pull_request.number }}
      PAYLOAD_LICENSE_TYPE: |
        ${{ 
          contains(github.event.pull_request.labels.*.name, 'feature-branch') && 'free' ||
          contains(github.event.pull_request.labels.*.name, 'feature-branch-pro') && 'pro' ||
          contains(github.event.pull_request.labels.*.name, 'feature-branch-team') && 'team' ||
          contains(github.event.pull_request.labels.*.name, 'feature-branch-business') && 'business' ||
          contains(github.event.pull_request.labels.*.name, 'feature-branch-enterprise') && 'enterprise' || 'free'
        }}
    steps:
      - uses: actions/checkout@v4

      - uses: passeidireto/trigger-external-workflow-action@main
        with:
          repository: budibase/budibase-deploys
          event: featurebranch-qa-deploy
          github_pat: ${{ secrets.GH_ACCESS_TOKEN }}