Skip to content

fix: avoid passgenerator pipe warning #6

fix: avoid passgenerator pipe warning

fix: avoid passgenerator pipe warning #6

Workflow file for this run

name: Release packages
on:
push:
tags:
- "v*"
permissions:
contents: write
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Validate release tag
run: |
version="${GITHUB_REF_NAME#v}"
project_version="$(python -c 'import tomllib; print(tomllib.load(open("pyproject.toml", "rb"))["project"]["version"])')"
snap_version="$(awk -F'"' '/^version:/ { print $2 }' packaging/snap/snapcraft.yaml)"
test "$version" = "$project_version"
test "$version" = "$snap_version"
git fetch origin master
git merge-base --is-ancestor "$GITHUB_SHA" origin/master
- name: Test
run: |
python -m pip install --upgrade pip
pip install -e ".[dev]"
pytest tests/ -q
flake8 tests/ --max-line-length=120 --exclude=__pycache__
- name: Refresh Snap package index
run: sudo apt-get update
- name: Build Snap
id: snapcraft
uses: snapcore/action-build@v1
with:
path: packaging/snap
snapcraft-args: --destructive-mode
- name: Build Flatpak
run: |
sudo apt-get update
sudo apt-get install --yes flatpak flatpak-builder
flatpak remote-add --user --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install --user --noninteractive flathub org.freedesktop.Sdk//24.08
flatpak-builder --user --force-clean --install-deps-from=flathub --repo=flatpak-repo flatpak-build packaging/flatpak/io.github.allanbatista.ab.yml
mkdir -p release
flatpak build-bundle --arch=x86_64 flatpak-repo "release/io.github.allanbatista.ab_${GITHUB_REF_NAME}_x86_64.flatpak" io.github.allanbatista.ab
- name: Prepare Snap asset
run: |
mkdir -p release
cp "${{ steps.snapcraft.outputs.snap }}" "release/ab_${GITHUB_REF_NAME}_amd64.snap"
- name: Create GitHub release
env:
GH_TOKEN: ${{ github.token }}
run: |
if gh release view "$GITHUB_REF_NAME" >/dev/null 2>&1; then
echo "Release $GITHUB_REF_NAME already exists; release tags are immutable." >&2
exit 1
fi
gh release create "$GITHUB_REF_NAME" release/* --generate-notes