@@ -728,7 +728,7 @@ jobs:
728
728
729
729
publish_release :
730
730
permissions :
731
- contents : write # for actions/create-release to create a release
731
+ contents : write # for GH CLI to create a release
732
732
runs-on : [self-hosted, Linux]
733
733
container :
734
734
image : lampepfl/dotty:2024-10-18
@@ -770,6 +770,7 @@ jobs:
770
770
771
771
- name : Add SBT proxy repositories
772
772
run : cp -vf .github/workflows/repositories /root/.sbt/ ; true
773
+
773
774
# Extract the release tag
774
775
- name : Extract the release tag
775
776
run : echo "RELEASE_TAG=${GITHUB_REF#*refs/tags/}" >> $GITHUB_ENV
@@ -828,311 +829,29 @@ jobs:
828
829
mv scala.msi "${msiInstaller}"
829
830
sha256sum "${msiInstaller}" > "${msiInstaller}.sha256"
830
831
832
+ - name : Install GH CLI
833
+ uses : dev-hanz-ops/install-gh-cli-action@v0.2.0
834
+ with :
835
+ gh-cli-version : 2.59.0
836
+
831
837
# Create the GitHub release
832
838
- name : Create GitHub Release
833
- id : create_gh_release
834
- uses : actions/create-release@latest
835
839
env :
836
840
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
837
- with :
838
- tag_name : ${{ github.ref }}
839
- release_name : ${{ github.ref }}
840
- body_path : ./changelogs/${{ env.RELEASE_TAG }}.md
841
- draft : true
842
- prerelease : ${{ contains(env.RELEASE_TAG, '-') }}
843
-
844
- # The following upload steps are generated using template:
845
- # val baseFileName = "scala3-${{ env.RELEASE_TAG }}"
846
- # def upload(kind: String, path: String, contentType: String, distribution: String) =
847
- # s"""- name: Upload $kind to GitHub Release ($distribution)
848
- # uses: actions/upload-release-asset@v1
849
- # env:
850
- # GITHUB_TOKEN: $${{ secrets.GITHUB_TOKEN }}
851
- # with:
852
- # upload_url: $${{ steps.create_gh_release.outputs.upload_url }}
853
- # asset_path: ./${path}
854
- # asset_name: ${path}
855
- # asset_content_type: ${contentType}"""
856
- # def uploadSDK(distribution: String, suffix: String) =
857
- # val filename = s"${baseFileName}${suffix}"
858
- # s"""
859
- # # $distribution
860
- # ${upload("zip archive", s"$filename.zip", "application/zip", distribution)}
861
- # ${upload("zip archive SHA", s"$filename.zip.sha256", "text/plain", distribution)}
862
- # ${upload("tar.gz archive", s"$filename.tar.gz", "application/gzip", distribution)}
863
- # ${upload("tar.gz archive SHA", s"$filename.tar.gz.sha256", "text/plain", distribution)}
864
- # """
865
- # def uploadMSI() =
866
- # val distribution = "Windows x86_64 MSI"
867
- # s"""
868
- # # $distribution
869
- # ${upload(".msi file", s"${baseFileName}.msi", "application/x-msi", distribution)}
870
- # ${upload(".msi file SHA", s"${baseFileName}.msi.sha256", "text/plain", distribution)}
871
- # """
872
- # @main def gen =
873
- # Seq(
874
- # uploadSDK("Universal", ""),
875
- # uploadSDK("Linux x86-64", "-x86_64-pc-linux"),
876
- # uploadSDK("Linux aarch64", "-aarch64-pc-linux"),
877
- # uploadSDK("Mac x86-64", "-x86_64-apple-darwin"),
878
- # uploadSDK("Mac aarch64", "-aarch64-apple-darwin"),
879
- # uploadSDK("Windows x86_64", "-x86_64-pc-win32"),
880
- # uploadMSI()
881
- # ).foreach(println)
882
-
883
- # Universal
884
- - name : Upload zip archive to GitHub Release (Universal)
885
- uses : actions/upload-release-asset@v1
886
- env :
887
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
888
- with :
889
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
890
- asset_path : ./scala3-${{ env.RELEASE_TAG }}.zip
891
- asset_name : scala3-${{ env.RELEASE_TAG }}.zip
892
- asset_content_type : application/zip
893
- - name : Upload zip archive SHA to GitHub Release (Universal)
894
- uses : actions/upload-release-asset@v1
895
- env :
896
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
897
- with :
898
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
899
- asset_path : ./scala3-${{ env.RELEASE_TAG }}.zip.sha256
900
- asset_name : scala3-${{ env.RELEASE_TAG }}.zip.sha256
901
- asset_content_type : text/plain
902
- - name : Upload tar.gz archive to GitHub Release (Universal)
903
- uses : actions/upload-release-asset@v1
904
- env :
905
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
906
- with :
907
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
908
- asset_path : ./scala3-${{ env.RELEASE_TAG }}.tar.gz
909
- asset_name : scala3-${{ env.RELEASE_TAG }}.tar.gz
910
- asset_content_type : application/gzip
911
- - name : Upload tar.gz archive SHA to GitHub Release (Universal)
912
- uses : actions/upload-release-asset@v1
913
- env :
914
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
915
- with :
916
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
917
- asset_path : ./scala3-${{ env.RELEASE_TAG }}.tar.gz.sha256
918
- asset_name : scala3-${{ env.RELEASE_TAG }}.tar.gz.sha256
919
- asset_content_type : text/plain
920
-
921
-
922
- # Linux x86-64
923
- - name : Upload zip archive to GitHub Release (Linux x86-64)
924
- uses : actions/upload-release-asset@v1
925
- env :
926
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
927
- with :
928
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
929
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.zip
930
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.zip
931
- asset_content_type : application/zip
932
- - name : Upload zip archive SHA to GitHub Release (Linux x86-64)
933
- uses : actions/upload-release-asset@v1
934
- env :
935
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
936
- with :
937
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
938
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.zip.sha256
939
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.zip.sha256
940
- asset_content_type : text/plain
941
- - name : Upload tar.gz archive to GitHub Release (Linux x86-64)
942
- uses : actions/upload-release-asset@v1
943
- env :
944
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
945
- with :
946
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
947
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.tar.gz
948
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.tar.gz
949
- asset_content_type : application/gzip
950
- - name : Upload tar.gz archive SHA to GitHub Release (Linux x86-64)
951
- uses : actions/upload-release-asset@v1
952
- env :
953
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
954
- with :
955
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
956
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.tar.gz.sha256
957
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.tar.gz.sha256
958
- asset_content_type : text/plain
959
-
960
-
961
- # Linux aarch64
962
- - name : Upload zip archive to GitHub Release (Linux aarch64)
963
- uses : actions/upload-release-asset@v1
964
- env :
965
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
966
- with :
967
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
968
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.zip
969
- asset_name : scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.zip
970
- asset_content_type : application/zip
971
- - name : Upload zip archive SHA to GitHub Release (Linux aarch64)
972
- uses : actions/upload-release-asset@v1
973
- env :
974
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
975
- with :
976
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
977
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.zip.sha256
978
- asset_name : scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.zip.sha256
979
- asset_content_type : text/plain
980
- - name : Upload tar.gz archive to GitHub Release (Linux aarch64)
981
- uses : actions/upload-release-asset@v1
982
- env :
983
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
984
- with :
985
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
986
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.tar.gz
987
- asset_name : scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.tar.gz
988
- asset_content_type : application/gzip
989
- - name : Upload tar.gz archive SHA to GitHub Release (Linux aarch64)
990
- uses : actions/upload-release-asset@v1
991
- env :
992
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
993
- with :
994
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
995
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.tar.gz.sha256
996
- asset_name : scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.tar.gz.sha256
997
- asset_content_type : text/plain
998
-
999
-
1000
- # Mac x86-64
1001
- - name : Upload zip archive to GitHub Release (Mac x86-64)
1002
- uses : actions/upload-release-asset@v1
1003
- env :
1004
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1005
- with :
1006
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1007
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.zip
1008
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.zip
1009
- asset_content_type : application/zip
1010
- - name : Upload zip archive SHA to GitHub Release (Mac x86-64)
1011
- uses : actions/upload-release-asset@v1
1012
- env :
1013
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1014
- with :
1015
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1016
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.zip.sha256
1017
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.zip.sha256
1018
- asset_content_type : text/plain
1019
- - name : Upload tar.gz archive to GitHub Release (Mac x86-64)
1020
- uses : actions/upload-release-asset@v1
1021
- env :
1022
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1023
- with :
1024
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1025
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.tar.gz
1026
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.tar.gz
1027
- asset_content_type : application/gzip
1028
- - name : Upload tar.gz archive SHA to GitHub Release (Mac x86-64)
1029
- uses : actions/upload-release-asset@v1
1030
- env :
1031
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1032
- with :
1033
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1034
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.tar.gz.sha256
1035
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.tar.gz.sha256
1036
- asset_content_type : text/plain
1037
-
1038
-
1039
- # Mac aarch64
1040
- - name : Upload zip archive to GitHub Release (Mac aarch64)
1041
- uses : actions/upload-release-asset@v1
1042
- env :
1043
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1044
- with :
1045
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1046
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip
1047
- asset_name : scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip
1048
- asset_content_type : application/zip
1049
- - name : Upload zip archive SHA to GitHub Release (Mac aarch64)
1050
- uses : actions/upload-release-asset@v1
1051
- env :
1052
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1053
- with :
1054
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1055
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip.sha256
1056
- asset_name : scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip.sha256
1057
- asset_content_type : text/plain
1058
- - name : Upload tar.gz archive to GitHub Release (Mac aarch64)
1059
- uses : actions/upload-release-asset@v1
1060
- env :
1061
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1062
- with :
1063
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1064
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz
1065
- asset_name : scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz
1066
- asset_content_type : application/gzip
1067
- - name : Upload tar.gz archive SHA to GitHub Release (Mac aarch64)
1068
- uses : actions/upload-release-asset@v1
1069
- env :
1070
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1071
- with :
1072
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1073
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz.sha256
1074
- asset_name : scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz.sha256
1075
- asset_content_type : text/plain
1076
-
1077
-
1078
- # Windows x86_64
1079
- - name : Upload zip archive to GitHub Release (Windows x86_64)
1080
- uses : actions/upload-release-asset@v1
1081
- env :
1082
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1083
- with :
1084
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1085
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.zip
1086
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.zip
1087
- asset_content_type : application/zip
1088
- - name : Upload zip archive SHA to GitHub Release (Windows x86_64)
1089
- uses : actions/upload-release-asset@v1
1090
- env :
1091
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1092
- with :
1093
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1094
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.zip.sha256
1095
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.zip.sha256
1096
- asset_content_type : text/plain
1097
- - name : Upload tar.gz archive to GitHub Release (Windows x86_64)
1098
- uses : actions/upload-release-asset@v1
1099
- env :
1100
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1101
- with :
1102
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1103
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.tar.gz
1104
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.tar.gz
1105
- asset_content_type : application/gzip
1106
- - name : Upload tar.gz archive SHA to GitHub Release (Windows x86_64)
1107
- uses : actions/upload-release-asset@v1
1108
- env :
1109
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1110
- with :
1111
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1112
- asset_path : ./scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.tar.gz.sha256
1113
- asset_name : scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.tar.gz.sha256
1114
- asset_content_type : text/plain
1115
-
1116
-
1117
- # Windows x86_64 MSI
1118
- - name : Upload .msi file to GitHub Release (Windows x86_64 MSI)
1119
- uses : actions/upload-release-asset@v1
1120
- env :
1121
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1122
- with :
1123
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1124
- asset_path : ./scala3-${{ env.RELEASE_TAG }}.msi
1125
- asset_name : scala3-${{ env.RELEASE_TAG }}.msi
1126
- asset_content_type : application/x-msi
1127
- - name : Upload .msi file SHA to GitHub Release (Windows x86_64 MSI)
1128
- uses : actions/upload-release-asset@v1
1129
- env :
1130
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
1131
- with :
1132
- upload_url : ${{ steps.create_gh_release.outputs.upload_url }}
1133
- asset_path : ./scala3-${{ env.RELEASE_TAG }}.msi.sha256
1134
- asset_name : scala3-${{ env.RELEASE_TAG }}.msi.sha256
1135
- asset_content_type : text/plain
841
+ shell : bash
842
+ run : |
843
+ git config --global --add safe.directory /__w/scala3/scala3
844
+ gh release create \
845
+ --draft \
846
+ --title "${{ env.RELEASE_TAG }}" \
847
+ --notes-file ./changelogs/${{ env.RELEASE_TAG }}.md \
848
+ --latest=${{ !contains(env.RELEASE_TAG, '-RC') }} \
849
+ --prerelease=${{ contains(env.RELEASE_TAG, '-RC') }} \
850
+ --verify-tag ${{ env.RELEASE_TAG }} \
851
+ scala3-${{ env.RELEASE_TAG }}*.zip \
852
+ scala3-${{ env.RELEASE_TAG }}*.tar.gz \
853
+ scala3-${{ env.RELEASE_TAG }}*.sha256 \
854
+ scala3-${{ env.RELEASE_TAG }}.msi
1136
855
1137
856
- name : Publish Release
1138
857
run : ./project/scripts/sbtPublish ";project scala3-bootstrapped ;publishSigned ;sonatypeBundleUpload"
0 commit comments