Skip to content

Release

Release #62

Workflow file for this run

name: Release
on:
workflow_dispatch:
release:
types: [created]
jobs:
deb:
name: Create deb packages
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
os:
- ubuntu:25.04
- ubuntu:24.10
- ubuntu:24.04
- ubuntu:22.04
- debian:bullseye
- debian:bookworm
- debian:trixie
container:
image: ${{ matrix.os }}
env:
TM_DATA_DIR: /usr/share/task-maker-rust
steps:
- uses: actions/checkout@v4
- name: Install Deps
run: |
apt update
apt install -yy libseccomp-dev libssl-dev build-essential fpc
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
id: install-rust
- name: Install cargo-deb
run: cargo install cargo-deb
- name: Calculate artifact suffix
shell: python3 {0}
run: |
import os
artifact_suffix="${{ matrix.os }}".replace(':', '-')
open(os.getenv("GITHUB_ENV"), "a").write(f"ARTIFACT_SUFFIX={artifact_suffix}\n")
- name: Release build
run: cargo build --release
- name: Generate autocompletion files
run: target/release/task-maker-tools gen-autocompletion
- name: Build deb file
run: cargo deb
- name: Package release tarball
run: |
ROOT=`pwd`
cd target/debian/
tar -zcvf ${ROOT}/tmr-debs-${{ env.ARTIFACT_SUFFIX }}.tar.gz *task-maker-rust*.*
- name: Upload release tarball
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: tmr-debs-${{ env.ARTIFACT_SUFFIX }}
path: tmr-debs-${{ env.ARTIFACT_SUFFIX }}.tar.gz
compression-level: 0
aur:
name: AUR
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build PKGBUILD
working-directory: tools/aur/task-maker-rust
run: ./gen.sh > ../../../PKGBUILD
- name: Publish PKGBUILD
if: ${{ github.event_name == 'release' }} # skip on manual runs.
uses: KSXGitHub/github-actions-deploy-aur@v4.1.1
with:
pkgname: task-maker-rust
pkgbuild: ./PKGBUILD
commit_username: ${{ secrets.AUR_USERNAME }}
commit_email: ${{ secrets.AUR_EMAIL }}
ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }}