ci: switch to forgejo debian registry
Some checks failed
python3-pylogbeat / build-deb (push) Failing after 7s
python3-logstash-async / build-deb (push) Failing after 7s
spdlog / build-deb (map[runs-on-image:node-24-arm64]) (push) Successful in 2m32s

Signed-off-by: Christoph Heiss <christoph.heiss@robo4you.at>
This commit is contained in:
Christoph Heiss 2025-05-30 18:23:00 +02:00
parent e4caf2969f
commit ce7642c7c2
Signed by: christoph.heiss
GPG key ID: A3D16D4FE64F332A
7 changed files with 291 additions and 297 deletions

View file

@ -0,0 +1,97 @@
---
name: python3-pylogbeat
on:
push:
# branches:
# - master
paths:
- .forgejo/workflows/pylogbeat.yaml
pull_request:
paths:
- .forgejo/workflows/pylogbeat.yaml
env:
REPO: https://github.com/eht16/pylogbeat
PKGNAME: python3-pylogbeat
UPSTREAM_VER: '2.0.1'
EXTRA_VER: compair2
jobs:
build-deb:
runs-on: node-24
steps:
- name: Checkout pylogbeat
env:
TAG: '${{ env.UPSTREAM_VER }}'
run: |
git config --global --add safe.directory $PWD
git init
git remote add origin "$REPO"
git config --local gc.auto 0
git fetch --depth=1 --no-tags --prune origin refs/tags/$TAG:v$TAG
git checkout v$TAG
- name: Install prerequisites
run: |
apt update
apt install -y ruby python3-setuptools
gem install fpm
- name: Build package
env:
PYTHONDONTWRITEBYTECODE: '1'
run: |
fpm -s python \
--verbose \
--python-bin python3 \
--python-pip pip3 \
--python-package-name-prefix python3 \
--name $PKGNAME \
--maintainer 'compAIR development team <kontakt@comp-air.at>' \
--vendor compAIR \
--iteration $EXTRA_VER \
--deb-priority optional \
--architecture ${{ matrix.platform.fpm }} \
--output-type deb \
setup.py
- name: Print packages contents
run: |
for f in *.deb; do
echo "$f:"
dpkg-deb -c "$f"
echo
done
- name: Print packages control info
run: |
for f in *.deb; do
echo "$f:"
dpkg-deb -e "$f"
cat DEBIAN/control
echo
done
# https://forgejo.org/docs/latest/user/packages/debian/#publish-a-package
- name: push deb to apt repository
if: github.ref == 'refs/heads/master'
env:
REPO: ${{ github.repository }}
TAG: ${{ steps.tag.outputs.tag }}
run: |
url="$GITHUB_SERVER_URL/api/packages/${{ github.repository_owner }}/debian/pool/bookworm/compair/upload"
echo "api url: $url"
debver="${UPSTREAM_VER}-${EXTRA_VER}"
debfile="_packages/${PKGNAME}_${debver}_all.deb"
echo "uploading file: $debfile"
curl --fail-with-body \
-X PUT \
--user "oauth2:${{ secrets.PACKAGE_REGISTRY_TOKEN }}" \
--upload-file "$debfile" \
"$url"
echo "final url: $GITHUB_SERVER_URL/${{ github.repository_owner }}/-/packages/debian/${PKGNAME}/${debver}"

View file

