Skip to content

Commit 2b1b093

Browse files
committed
Fix script to prepare SDK releases, ensure to build SDK under release build directly in publish_release
1 parent 9d78307 commit 2b1b093

File tree

1 file changed

+30
-42
lines changed

1 file changed

+30
-42
lines changed

.github/workflows/ci.yaml

Lines changed: 30 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -767,48 +767,36 @@ jobs:
767767
run : echo "RELEASE_TAG=${GITHUB_REF#*refs/tags/}" >> $GITHUB_ENV
768768

769769
- name: Prepare the SDKs
770+
shell: bash
770771
run : |
771-
function prepareSDK() {
772+
prepareSDK() {
772773
distroSuffix="$1"
773-
artifactId="$2"
774+
sbtProject="$2"
775+
distDir="$3"
776+
777+
# Build binaries
778+
./project/scripts/sbt "${sbtProject}/Universal/stage"
779+
780+
outputPath="${distDir}/target/universal/stage"
774781
artifactName="scala3-${{ env.RELEASE_TAG }}${distroSuffix}"
782+
zipArchive="${artifactName}.zip"
783+
tarGzArchive="${artifactName}.tar.gz"
775784
776-
downloadedArchive="./artifact.zip"
777-
if [[ -f "${downloadedArchive}" ]]; then
778-
rm "${downloadedArchive}"
779-
fi
780-
781-
# Download previously prepared SDK bundle
782-
curl -L \
783-
-H "Authorization: token ${{secrets.GITHUB_TOKEN}}" \
784-
-H "Accept: application/vnd.github+json" \
785-
-o "${downloadedArchive}" \
786-
--retry 5 --retry-delay 10 --retry-connrefused \
787-
--max-time 600 --connect-timeout 60 \
788-
https://api.github.com/repos/scala/scala3/actions/artifacts/${artifactId}/zip
789-
790-
# Repackage content of .zip to .tar.gz and prepare digest
791-
tmpDir="./archive-tmp-dir"
792-
if [[ -d "${tmpDir}" ]]; then
793-
rm -r "${tmpDir}"
794-
fi
795-
mkdir "${tmpDir}"
796-
unzip "${downloadedArchive}" -d "${tmpDir}"
797-
798-
mv "${downloadedArchive}" "./${artifactName}.zip"
799-
tar -czf "${artifactName}.tar.gz" -C "${tmpDir}" .
785+
cwd=$(pwd)
786+
(cd $outputPath && zip -r ${zipArchive} . && mv ${zipArchive} "${cwd}/")
787+
tar -czf ${tarGzArchive} -C "$outputPath" .
800788
801789
# Caluclate SHA for each of archive files
802-
for file in "${artifactName}.zip" "${artifactName}.tar.gz"; do
790+
for file in "${zipArchive}" "${tarGzArchive}"; do
803791
sha256sum "${file}" > "${file}.sha256"
804792
done
805793
}
806-
prepareSDK "" ${{needs.build-sdk-package.outputs.universal-id}}
807-
prepareSDK "-aarch64-pc-linux" ${{needs.build-sdk-package.outputs.linux-aarch64-id}}
808-
prepareSDK "-x86_64-pc-linux" ${{needs.build-sdk-package.outputs.linux-x86_64-id}}
809-
prepareSDK "-aarch64-apple-darwin" ${{needs.build-sdk-package.outputs.mac-aarch64-id}}
810-
prepareSDK "-x86_64-apple-darwin" ${{needs.build-sdk-package.outputs.mac-x86_64-id}}
811-
prepareSDK "-x86_64-pc-win32" ${{needs.build-sdk-package.outputs.win-x86_64-id}}
794+
prepareSDK "" "dist" "./dist/"
795+
prepareSDK "-aarch64-pc-linux" "dist-linux-aarch64" "./dist/linux-aarch64/"
796+
prepareSDK "-x86_64-pc-linux" "dist-linux-x86_64" "./dist/linux-x86_64/"
797+
prepareSDK "-aarch64-apple-darwin" "dist-mac-aarch64" "./dist/mac-aarch64/"
798+
prepareSDK "-x86_64-apple-darwin" "dist-mac-x86_64" "./dist/mac-x86_64/"
799+
prepareSDK "-x86_64-pc-win32" "dist-win-x86_64" "./dist/win-x86_64/"
812800
813801
# Create the GitHub release
814802
- name: Create GitHub Release
@@ -850,7 +838,7 @@ jobs:
850838
# template("Linux x86-64", "-x86_64-pc-linux"),
851839
# template("Linux aarch64", "-aarch64-pc-linux"),
852840
# template("Mac x86-64", "-x86_64-apple-darwin"),
853-
# template("Mac aarch64", "-aarcb64-apple-darwin"),
841+
# template("Mac aarch64", "-aarch64-apple-darwin"),
854842
# template("Windows x86_64", "-x86_64-pc-win32")
855843
# ).foreach(println)
856844
# Universal
@@ -1016,35 +1004,35 @@ jobs:
10161004
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
10171005
with:
10181006
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
1019-
asset_path: ./scala3-${{ env.RELEASE_TAG }}-aarcb64-apple-darwin.zip
1020-
asset_name: scala3-${{ env.RELEASE_TAG }}-aarcb64-apple-darwin.zip
1007+
asset_path: ./scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip
1008+
asset_name: scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip
10211009
asset_content_type: application/zip
10221010
- name: Upload zip archive SHA to GitHub Release (Mac aarch64)
10231011
uses: actions/upload-release-asset@v1
10241012
env:
10251013
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
10261014
with:
10271015
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
1028-
asset_path: ./scala3-${{ env.RELEASE_TAG }}-aarcb64-apple-darwin.zip.sha256
1029-
asset_name: scala3-${{ env.RELEASE_TAG }}-aarcb64-apple-darwin.zip.sha256
1016+
asset_path: ./scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip.sha256
1017+
asset_name: scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip.sha256
10301018
asset_content_type: text/plain
10311019
- name: Upload tar.gz archive to GitHub Release (Mac aarch64)
10321020
uses: actions/upload-release-asset@v1
10331021
env:
10341022
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
10351023
with:
10361024
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
1037-
asset_path: ./scala3-${{ env.RELEASE_TAG }}-aarcb64-apple-darwin.tar.gz
1038-
asset_name: scala3-${{ env.RELEASE_TAG }}-aarcb64-apple-darwin.tar.gz
1025+
asset_path: ./scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz
1026+
asset_name: scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz
10391027
asset_content_type: application/gzip
10401028
- name: Upload tar.gz archive SHA to GitHub Release (Mac aarch64)
10411029
uses: actions/upload-release-asset@v1
10421030
env:
10431031
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
10441032
with:
10451033
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
1046-
asset_path: ./scala3-${{ env.RELEASE_TAG }}-aarcb64-apple-darwin.tar.gz.sha256
1047-
asset_name: scala3-${{ env.RELEASE_TAG }}-aarcb64-apple-darwin.tar.gz.sha256
1034+
asset_path: ./scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz.sha256
1035+
asset_name: scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz.sha256
10481036
asset_content_type: text/plain
10491037

10501038

0 commit comments

Comments
 (0)