@@ -24,44 +24,22 @@ jobs:
24
24
25
25
outputs :
26
26
released : ${{steps.wait-for-bom.outputs.published}}
27
- quarkus-platform-branch : ${{steps.versions.outputs.quarkus_platform_branch}}
28
- needs-main-pr : ${{ steps.versions.outputs.needs_main_pr == 'true' }}
27
+ quarkus-platform-branches : ${{steps.qosdk-metadata.outputs.quarkus_platform_branches}}
29
28
30
29
steps :
31
- - uses : actions/checkout@v4
30
+ - uses : radcortez/project-metadata-action@main
31
+ name : Retrieve project metadata
32
+ id : metadata
32
33
with :
33
- ref : ${{github.event.inputs.tag || github.ref_name}}
34
+ github-token : ${{secrets.GITHUB_TOKEN}}
35
+ metadata-file-path : ' .github/project.yml'
36
+ local-file : true
34
37
35
- - name : Gather versions
36
- id : versions
38
+ - name : Parse QOSDK metadata
39
+ id : qosdk-metadata
37
40
run : |
38
- quarkus_version=$(./mvnw help:evaluate -Dexpression=quarkus.version -q -DforceStdout)
39
- quarkus_major=$(echo ${quarkus_version} | cut -d . -f 1,2)
40
- echo "QOSDK-defined Quarkus version: ${quarkus_version} (-> major: ${quarkus_major})"
41
-
42
- quarkus_platform_version=$(curl -s https://registry.quarkus.io/client/platforms | jq -r '.platforms[0]."current-stream-id"')
43
- echo "Current platform-defined Quarkus major version: ${quarkus_platform_version}"
44
-
45
- quarkus_platform_branch=${quarkus_major}
46
- if [ "${quarkus_major}" = "${quarkus_platform_version}" ]; then
47
- quarkus_platform_branch="${quarkus_platform_version}"
48
- fi
49
- echo "quarkus_platform_branch=${quarkus_platform_branch}" >> $GITHUB_OUTPUT
50
-
51
- if [ "${quarkus_platform_branch}" = "main" ]; then
52
- echo "quarkus-platform update will target main"
53
- echo "need_main_pr=true" >> $GITHUB_OUTPUT
54
- else
55
- echo "quarkus-platform update will target ${quarkus_platform_branch}"
56
- echo "Check if quarkus-platform also needs to be updated on main"
57
- if [ "${{ github.base_ref }}" = "main" ]; then
58
- echo "PR targets main so assume quarkus-platform main also needs to be updated"
59
- echo "need_main_pr=true" >> $GITHUB_OUTPUT
60
- else
61
- echo "No need for PR on quarkus-platform main"
62
- echo "need_main_pr=false" >> $GITHUB_OUTPUT
63
- fi
64
- fi
41
+ quarkus_platform_branches=$(echo '${{steps.metadata.outputs.json}}' | jq -c '.release.["quarkus-platform-branches"]')
42
+ echo "quarkus_platform_branches=${quarkus_platform_branches}" >> $GITHUB_OUTPUT
65
43
66
44
- name : Wait for QOSDK BOM to be published
67
45
uses : quarkusio/monitor-artifact-publication-action@main
@@ -76,22 +54,12 @@ jobs:
76
54
poll-iterations : 10
77
55
post-delay : 0
78
56
79
- update- quarkus-platform-branch :
57
+ quarkus-platform-branch-pull-requests :
80
58
uses : ./.github/workflows/release-quarkus-platform-pr.yml
81
59
needs :
82
60
- prepare-platform-pr
83
61
with :
84
62
qosdk-version : ${{github.event.inputs.tag || github.ref_name}}
85
- quarkus-platform-branch : ${{needs.prepare-platform-pr.outputs.quarkus-platform-branch }}
63
+ quarkus-platform-branches : ${{needs.prepare-platform-pr.outputs.quarkus-platform-branches }}
86
64
secrets :
87
65
qosdk-bot-token : ${{ secrets.QOSDK_BOT_TOKEN }}
88
-
89
- update-quarkus-platform-main-if-needed :
90
- needs :
91
- - prepare-platform-pr
92
- if : ${{ needs.prepare-platform-pr.outputs.needs-main-pr && needs.prepare-platform-pr.outputs.quarkus-platform-branch != 'main' }}
93
- uses : ./.github/workflows/release-quarkus-platform-pr.yml
94
- with :
95
- qosdk-version : ${{github.event.inputs.tag || github.ref_name}}
96
- secrets :
97
- qosdk-bot-token : ${{ secrets.QOSDK_BOT_TOKEN }}
0 commit comments