@ -0,0 +1,97 @@
---
name: python3-logstash-async
on:
push:
# branches:
# - master
paths:
- .forgejo/workflows/python-logstash-async.yaml
pull_request:
paths:
- .forgejo/workflows/python-logstash-async.yaml
env:
REPO: https://github.com/eht16/python-logstash-async
PKGNAME: python3-logstash-async
UPSTREAM_VER: '3.0.0'
EXTRA_VER: compair2
jobs:
build-deb:
runs-on: node-24
steps:
- name: Checkout python-logstash-async
env:
TAG: '${{ env.UPSTREAM_VER }}'
run: |
git config --global --add safe.directory $PWD
git init
git remote add origin "$REPO"
git config --local gc.auto 0
git fetch --depth=1 --no-tags --prune origin refs/tags/$TAG:v$TAG
git checkout v$TAG
- name: Install prerequisites
run: |
apt update
apt install -y ruby python3-setuptools
gem install fpm
- name: Build package
env:
PYTHONDONTWRITEBYTECODE: '1'
run: |
fpm -s python \
--verbose \
--python-bin python3 \
--python-pip pip3 \
--python-package-name-prefix python3 \
--name $PKGNAME \
--maintainer 'compAIR development team <kontakt@comp-air.at>' \
--vendor compAIR \
--iteration $EXTRA_VER \
--deb-priority optional \
--architecture ${{ matrix.platform.fpm }} \
--output-type deb \
setup.py
- name: Print packages contents
run: |
for f in *.deb; do
echo "$f:"
dpkg-deb -c "$f"
echo
done
- name: Print packages control info
run: |
for f in *.deb; do
echo "$f:"
dpkg-deb -e "$f"
cat DEBIAN/control
echo
done
# https://forgejo.org/docs/latest/user/packages/debian/#publish-a-package
- name: push deb to apt repository
if: github.ref == 'refs/heads/master'
env:
REPO: ${{ github.repository }}
TAG: ${{ steps.tag.outputs.tag }}
run: |
url="$GITHUB_SERVER_URL/api/packages/${{ github.repository_owner }}/debian/pool/bookworm/compair/upload"
echo "api url: $url"
debver="${UPSTREAM_VER}-${EXTRA_VER}"
debfile="_packages/${PKGNAME}_${debver}_all.deb"
echo "uploading file: $debfile"
curl --fail-with-body \
-X PUT \
--user "oauth2:${{ secrets.PACKAGE_REGISTRY_TOKEN }}" \
--upload-file "$debfile" \
"$url"
echo "final url: $GITHUB_SERVER_URL/${{ github.repository_owner }}/-/packages/debian/${PKGNAME}/${debver}"

View file

