Skip to content
This repository was archived by the owner on Feb 15, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -118,12 +118,13 @@ jobs:
# Generate release notes for draft
.github/scripts/generate-release-notes.sh "${VERSION}" "${VERSION}" draft

echo "📋 Creating draft release v${VERSION}"
echo "📋 Creating draft release v${VERSION} with .deb package"
gh release create "v${VERSION}" \
--draft \
--title "v${VERSION}" \
--notes-file release_notes.md
echo "✅ Draft release created successfully"
--notes-file release_notes.md \
*.deb
echo "✅ Draft release created successfully with .deb attached"
fi
env:
GH_TOKEN: ${{ github.token }}
Expand Down Expand Up @@ -153,6 +154,6 @@ jobs:
echo "Release tag: v${TAG_VERSION}"
echo "Release URL: https://github.com/${{ github.repository }}/releases/tag/v${TAG_VERSION}"
echo ""
echo "✅ Pre-release created"
echo "✅ Draft release created"
echo "✅ Pre-release created with .deb package"
echo "✅ Draft release created with .deb attached"
echo "✅ Dispatched to apt.hatlabs.fi unstable channel"
55 changes: 40 additions & 15 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,46 @@ env:
APT_COMPONENT: ${{ vars.APT_COMPONENT || 'hatlabs' }}

jobs:
trigger-packaging:
dispatch-to-apt:
runs-on: ubuntu-latest
# Only handle stable releases - pre-releases are handled by auto-prerelease.yml
# Only handle stable releases - pre-releases are handled by main.yml
if: ${{ github.event.release.prerelease == false }}
steps:
- name: Trigger APT repository
uses: peter-evans/repository-dispatch@v4
with:
token: ${{ secrets.REPO_DISPATCH_PAT }}
repository: hatlabs/apt.hatlabs.fi
event-type: package-updated
client-payload: |
{
"repository": "${{ github.repository }}",
"distro": "${{ env.APT_DISTRO }}",
"channel": "stable",
"component": "${{ env.APT_COMPONENT }}"
}
- name: Verify release has assets
run: |
STABLE_TAG="${{ github.event.release.tag_name }}"
ASSET_COUNT=$(gh release view "$STABLE_TAG" --repo ${{ github.repository }} --json assets --jq '.assets | length')

if [ "$ASSET_COUNT" -eq 0 ]; then
echo "❌ Error: Release has no assets attached"
echo "The .deb package should have been attached when the draft was created"
exit 1
fi

echo "✅ Release has $ASSET_COUNT asset(s)"
env:
GH_TOKEN: ${{ github.token }}

- name: Trigger APT repository
uses: peter-evans/repository-dispatch@v4
with:
token: ${{ secrets.REPO_DISPATCH_PAT }}
repository: hatlabs/apt.hatlabs.fi
event-type: package-updated
client-payload: |
{
"repository": "${{ github.repository }}",
"distro": "${{ env.APT_DISTRO }}",
"channel": "stable",
"component": "${{ env.APT_COMPONENT }}"
}

- name: Report success
run: |
STABLE_TAG="${{ github.event.release.tag_name }}"

echo "=== Stable Release Published ==="
echo "Stable tag: $STABLE_TAG"
echo "Release URL: https://github.com/${{ github.repository }}/releases/tag/$STABLE_TAG"
echo ""
echo "✅ Dispatched to apt.hatlabs.fi stable channel"