1111 tags :
1212 - " *"
1313 workflow_dispatch :
14- inputs :
15- publish_ref :
16- description : Release/tag name to publish plugin bundles under
17- required : false
18-
1914permissions :
2015 contents : write
2116
@@ -125,18 +120,17 @@ jobs:
125120 puts "s3_ref=#{defaults.fetch("terrarium_cockpit_s3_ref")}"
126121 RUBY
127122
128- - name : Resolve publish ref
129- id : ref
123+ - name : Resolve plugin release refs
124+ id : release_refs
130125 env :
131- INPUT_PUBLISH_REF : ${{ github.event.inputs.publish_ref }}
126+ ZFS_REF : ${{ steps.refs.outputs.zfs_ref }}
127+ S3_REF : ${{ steps.refs.outputs.s3_ref }}
132128 run : |
133- if [ -n "${INPUT_PUBLISH_REF}" ]; then
134- echo "value=${INPUT_PUBLISH_REF}" >> "${GITHUB_OUTPUT}"
135- elif [ "${GITHUB_REF_TYPE}" = "tag" ]; then
136- echo "value=${GITHUB_REF_NAME}" >> "${GITHUB_OUTPUT}"
137- else
138- echo "value=cockpit-plugins-main" >> "${GITHUB_OUTPUT}"
139- fi
129+ sanitize() {
130+ printf '%s' "$1" | tr -cs 'A-Za-z0-9._-' '-'
131+ }
132+ echo "zfs_release=cockpit-plugin-zfs-$(sanitize "${ZFS_REF}")" >> "${GITHUB_OUTPUT}"
133+ echo "s3_release=cockpit-plugin-s3-$(sanitize "${S3_REF}")" >> "${GITHUB_OUTPUT}"
140134
141135 - name : Prepare release assets
142136 env :
@@ -148,20 +142,38 @@ jobs:
148142 }
149143 ZFS_REF_SAFE="$(sanitize "${ZFS_REF}")"
150144 S3_REF_SAFE="$(sanitize "${S3_REF}")"
151- mkdir -p release-assets
145+ mkdir -p release-assets/zfs release-assets/s3
152146 for BASENAME in \
153147 "cockpit-plugin-zfs-${ZFS_REF_SAFE}-linux-amd64.tar.gz" \
154- "cockpit-plugin-zfs-${ZFS_REF_SAFE}-linux-arm64.tar.gz" \
148+ "cockpit-plugin-zfs-${ZFS_REF_SAFE}-linux-arm64.tar.gz"
149+ do
150+ cp "artifacts/${BASENAME%.tar.gz}/${BASENAME}" "release-assets/zfs/${BASENAME}"
151+ done
152+ for BASENAME in \
155153 "cockpit-plugin-s3-${S3_REF_SAFE}-linux-amd64.tar.gz" \
156154 "cockpit-plugin-s3-${S3_REF_SAFE}-linux-arm64.tar.gz"
157155 do
158- cp "artifacts/${BASENAME%.tar.gz}/${BASENAME}" "release-assets/${BASENAME}"
156+ cp "artifacts/${BASENAME%.tar.gz}/${BASENAME}" "release-assets/s3/ ${BASENAME}"
159157 done
160158
161- - name : Publish plugin bundles
159+ - name : Publish cockpit-zfs bundles
160+ uses : softprops/action-gh-release@v2
161+ with :
162+ tag_name : ${{ steps.release_refs.outputs.zfs_release }}
163+ target_commitish : ${{ github.sha }}
164+ name : ${{ steps.release_refs.outputs.zfs_release }}
165+ files : |
166+ release-assets/zfs/*.tar.gz
167+ prerelease : false
168+ overwrite_files : true
169+
170+ - name : Publish cockpit-s3 bundles
162171 uses : softprops/action-gh-release@v2
163172 with :
164- tag_name : ${{ steps.ref.outputs.value }}
173+ tag_name : ${{ steps.release_refs.outputs.s3_release }}
174+ target_commitish : ${{ github.sha }}
175+ name : ${{ steps.release_refs.outputs.s3_release }}
165176 files : |
166- release-assets/*.tar.gz
167- prerelease : ${{ steps.ref.outputs.value == 'cockpit-plugins-main' || contains(steps.ref.outputs.value, '-') }}
177+ release-assets/s3/*.tar.gz
178+ prerelease : false
179+ overwrite_files : true
0 commit comments