2929 required : false
3030 default : " false"
3131 type : string
32+ platforms :
33+ description : The deployment cloud platform
34+ required : true
35+ type : string
36+ shortname :
37+ description : Shortname for the scenario within the identifier
38+ required : true
39+ type : string
40+ run-all-e2e-tests :
41+ description : " Run all E2E tests (playwright)"
42+ required : false
43+ default : false
44+ type : boolean
45+ platforms :
46+ description : The deployment cloud platform
47+ default : gke
48+ required : false
49+ type : string
50+ flows :
51+ description : The flows to run
52+ default : " install,upgrade"
53+ type : string
54+ required : false
55+ e2e-enabled :
56+ required : false
57+ default : true
58+ type : boolean
59+ deployment-ttl :
60+ required : false
61+ default : 1h
62+ type : string
3263
3364concurrency :
34- group : ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}-${{ inputs.scenario }}-${{ inputs.camunda-version }}-${{ inputs.auth }}-${{ inputs.exclude }}
65+ group : ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}-${{ inputs.shortname }}-${{ inputs.camunda-version }}-${{ inputs.auth }}-${{ inputs.exclude }}-${{ inputs.platforms }}
3566 cancel-in-progress : true
3667
3768permissions :
@@ -46,23 +77,47 @@ jobs:
4677 camunda-helm-dir : " camunda-platform-${{ inputs.camunda-version }}"
4778 camunda-helm-git-ref : " ${{ github.event.pull_request.head.sha }}"
4879
80+ parse-platforms :
81+ name : Parse platforms
82+ runs-on : ubuntu-latest
83+ env :
84+ SCENARIOS_LIST : ${{ inputs.scenarios }}
85+ outputs :
86+ platforms : ${{ steps.make-json-array.outputs.platforms }}
87+ steps :
88+ - name : Convert string to JSON array and set as output
89+ id : make-json-array
90+ run : |
91+ platforms="${{ inputs.platforms }}"
92+ echo "platforms=$(jq -cn --arg p "$platforms" '$p | split(",")')" >> "$GITHUB_OUTPUT"
93+ echo "platforms=$platforms"
94+
4995 integration :
50- name : Camunda ${{ inputs.camunda-version }} - ${{ matrix.scenario }}
51- needs : validation
96+ name : ${{ matrix.platform }} - ITs
97+ needs : [ validation, parse-platforms]
5298 permissions :
5399 contents : read
54100 id-token : write
55101 deployments : write
56102 secrets : inherit
103+ strategy :
104+ matrix :
105+ platform : ${{ fromJson(needs.parse-platforms.outputs.platforms) }}
57106 uses : ./.github/workflows/test-integration-template.yaml
58107 with :
59- identifier : " ${{ inputs.camunda-version }}"
60- platforms : " gke "
61- flows : " install,upgrade "
108+ identifier : " ${{ github.event.pull_request.number || git.ref }}-intg-${{ inputs.camunda-version }}-${{ matrix.platform }}"
109+ deployment-ttl : " ${{ contains(github.event.pull_request.labels.*.name, 'test-persistent') && '1w' || inputs.deployment-ttl }} "
110+ flows : ${{ inputs.flows }}
62111 camunda-helm-dir : " camunda-platform-${{ inputs.camunda-version }}"
63- test-case : " ${{ inputs.case }}"
64- scenario : " ${{ inputs.scenario }}"
65- auth : " ${{ inputs.auth }}"
66- exclude : " ${{ inputs.exclude }}"
67- values-enterprise : " ${{ inputs.values-enterprise }}"
68112 camunda-helm-git-ref : " ${{ github.event.pull_request.head.sha }}"
113+ caller-git-ref : " ${{ github.event.pull_request.head.sha }}"
114+ test-case : ${{inputs.case}}
115+ scenario : ${{inputs.scenario}}
116+ e2e-enabled : ${{ inputs.e2e-enabled }}
117+ shortname : ${{inputs.shortname}}
118+ auth : ${{inputs.auth}}
119+ exclude : ${{inputs.exclude}}
120+ platforms : ${{ matrix.platform }}
121+ run-all-e2e-tests : ${{ inputs.run-all-e2e-tests }}
122+ always-delete-namespace : true
123+ values-enterprise : " ${{ inputs.values-enterprise }}"
0 commit comments