Publish and Release #99
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Publish and Release | |
on: | |
workflow_dispatch: | |
push: | |
paths: ".github/workflows/release.yml" | |
tags: "*" | |
jobs: | |
crates-publish: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@stable | |
- name: Upload to crates.io | |
run: cargo publish | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }} | |
gh-release: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download artifacts | |
uses: dawidd6/action-download-artifact@v3 | |
with: | |
workflow_conclusion: success | |
workflow: build.yml | |
path: ./out | |
- name: Create sha256sum for Scoop | |
run: sha256sum ./out/ferium-windows-msvc.zip | cut -d ' ' -f 1 > ./out/ferium-windows-msvc.zip.sha256 | |
# Remove the dots for the markdown header | |
- name: MD Header | |
run: echo "MD_HEADER=$(git describe --tags | sed 's/\.//g')" >> $GITHUB_ENV | |
- name: Create release | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: ./out/* | |
name: Ferium $(git describe --tags) | |
tag_name: $(git describe --tags) | |
body: | | |
Compiled binaries for Ferium version `$(git describe --tags)` ([changelog](${{ github.server_url }}/${{ github.repository }}/blob/main/CHANGELOG.md#${{ env.MD_HEADER }})) | |
The provided binaries are for: | |
- Linux ARM without a GUI file dialogue | |
- Linux ARM (aarch64 linux musl) | |
- Linux without a GUI file dialogue | |
- Linux (x64 linux musl) | |
- macOS Apple Silicon (aarch64 darwin) | |
- macOS Intel (x64 darwin) | |
- GNU Windows (x64 windows gnu) (i.e. Cygwin/MinGW) | |
- Windows (x64 windows msvc) | |
You can install ferium by downloading and unzipping the appropriate asset, and moving the executable to ~/bin or any other folder in your path. | |
aur-update: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download artifacts | |
uses: dawidd6/action-download-artifact@v3 | |
with: | |
workflow_conclusion: success | |
workflow: build.yml | |
path: ./out | |
- name: Update no-gui AUR package | |
uses: ATiltedTree/create-aur-release@v1 | |
with: | |
package_name: ferium-bin | |
package_version: $(git describe --tags) | |
commit_username: "Ilesh Thiada" | |
commit_email: [email protected] | |
ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }} | |
- name: Update gui AUR package | |
uses: ATiltedTree/create-aur-release@v1 | |
with: | |
package_name: ferium-gui-bin | |
package_version: $(git describe --tags) | |
commit_username: "Ilesh Thiada" | |
commit_email: [email protected] | |
ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }} | |
homebrew-update: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download artifacts | |
uses: dawidd6/action-download-artifact@v3 | |
with: | |
workflow_conclusion: success | |
workflow: build.yml | |
path: ./out | |
- name: Update Homebrew formula | |
uses: mislav/bump-homebrew-formula-action@v3 | |
with: | |
tag-name: $(git describe --tags) | |
env: | |
COMMITTER_TOKEN: ${{ secrets.COMMITTER_TOKEN }} |