@@ -6,29 +6,6 @@ name: "(A) |α| Publish Alpha"
66
77on :
88 workflow_dispatch :
9- inputs :
10- platform :
11- type : choice
12- required : true
13- default : Windows-x64
14- options :
15- - Windows-x64
16- - Linux-x64
17- - macOS-x64
18- artifact_workflow_run_id :
19- type : string
20- required : false
21- default : " "
22- workflow_call :
23- inputs :
24- platform :
25- type : string
26- required : true
27- default : Windows-x64
28- artifact_workflow_run_id :
29- type : string
30- required : false
31- default : " "
329
3310permissions :
3411 contents : write
@@ -44,37 +21,80 @@ jobs:
4421 with :
4522 node-version : 22
4623
47- - name : Possibly retrieve run ID if not provided
24+ - name : Retrieve run ID for Windows
4825 run : |
49- if [ -z "${{ inputs.artifact_workflow_run_id }}" ]; then
50- LATEST_ID=$(curl -s \
51- -H "Accept: application/vnd.github+json" \
52- -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
53- "https://api.github.com/repos/Floorp-Projects/Floorp-12/actions/workflows/package.yml/runs?branch=main&status=success" \
54- | jq -r --arg platform "${{ inputs.platform }}" '
55- [.workflow_runs[] | select(.display_title | endswith($platform))][0].id
56- ')
57- echo "ARTIFACT_WORKFLOW_RUN_ID=$LATEST_ID" >> $GITHUB_ENV
58- else
59- echo "ARTIFACT_WORKFLOW_RUN_ID=${{ inputs.artifact_workflow_run_id }}" >> $GITHUB_ENV
60- fi
61-
62- - name : Set artifact name by platform
26+ WINDOWS_ID=$(curl -s \
27+ -H "Accept: application/vnd.github+json" \
28+ -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
29+ "https://api.github.com/repos/Floorp-Projects/Floorp-12/actions/workflows/package.yml/runs?branch=main&status=success" \
30+ | jq -r '[.workflow_runs[] | select(.display_title | endswith("Windows-x64"))][0].id')
31+ echo "WINDOWS_RUN_ID=$WINDOWS_ID" >> $GITHUB_ENV
32+
33+ - name : Retrieve run ID for Linux
34+ run : |
35+ LINUX_ID=$(curl -s \
36+ -H "Accept: application/vnd.github+json" \
37+ -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
38+ "https://api.github.com/repos/Floorp-Projects/Floorp-12/actions/workflows/package.yml/runs?branch=main&status=success" \
39+ | jq -r '[.workflow_runs[] | select(.display_title | endswith("Linux-x64"))][0].id')
40+ echo "LINUX_RUN_ID=$LINUX_ID" >> $GITHUB_ENV
41+
42+ - name : Retrieve run ID for macOS
6343 run : |
64- case "${{ inputs.platform }}" in
65- "Windows-x64") ARTIFACT_NAME="noraneko-win-amd64-mar-full" ;;
66- "Linux-x64") ARTIFACT_NAME="noraneko-linux-amd64-mar-full" ;;
67- "macOS-x64") ARTIFACT_NAME="noraneko-mac-amd64-mar-full" ;;
68- esac
69- echo "ARTIFACT_NAME=$ARTIFACT_NAME " >> $GITHUB_ENV
70-
71- - name : Download artifact
44+ MAC_ID=$(curl -s \
45+ -H "Accept: application/vnd.github+json" \
46+ -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
47+ "https://api.github.com/repos/Floorp-Projects/Floorp-12/actions/workflows/package.yml/runs?branch=main&status=success" \
48+ | jq -r '[.workflow_runs[] | select(.display_title | endswith("macOS-x64"))][0].id')
49+ echo "MAC_RUN_ID=$MAC_ID " >> $GITHUB_ENV
50+
51+ - name : Download Windows artifact
7252 uses : actions/download-artifact@v4
7353 with :
74- name : ${{ env.ARTIFACT_NAME }}
75- run-id : ${{ env.ARTIFACT_WORKFLOW_RUN_ID }}
54+ name : noraneko-win-amd64-mar-full
55+ run-id : ${{ env.WINDOWS_RUN_ID }}
56+ path : ~/noraneko-publish/win
57+ github-token : ${{ github.token }}
58+
59+ - name : Download Linux artifact
60+ uses : actions/download-artifact@v4
61+ with :
62+ name : noraneko-linux-amd64-mar-full
63+ run-id : ${{ env.LINUX_RUN_ID }}
64+ path : ~/noraneko-publish/linux
65+ github-token : ${{ github.token }}
66+
67+ - name : Download macOS artifact
68+ uses : actions/download-artifact@v4
69+ with :
70+ name : noraneko-mac-universal-mar-full
71+ run-id : ${{ env.MAC_RUN_ID }}
72+ path : ~/noraneko-publish/mac
73+ github-token : ${{ github.token }}
74+
75+ - name : Download Windows installer
76+ uses : actions/download-artifact@v4
77+ with :
78+ name : noraneko-win-amd64-installer
79+ run-id : ${{ env.WINDOWS_RUN_ID }}
80+ path : ~/noraneko-publish/win-dist
81+ github-token : ${{ github.token }}
82+
83+ - name : Download Linux installer
84+ uses : actions/download-artifact@v4
85+ with :
86+ name : noraneko-linux-amd64-installer
87+ run-id : ${{ env.LINUX_RUN_ID }}
88+ path : ~/noraneko-publish/linux-dist
89+ github-token : ${{ github.token }}
90+
91+ - name : Download macOS installer
92+ uses : actions/download-artifact@v4
93+ with :
94+ name : noraneko-mac-universal-installer
95+ run-id : ${{ env.MAC_RUN_ID }}
96+ path : ~/noraneko-publish/mac-dist
7697 github-token : ${{ github.token }}
77- path : ~/noraneko-publish
7898
7999 - name : Setup
80100 run : |
@@ -92,13 +112,15 @@ jobs:
92112 uses : softprops/action-gh-release@v2
93113 with :
94114 files : |
95- ${{env.ROOT_DIR}}/noraneko-publish/WINNT_x86_64-msvc-x64.update.xml
96- ${{env.ROOT_DIR}}/noraneko-publish/*.mar
97-
115+ ${{ env.ROOT_DIR }}/noraneko-publish/win/*.mar
116+ ${{ env.ROOT_DIR }}/noraneko-publish/win-dist/**
117+ ${{ env.ROOT_DIR }}/noraneko-publish/linux/*.mar
118+ ${{ env.ROOT_DIR }}/noraneko-publish/linux-dist/**
119+ ${{ env.ROOT_DIR }}/noraneko-publish/mac/*.mar
120+ ${{ env.ROOT_DIR }}/noraneko-publish/mac-dist/**
98121 tag_name : " alpha"
99122 name : " Alpha Release"
100- body : |
101- "Noraneko Alpha: v${{ env.NR_VERSION }} (Firefox v${{ env.VERSION }})"
123+ body : " Noraneko Alpha for Windows, Linux, and macOS"
102124 draft : false
103125 prerelease : true
104126 token : ${{ github.token }}
0 commit comments