fix: avoid passgenerator pipe warning #6
Workflow file for this run
This file contains hidden or 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: 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 |