| 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 |