chore: ci support linux

This commit is contained in:
GyDi 2022-03-19 10:50:44 +08:00
parent c15c38ea8f
commit b756ae39d0
No known key found for this signature in database
GPG Key ID: 1C95E0D3467B3084
2 changed files with 27 additions and 7 deletions

View File

@ -10,7 +10,7 @@ jobs:
release:
strategy:
matrix:
os: [windows-latest, macos-11]
os: [windows-latest, ubuntu-latest, macos-latest]
runs-on: ${{ matrix.os }}
if: |
startsWith(github.repository, 'zzzgydi') &&
@ -34,6 +34,12 @@ jobs:
with:
node-version: 14
- name: Install Dependencies (ubuntu only)
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf
- name: Get yarn cache dir path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
@ -68,6 +74,7 @@ jobs:
prerelease: true
- name: Green zip bundle
if: matrix.os == 'windows-latest'
run: |
yarn run green
env:
@ -75,7 +82,7 @@ jobs:
release-update:
needs: release
runs-on: macos-11
runs-on: macos-latest
if: |
startsWith(github.repository, 'zzzgydi') &&
startsWith(github.ref, 'refs/tags/v')
@ -97,7 +104,7 @@ jobs:
${{ runner.os }}-yarn-
- name: Yarn install
run: yarn
run: yarn install
- name: Release update.json
run: yarn run release

View File

@ -37,6 +37,7 @@ async function resolveRelease() {
pub_date: new Date().toISOString(),
platforms: {
win64: { signature: "", url: "" },
linux: { signature: "", url: "" },
darwin: { signature: "", url: "" },
},
};
@ -48,22 +49,34 @@ async function resolveRelease() {
if (/\.msi\.zip$/.test(name)) {
updateData.platforms.win64.url = browser_download_url;
}
// darwin url
if (/\.app\.tar\.gz$/.test(name)) {
updateData.platforms.darwin.url = browser_download_url;
}
// win64 signature
if (/\.msi\.zip\.sig$/.test(name)) {
updateData.platforms.win64.signature = await getSignature(
browser_download_url
);
}
// darwin url
if (/\.app\.tar\.gz$/.test(name)) {
updateData.platforms.darwin.url = browser_download_url;
}
// darwin signature
if (/\.app\.tar\.gz\.sig$/.test(name)) {
updateData.platforms.darwin.signature = await getSignature(
browser_download_url
);
}
// linux url
if (/\.AppImage\.tar\.gz$/.test(name)) {
updateData.platforms.linux.url = browser_download_url;
}
// linux signature
if (/\.AppImage\.tar\.gz\.sig$/.test(name)) {
updateData.platforms.linux.signature = await getSignature(
browser_download_url
);
}
});
await Promise.allSettled(promises);