44
44
description : ' Quarkus PR number to use to run a QOSDK build with'
45
45
type : string
46
46
required : false
47
+ fkc-pr :
48
+ description : ' Fabric8 client PR number to use to run a QOSDK build with'
49
+ type : string
50
+ required : false
51
+ fkc-version :
52
+ description : ' Fabric8 client version to run a QOSDK build with'
53
+ type : string
54
+ required : false
47
55
java-version :
48
56
description : ' Java version to build with'
49
57
type : string
@@ -129,6 +137,25 @@ jobs:
129
137
mvn -Dquickly
130
138
cd -
131
139
140
+ - name : Check-out Fabric8 client PR if requested
141
+ uses : actions/checkout@v4
142
+ if : " ${{ inputs.fkc-pr != '' }}"
143
+ with :
144
+ repository : fabric8io/kubernetes-client
145
+ path : fkc
146
+
147
+ - name : Build Fabric8 client PR if requested
148
+ if : " ${{ inputs.fkc-pr != '' }}"
149
+ id : build-fkc-pr
150
+ run : |
151
+ cd fkc
152
+ git fetch origin pull/${{ github.event.inputs.fkc-pr }}/head:pr-to-check
153
+ git switch pr-to-check
154
+ mvn versions:set -DnewVersion=999.${{ github.event.inputs.fkc-pr }}-SNAPSHOT versions:commit
155
+ echo "f8_pr_version=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_OUTPUT
156
+ mvn clean install -DskipTests
157
+ cd -
158
+
132
159
- name : Retrieve Quarkus version from platform
133
160
if : " ${{ inputs.quarkus-version == '' && inputs.quarkus-pr == ''}}"
134
161
id : get-quarkus-version
@@ -166,18 +193,37 @@ jobs:
166
193
echo "Using Quarkus ${{ steps.quarkus-version.outputs.quarkus_version }}"
167
194
mvn versions:set-property -P'${{steps.set-mvn-profiles.outputs.maven_profiles}}' -Dproperty=quarkus.version -DnewVersion=${{ steps.quarkus-version.outputs.quarkus_version }}
168
195
196
+ - name : Change Fabric8 client version
197
+ id : fkc-version
198
+ if : " ${{ inputs.fkc-pr != '' || inputs.fkc-version != '' }}"
199
+ run : |
200
+ if [[ -n "${{ inputs.fkc-version }}" ]]; then
201
+ fkc_version="${{ inputs.fkc-version }}"
202
+ fi
203
+ if [[ -n "${{ inputs.fkc-pr }}" ]]; then
204
+ fkc_version=${{ steps.build-fkc-pr.outputs.f8_pr_version }}
205
+ fi
206
+ echo "Using Fabric8 ${fkc_version}"
207
+ mvn versions:set-property -Dproperty=fabric8-client.version -DnewVersion=${fkc_version}
208
+ echo "fkc_version=${fkc_version}" >> $GITHUB_OUTPUT
209
+
169
210
- name : Output versions being used
170
211
run : |
171
212
echo "QOSDK version: $(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)"
172
213
echo "JOSDK version: $(mvn help:evaluate -Dexpression=java-operator-sdk.version -q -DforceStdout)"
173
214
echo "JOSDK Fabric8 version: ${{ steps.build-josdk-pr.outputs.josdk_f8_version }}"
215
+ echo "JOSDK overridden Fabric8 version ${{ steps.fkc-version.outputs.fkc_version }}"
174
216
echo "Quarkus version: $(mvn help:evaluate -Dexpression=quarkus.version -q -DforceStdout)"
175
217
echo "Quarkus Fabric8 version: ${{ steps.build-quarkus-pr.outputs.quarkus_f8_version }}"
176
218
echo "Effective Fabric8 version: $(mvn dependency:tree -Dincludes=io.fabric8:kubernetes-client-api -pl core/deployment | grep io.fabric8:kubernetes-client-api -m1 | cut -d ':' -f 4)"
177
219
178
220
- name : Build with Maven (JVM)
179
221
run : mvn -B formatter:validate install -P'${{steps.set-mvn-profiles.outputs.maven_profiles}}' --file pom.xml
180
222
223
+ - name : Dependency tree on failure
224
+ if : failure()
225
+ run : mvn -B dependency:tree -Dverbose
226
+
181
227
- name : Kubernetes KinD Cluster
182
228
uses : container-tools/kind-action@v2
183
229
with :
@@ -193,7 +239,7 @@ jobs:
193
239
- name : Install Operator Lifecycle Manager and Operator SDK into Kind
194
240
run : operator-sdk olm install --version v0.23.0
195
241
196
- # Joke sample currently doesn't validate with OLM v1 because it bundles required Joke CRD, which v1 thinks should be owned
242
+ # Joke sample currently doesn't validate with OLM v1 because it bundles required Joke CRD, which v1 thinks should be owned
197
243
- name : Validate OLM bundles (excluding Joke sample)
198
244
run : |
199
245
cd samples/
0 commit comments