rpkg Fedora packaging (#5735)

This commit is contained in:
Austin
2025-01-12 23:24:05 -05:00
committed by GitHub
parent 6b1c01ce02
commit e0f97c9306
6 changed files with 195 additions and 2 deletions

73
.github/workflows/hook_copr.yml vendored Normal file
View File

@@ -0,0 +1,73 @@
name: Trigger COPR build
on:
workflow_call:
secrets:
COPR_HOOK_DAILY:
COPR_HOOK_ALPHA:
COPR_HOOK_BETA:
inputs:
copr_project:
description: COPR project to target
required: true
type: string
permissions: read-all
jobs:
build-copr-hook:
runs-on: ubuntu-24.04
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
ref: ${{ github.ref }}
repository: ${{ github.repository }}
- name: Install Python dependencies
run: |
pip install requests
- name: Trigger COPR build
shell: python
run: |
import requests
project_name = "${{ inputs.copr_project }}"
if project_name == "daily":
hook_secret = "${{ secrets.COPR_HOOK_DAILY }}"
project_id = 160277
elif project_name == "alpha":
hook_secret = "${{ secrets.COPR_HOOK_ALPHA }}"
project_id = 160278
elif project_name == "beta":
hook_secret = "${{ secrets.COPR_HOOK_BETA }}"
project_id = 160279
else:
raise ValueError(f"Unknown COPR project: {project_name}")
webhook_url = f"https://copr.fedorainfracloud.org/webhooks/github/{project_id}/{hook_secret}/meshtasticd/"
copr_payload = {
"event": "push",
"payload": {
"ref": "${{ github.ref }}",
"after": "${{ github.sha }}",
"repository": {
"id": "${{ github.repository_id }}",
"full_name": "${{ github.repository }}",
"git_url": "${{ github.repositoryUrl }}",
"owner": {
"name": "${{ github.repository_owner }}"
}
},
"pusher": {
"name": "${{ github.actor }}"
},
"sender": {
"login": "github-actions[bot]"
}
}
}
r = requests.post(webhook_url, json=copr_payload)
r.raise_for_status()

View File

@@ -1,4 +1,4 @@
name: Nightly Debian Packaging
name: Nightly Packaging
on:
schedule:
- cron: 0 9 * * *
@@ -8,10 +8,12 @@ on:
- master
paths:
- debian/**
- .github/workflows/nightly_debian.yml
- "*.rpkg"
- .github/workflows/nightly_packaging.yml
- .github/workflows/build_debian_src.yml
- .github/workflows/package_ppa.yml
- .github/workflows/package_obs.yml
- .github/workflows/hook_copr.yml
permissions:
contents: write
@@ -35,3 +37,9 @@ jobs:
obs_project: home:meshtastic:daily
series: unstable
secrets: inherit
hook-copr:
uses: ./.github/workflows/hook_copr.yml
with:
copr_project: daily
secrets: inherit

View File

@@ -27,3 +27,10 @@ jobs:
series: |-
${{ contains(github.event.release.name, 'Beta') && 'beta' || contains(github.event.release.name, 'Alpha') && 'alpha' }}
secrets: inherit
# hook-copr:
# uses: ./.github/workflows/hook_copr.yml
# with:
# copr_project: |-
# ${{ contains(github.event.release.name, 'Beta') && 'beta' || contains(github.event.release.name, 'Alpha') && 'alpha' }}
# secrets: inherit