1
0
Fork 0
mirror of https://github.com/alacritty/alacritty.git synced 2024-11-03 04:34:21 -05:00
alacritty/.github/workflows/release.yml
Christian Duerr 7398e9f8d1
Fix macOS release CI
Since the CI machine is amd64, it is not possible to just execute the
aarch64 binary to test the application. So instead of running `cargo
test`, we just use `cargo build` instead.

Building on the non-release CI instead of just checking also allows us
to make sure linking works properly before a release fails due to it.
2022-01-13 02:23:37 +00:00

88 lines
3.2 KiB
YAML

name: Release
on:
push:
tags: ["v[0-9]+.[0-9]+.[0-9]+*"]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CARGO_TERM_COLOR: always
jobs:
macos:
runs-on: macos-11
steps:
- uses: actions/checkout@v2
- name: Install ARM target
run: rustup update && rustup target add aarch64-apple-darwin
- name: Test
run: cargo test --release
- name: Build ARM
run: cargo build --release --target=aarch64-apple-darwin
- name: Make DMG
run: make dmg-universal
- name: Upload Application
run: |
mv ./target/release/osx/Alacritty.dmg ./Alacritty-${GITHUB_REF##*/}.dmg
./.github/workflows/upload_asset.sh ./Alacritty-${GITHUB_REF##*/}.dmg $GITHUB_TOKEN
windows:
runs-on: windows-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- name: Test
run: cargo test --release
- name: Build
run: cargo build --release
- name: Upload portable executable
run: |
cp ./target/release/alacritty.exe ./Alacritty-${GITHUB_REF##*/}-portable.exe
./.github/workflows/upload_asset.sh \
./Alacritty-${GITHUB_REF##*/}-portable.exe $GITHUB_TOKEN
- name: Install WiX
run: nuget install WiX
- name: Crate msi installer
run: |
./WiX.*/tools/candle.exe -nologo -arch "x64" -ext WixUIExtension -ext WixUtilExtension \
-out "./alacritty.wixobj" "extra/windows/wix/alacritty.wxs"
./WiX.*/tools/light.exe -nologo -ext WixUIExtension -ext WixUtilExtension \
-out "./Alacritty-${GITHUB_REF##*/}-installer.msi" -sice:ICE61 -sice:ICE91 \
"./alacritty.wixobj"
- name: Upload msi installer
run: |
./.github/workflows/upload_asset.sh \
./Alacritty-${GITHUB_REF##*/}-installer.msi $GITHUB_TOKEN
linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
sudo apt-get install cmake pkg-config libfreetype6-dev libfontconfig1-dev \
libxcb-xfixes0-dev libxkbcommon-dev python3
- name: Test
run: cargo test --release
- name: Gzip manpage
run: |
gzip -c "./extra/alacritty.man" > "./alacritty.1.gz"
gzip -c "./extra/alacritty-msg.man" > "./alacritty-msg.1.gz"
- name: Upload Assets
run: |
mv ./extra/logo/alacritty-term.svg ./Alacritty.svg
./.github/workflows/upload_asset.sh ./Alacritty.svg $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./alacritty.1.gz $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./alacritty-msg.1.gz $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/completions/alacritty.bash $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/completions/alacritty.fish $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/completions/_alacritty $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/linux/Alacritty.desktop $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/alacritty.info $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./alacritty.yml $GITHUB_TOKEN