1
0

🤖 Repository layout updated to latest version

This commit was automatically generated by [a script](https://gitfub.space/Jmaa/repo-manager)
This commit is contained in:
Takunomi Automaticus, The 2nd 2025-05-21 18:05:25 +02:00
parent e60e0bdf3c
commit 67740408e3
3 changed files with 90 additions and 20 deletions

View File

@ -10,13 +10,72 @@ on:
paths-ignore: ['README.md', '.gitignore', 'LICENSE', 'CONVENTIONS.md', 'ruff.toml'] paths-ignore: ['README.md', '.gitignore', 'LICENSE', 'CONVENTIONS.md', 'ruff.toml']
jobs: jobs:
Package-Container: release-image:
uses: jmaa/workflows/.gitea/workflows/container.yaml@v6.21 runs-on: ubuntu-latest
with: container:
REGISTRY_DOMAIN: gitfub.space image: catthehacker/ubuntu:act-latest
REGISTRY_ORGANIZATION: jmaa env:
secrets: RUNNER_TOOL_CACHE: /toolcache
DOCKER_USERNAME: ${{ secrets.PIPY_REPO_USER }} steps:
DOCKER_PASSWORD: ${{ secrets.PIPY_REPO_PASS }} - run: apt-get update
PIPELINE_WORKER_SSH_KEY: ${{ secrets.PIPELINE_WORKER_SSH_KEY }} - name: Checkout
PIPELINE_WORKER_KNOWN_HOSTS: ${{ secrets.PIPELINE_WORKER_KNOWN_HOSTS }} uses: actions/checkout@v3
- name: Setting up SSH
if: ${{ hashFiles('requirements_private.txt') != '' }}
uses: https://github.com/shimataro/ssh-key-action@v2.5.1
with:
key: ${{ secrets.PIPELINE_WORKER_SSH_KEY }}
name: id_rsa
known_hosts: ${{ secrets.PIPELINE_WORKER_KNOWN_HOSTS }}
config: |
Host gitfub
HostName gitfub.space
User ${{ secrets.PIPY_REPO_USER }}
- name: Download private dependencies
if: ${{ hashFiles('requirements_private.txt') != '' }}
shell: bash
run: |
set -e
mkdir -p private_deps
cd private_deps
while IFS=$" " read -r -a dependency_spec
do
if test -n "${dependency_spec[1]}"
then
git clone -v --single-branch --no-tags "${dependency_spec[0]}" --branch "${dependency_spec[1]}"
else
git clone -v --single-branch --no-tags "${dependency_spec[0]}"
fi
done < ../requirements_private.txt
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker BuildX
uses: docker/setup-buildx-action@v2
- name: Login to Docker Registry
uses: docker/login-action@v2
with:
registry: gitfub.space
username: ${{ secrets.PIPY_REPO_USER }}
password: ${{ secrets.PIPY_REPO_PASS }}
- name: Get Meta
id: meta
run: |
echo REPO_NAME=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $2}') >> $GITHUB_OUTPUT
echo REPO_VERSION=$(git describe --tags --always | sed 's/^v//') >> $GITHUB_OUTPUT
- name: Build and push
uses: docker/build-push-action@v4
with:
context: .
file: ./Dockerfile
platforms: |
linux/amd64
push: true
tags: |
gitfub.space/jmaa/${{ steps.meta.outputs.REPO_NAME }}:${{ steps.meta.outputs.REPO_VERSION }}
gitfub.space/jmaa/${{ steps.meta.outputs.REPO_NAME }}:latest

View File

@ -10,11 +10,24 @@ on:
paths-ignore: ['README.md', '.gitignore', 'LICENSE', 'CONVENTIONS.md', 'ruff.toml'] paths-ignore: ['README.md', '.gitignore', 'LICENSE', 'CONVENTIONS.md', 'ruff.toml']
jobs: jobs:
Package: Package-Python-And-Publish:
uses: jmaa/workflows/.gitea/workflows/python-package.yaml@v6.21 runs-on: ubuntu-latest
with: container:
REGISTRY_DOMAIN: gitfub.space image: node:21-bookworm
REGISTRY_ORGANIZATION: jmaa steps:
secrets: - name: Setting up Python ${{ env.PYTHON_VERSION }} for ${{runner.arch}} ${{runner.os}}
PIPY_REPO_USER: ${{ secrets.PIPY_REPO_USER }} run: |
PIPY_REPO_PASS: ${{ secrets.PIPY_REPO_PASS }} apt-get update
apt-get install -y python3 python3-pip
- name: Check out repository code
if: success()
uses: actions/checkout@v3
- name: Installing Python Dependencies
if: success()
run: python3 -m pip install --upgrade pip setuptools wheel build twine pytest --break-system-packages
- name: Build
if: success()
run: python3 -m build
- name: Publish
if: success()
run: python3 -m twine upload --repository-url "https://gitfub.space/api/packages/jmaa/pypi" -u ${{ secrets.PIPY_REPO_USER }} -p ${{ secrets.PIPY_REPO_PASS }} dist/*

View File

@ -54,7 +54,6 @@ PACKAGE_DESCRIPTION_SHORT = """
This program collects several small data fetchers, for downloading personal This program collects several small data fetchers, for downloading personal
data spread around the internet.""".strip() data spread around the internet.""".strip()
def parse_version_file(text: str) -> str: def parse_version_file(text: str) -> str:
text = re.sub('^#.*', '', text, flags=re.MULTILINE) text = re.sub('^#.*', '', text, flags=re.MULTILINE)
match = re.match(r'^\s*__version__\s*=\s*(["\'])([\d\.]+)\1$', text) match = re.match(r'^\s*__version__\s*=\s*(["\'])([\d\.]+)\1$', text)
@ -63,7 +62,6 @@ def parse_version_file(text: str) -> str:
raise Exception(msg) raise Exception(msg)
return match.group(2) return match.group(2)
with open(PACKAGE_NAME + '/_version.py') as f: with open(PACKAGE_NAME + '/_version.py') as f:
version = parse_version_file(f.read()) version = parse_version_file(f.read())