@@ -22,6 +22,18 @@ name: Native Image
2222 type : boolean
2323 default : false
2424
25+ # # Input: Enable Signing
26+ signing :
27+ description : " Signing"
28+ type : boolean
29+ default : false
30+
31+ # # Input: Enable Provenance
32+ provenance :
33+ description : " Provenance"
34+ type : boolean
35+ default : false
36+
2537 # # Input: Static Linkage
2638 static :
2739 description : " Static"
@@ -92,6 +104,14 @@ name: Native Image
92104 description : " Release"
93105 type : boolean
94106 default : false
107+ signing :
108+ description : " Signing"
109+ type : boolean
110+ default : false
111+ provenance :
112+ description : " Provenance"
113+ type : boolean
114+ default : false
95115 static :
96116 description : " Static"
97117 type : boolean
@@ -202,7 +222,7 @@ jobs:
202222 fetch-depth : 1
203223 submodules : true
204224 persist-credentials : false
205- clean : false
225+ clean : true
206226 token : ${{ secrets.GITHUB_TOKEN }}
207227 - name : " Setup: Packages"
208228 if : contains(inputs.runner, 'ubuntu') || contains(inputs.runner, 'linux')
@@ -286,19 +306,21 @@ jobs:
286306 sed -i "s/elide = \"${current_version}\"/elide = \"${{ inputs.version }}\"/g" gradle/elide.versions.toml
287307 sed -i "s/elide-bin = \"${current_version}\"/elide-bin = \"${{ inputs.version }}\"/g" gradle/elide.versions.toml
288308 sed -i "s/${current_version}/${{ inputs.version }}/g" tools/elide-build/src/main/kotlin/elide/internal/conventions/Constants.kt
289- - name : " 🛠️ Release: Natives"
309+ - name : " 🛠️ Release: Third-Party Natives"
290310 env :
291311 CI : true
292312 BUILDLESS_APIKEY : ${{ secrets.BUILDLESS_APIKEY }}
293313 SONAR_TOKEN : ${{ secrets.SONAR_TOKEN }}
294314 TEST_EXCEPTIONS : true
295- run : make natives CI=yes -j2
315+ run : make -C third_party CI=yes -j2
316+ timeout-minutes : 5
296317 - name : " 🛠️ Release: Image"
297318 env :
298319 CI : true
299320 BUILDLESS_APIKEY : ${{ secrets.BUILDLESS_APIKEY }}
300321 SONAR_TOKEN : ${{ secrets.SONAR_TOKEN }}
301322 TEST_EXCEPTIONS : true
323+ timeout-minutes : 30
302324 run : |
303325 ./gradlew \
304326 :packages:cli:nativeOptimizedCompile \
@@ -321,6 +343,7 @@ jobs:
321343 -Pelide.release=${{ inputs.release }} \
322344 -Pelide.buildMode=${{ inputs.release == true && 'release' || 'dev' }}
323345 - name : " Setup: Signing Keys"
346+ if : inputs.release && inputs.pack && inputs.signing
324347 run : |
325348 cat <(echo -e "${{ secrets.SIGNING_KEY }}") | base64 -d | gpg --batch --import
326349 gpg --list-secret-keys --keyid-format LONG
@@ -334,7 +357,7 @@ jobs:
334357 path : packages/cli/build/native/nativeOptimizedCompile/**/*.*
335358 - name : " Artifact: Provenance Subject"
336359 id : hash
337- if : ${{ inputs.os == 'linux' && inputs.release }}
360+ if : inputs.release && inputs.pack && inputs.provenance
338361 run : |
339362 echo "hashes=$(sha256sum ./packages/cli/build/native/nativeOptimizedCompile/elide | base64 -w0)" >> "$GITHUB_OUTPUT"
340363 - name : " 🛠️ Release: Package"
0 commit comments