@ -0,0 +1,96 @@
---
name: spdlog
on:
push:
# branches:
# - master
paths:
- .forgejo/workflows/spdlog.yaml
pull_request:
paths:
- .forgejo/workflows/spdlog.yaml
env:
REPO: https://github.com/gabime/spdlog
PKGNAME: spdlog
UPSTREAM_VER: '1.15.0'
EXTRA_VER: compair3
jobs:
build-deb:
strategy:
matrix:
platform:
- runs-on-image: node-24-arm64
runs-on: ${{ matrix.platform.runs-on-image }}
steps:
- name: Checkout spdlog
env:
TAG: 'v${{ env.UPSTREAM_VER }}'
run: |
git config --global --add safe.directory $PWD
git init
git remote add origin "$REPO"
git config --local gc.auto 0
git fetch --depth=1 --no-tags --prune origin refs/tags/$TAG:$TAG
git checkout $TAG
- name: Install prerequisites
run: |
apt update
apt install -y build-essential cmake g++
- name: Build package
run: |
mkdir -p build
cd build
cmake -B . -S .. \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DSPDLOG_BUILD_EXAMPLE=OFF \
-DCPACK_OUTPUT_FILE_PREFIX=../_packages \
-DCPACK_DEBIAN_PACKAGE_RELEASE=$EXTRA_VER
cmake --build . -- -j2
cpack -G DEB --build .
- name: Print packages contents
run: |
for f in _packages/*.deb; do
echo "$f:"
dpkg-deb -c "$f"
echo
done
- name: Print packages control info
run: |
for f in _packages/*.deb; do
echo "$f:"
dpkg-deb -e "$f"
cat DEBIAN/control
echo
done
# https://forgejo.org/docs/latest/user/packages/debian/#publish-a-package
- name: push deb to apt repository
if: github.ref == 'refs/heads/master'
env:
REPO: ${{ github.repository }}
TAG: ${{ steps.tag.outputs.tag }}
run: |
url="$GITHUB_SERVER_URL/api/packages/${{ github.repository_owner }}/debian/pool/bookworm/compair/upload"
echo "api url: $url"
debver="${UPSTREAM_VER}-${EXTRA_VER}"
debfile="_packages/${PKGNAME}_${debver}.deb"
echo "uploading file: $debfile"
curl --fail-with-body \
-X PUT \
--user "oauth2:${{ secrets.PACKAGE_REGISTRY_TOKEN }}" \
--upload-file "$debfile" \
"$url"
echo "final url: $GITHUB_SERVER_URL/${{ github.repository_owner }}/-/packages/debian/${PKGNAME}/${debver}"

View file

@ -1,102 +0,0 @@
name: pylogbeat
on:
push:
branches:
- master
paths:
- .github/workflows/pylogbeat.yaml
pull_request:
paths:
- .github/workflows/pylogbeat.yaml
jobs:
build-deb:
strategy:
matrix:
platform:
- runner-group: dind
dpkg: all
fpm: all
runs-on:
group: ${{ matrix.platform.runner-group }}
container:
image: node:22-bookworm
steps:
- name: Checkout python-logstash-async
uses: actions/checkout@v4
with:
repository: eht16/pylogbeat
ref: 2.0.1
- name: Fix git safe.directory
run: git config --global --add safe.directory $GITHUB_WORKSPACE
- name: Install prerequisites
run: |
apt update
apt install -y ruby python3-setuptools
gem install fpm
- name: Build package
env:
PYTHONDONTWRITEBYTECODE: '1'
run: |
fpm -s python \
--verbose \
--python-bin python3 \
--python-pip pip3 \
--python-package-name-prefix python3 \
--name python3-pylogbeat \
--maintainer 'compAIR development team <kontakt@comp-air.at>' \
--vendor compAIR \
--iteration compair1 \
--deb-priority optional \
--architecture ${{ matrix.platform.fpm }} \
--output-type deb \
setup.py
- name: Copy over deb files to target directory
run: |
mkdir -p _packages
cp -v *.deb _packages/
- name: Print packages contents
run: |
for f in _packages/*.deb; do
echo "$f:"
dpkg-deb -c "$f"
echo
done
- name: Print packages control info
run: |
for f in _packages/*.deb; do
echo "$f:"
dpkg-deb -e "$f"
cat DEBIAN/control
echo
done
- name: Upload deb as artifact
uses: actions/upload-artifact@v4
with:
name: python3-pylogbeat_${{ matrix.platform.dpkg }}
path: _packages/*
if-no-files-found: error
overwrite: true
- name: Push deb to compREP
uses: cpina/github-action-push-to-another-repository@main
if: github.ref == 'refs/heads/master'
env:
SSH_DEPLOY_KEY: ${{ secrets.SSH_DEPLOY_KEY }}
with:
source-directory: "_packages/"
target-directory: "debs/complib/"
destination-github-username: "F-WuTS"
destination-repository-name: "compREP"
target-branch: master

View file

@ -1,102 +0,0 @@
name: python-logstash-async
on:
push:
branches:
- master
paths:
- .github/workflows/python-logstash-async.yaml
pull_request:
paths:
- .github/workflows/python-logstash-async.yaml
jobs:
build-deb:
strategy:
matrix:
platform:
- runner-group: dind
dpkg: all
fpm: all
runs-on:
group: ${{ matrix.platform.runner-group }}
container:
image: node:22-bookworm
steps:
- name: Checkout python-logstash-async
uses: actions/checkout@v4
with:
repository: eht16/python-logstash-async
ref: 3.0.0
- name: Fix git safe.directory
run: git config --global --add safe.directory $GITHUB_WORKSPACE
- name: Install prerequisites
run: |
apt update
apt install -y ruby python3-setuptools
gem install fpm
- name: Build package
env:
PYTHONDONTWRITEBYTECODE: '1'
run: |
fpm -s python \
--verbose \
--python-bin python3 \
--python-pip pip3 \
--python-package-name-prefix python3 \
--name python3-logstash-async \
--maintainer 'compAIR development team <kontakt@comp-air.at>' \
--vendor compAIR \
--iteration compair1 \
--deb-priority optional \
--architecture ${{ matrix.platform.fpm }} \
--output-type deb \
setup.py
- name: Copy over deb files to target directory
run: |
mkdir -p _packages
cp -v *.deb _packages/
- name: Print packages contents
run: |
for f in _packages/*.deb; do
echo "$f:"
dpkg-deb -c "$f"
echo
done
- name: Print packages control info
run: |
for f in _packages/*.deb; do
echo "$f:"
dpkg-deb -e "$f"
cat DEBIAN/control
echo
done
- name: Upload deb as artifact
uses: actions/upload-artifact@v4
with:
name: python3-logstash-async_${{ matrix.platform.dpkg }}
path: _packages/*
if-no-files-found: error
overwrite: true
- name: Push deb to compREP
uses: cpina/github-action-push-to-another-repository@main
if: github.ref == 'refs/heads/master'
env:
SSH_DEPLOY_KEY: ${{ secrets.SSH_DEPLOY_KEY }}
with:
source-directory: "_packages/"
target-directory: "debs/complib/"
destination-github-username: "F-WuTS"
destination-repository-name: "compREP"
target-branch: master

View file

@ -1,90 +0,0 @@
name: spdlog
on:
push:
branches:
- master
paths:
- .github/workflows/spdlog.yaml
pull_request:
paths:
- .github/workflows/spdlog.yaml
jobs:
build-deb:
strategy:
matrix:
platform:
- runner-group: arm64
dpkg: arm64
runs-on:
group: ${{ matrix.platform.runner-group }}
container:
image: node:22-bookworm
steps:
- name: Checkout spdlog
uses: actions/checkout@v4
with:
repository: gabime/spdlog
ref: v1.15.0
- name: Fix git safe.directory
run: git config --global --add safe.directory $GITHUB_WORKSPACE
- name: Install prerequisites
run: |
apt update
apt install -y build-essential cmake g++
- name: Build package
run: |
mkdir -p build
cd build
cmake -B . -S .. \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DSPDLOG_BUILD_EXAMPLE=OFF \
-DCPACK_OUTPUT_FILE_PREFIX=../_packages \
-DCPACK_DEBIAN_PACKAGE_RELEASE=compair2
cmake --build . -- -j2
cpack -G DEB --build .
- name: Print packages contents
run: |
for f in _packages/*.deb; do
echo "$f:"
dpkg-deb -c "$f"
echo
done
- name: Print packages control info
run: |
for f in _packages/*.deb; do
echo "$f:"
dpkg-deb -e "$f"
cat DEBIAN/control
echo
done
- name: Upload deb as artifact
uses: actions/upload-artifact@v4
with:
name: spdlog_${{ matrix.platform.dpkg }}
path: _packages/*
if-no-files-found: error
overwrite: true
- name: Push deb to compREP
uses: cpina/github-action-push-to-another-repository@main
if: github.ref == 'refs/heads/master'
env:
SSH_DEPLOY_KEY: ${{ secrets.SSH_DEPLOY_KEY }}
with:
source-directory: "_packages/"
target-directory: "debs/spdlog/"
destination-github-username: "F-WuTS"
destination-repository-name: "compREP"
target-branch: master

View file

@ -1,8 +1,6 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:recommended"
],
"extends": ["local>F-WuTS/renovate-config"],
"packageRules": [
{
"matchUpdateTypes": [