1 Commits

Author SHA1 Message Date
3a2a388188 fix(deps): update dependency certifi to v2025.4.26
All checks were successful
Conventional Commit / Validate PR Title (pull_request) Successful in 22s
CI / ci (pull_request) Successful in 3m31s
2025-04-26 03:09:27 +00:00
5 changed files with 53 additions and 72 deletions

View File

@ -56,7 +56,7 @@ jobs:
run: uv cache prune --ci run: uv cache prune --ci
- name: SonarQube Scan - name: SonarQube Scan
uses: SonarSource/sonarqube-scan-action@v5.2.0 uses: SonarSource/sonarqube-scan-action@v5.1.0
env: env:
SONAR_HOST_URL: ${{ secrets.SONARQUBE_HOST_URL }} SONAR_HOST_URL: ${{ secrets.SONARQUBE_HOST_URL }}
SONAR_TOKEN: ${{ secrets.SONARQUBE_TOKEN }} SONAR_TOKEN: ${{ secrets.SONARQUBE_TOKEN }}

View File

@ -5,66 +5,57 @@ on:
- cron: "0 9 * * 0" - cron: "0 9 * * 0"
jobs: jobs:
# test: test:
# name: Test name: Test
# uses: https://git.tainton.uk/repos/pypilot/.gitea/workflows/ci.yml@main uses: https://git.tainton.uk/repos/pypilot/.gitea/workflows/ci.yml@main
tag:
name: Tag release
uses: https://git.tainton.uk/actions/gha-workflows/.gitea/workflows/release-with-tag.yaml@main
create_release: create_release:
name: Create Release name: Create Release
needs: tag needs: test
uses: https://git.tainton.uk/actions/gha-workflows/.gitea/workflows/create-release-preexisting-tag.yaml@main uses: https://git.tainton.uk/actions/gha-workflows/.gitea/workflows/create-release.yml@main
with:
tag: ${{ needs.tag.outputs.tag_name }}
body: ${{ needs.tag.outputs.changelog }}
secrets: secrets:
ACTIONS_TOKEN: ${{ secrets.ACTIONS_TOKEN }} ACTIONS_TOKEN: ${{ secrets.ACTIONS_TOKEN }}
get_release_id: print_release:
name: Get Release ID name: Print Release
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: [tag, create_release] needs: create_release
outputs: outputs:
releaseid: ${{ steps.getid.outputs.releaseid }} releaseid: ${{ steps.getid.outputs.releaseid }}
steps: steps:
- run: echo "Created release ${{ needs.create_release.outputs.release_name }}."
- name: Get Release ID - name: Get Release ID
id: getid id: getid
run: | run: |
rid=$(curl -s -X 'GET' \ rid=$(curl -s -X 'GET' \
-H 'accept: application/json' \ -H 'accept: application/json'
'${{ gitea.server_url }}/api/v1/repos/${{ gitea.repository }}/releases/latest' | jq -r '.id') '${{ gitea.server_url }}/api/v1/repos/${{ gitea.repository }}/releases/latest' | jq -r '.[].id')
echo "releaseid=$rid" >> "$GITEA_OUTPUT" echo "releaseid=$rid" >> "$GITEA_OUTPUT"
echo "$rid"
build_whl: build_whl:
name: Build Wheel File name: Build Wheel File
needs: [tag, get_release_id] needs: [create_release, print_release]
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check out repository code - name: Check out repository code
uses: actions/checkout@v4.2.2 uses: actions/checkout@v4.2.2
with:
ref: ${{ needs.tag.outputs.tag_name }}
# - name: Setup Python
# uses: actions/setup-python@v5
# with:
# python-version: "3.13"
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
- name: Setup Python - name: Setup Python
run: uv python install uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Setup Poetry
uses: abatilo/actions-poetry@v4
- name: Update pyproject.toml - name: Update pyproject.toml
run: ./tools/update_pyproject.sh ${{ needs.tag.outputs.tag_name }} run: ./tools/update_pyproject.sh ${{ needs.create_release.outputs.release_name }}
- name: Install dependencies - name: Install dependencies
run: uv sync run: poetry install
- name: Build wheel file - name: Build wheel file
run: uv build run: poetry build
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: whl
path: dist/
- name: Upload Release Asset - name: Upload Release Asset
run: | run: |
for file in dist/*.whl; do for file in dist/*.whl; do
@ -72,41 +63,31 @@ jobs:
-H "Authorization: token ${{ secrets.ACTIONS_TOKEN }}" \ -H "Authorization: token ${{ secrets.ACTIONS_TOKEN }}" \
-H "Content-Type: multipart/form-data" \ -H "Content-Type: multipart/form-data" \
-F "attachment=@${{ gitea.workspace }}/$file" \ -F "attachment=@${{ gitea.workspace }}/$file" \
"${{ gitea.server_url }}/api/v1/repos/${{ gitea.repository }}/releases/${{ needs.get_release_id.outputs.releaseid }}/assets" "${{ gitea.server_url }}/api/v1/repos/${{ gitea.repository }}/releases/${{ needs.print_release.outputs.releaseid }}"
done done
- name: Publish to PyPI
run: uv publish
env:
UV_PUBLISH_TOKEN: ${{ secrets.PYPI_API_TOKEN }}
# - name: Publish to PyPI
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# # user: ${{ vars.PYPI_USERNAME }}
# user: __token__
# password: ${{ secrets.PYPI_API_TOKEN }}
# publish_pypi: publish_pypi:
# name: Publish to PyPI name: Publish to PyPI
# needs: build_whl needs: build_whl
# runs-on: ubuntu-latest runs-on: ubuntu-latest
# steps: steps:
# - name: Create dist folder - name: Create dist folder
# run: mkdir -p dist run: mkdir -p dist
# - uses: actions/download-artifact@v4 - uses: actions/download-artifact@v4
# with: with:
# name: whl name: whl
# path: dist path: dist
# - name: Publish to PyPI - name: Publish to PyPI
# uses: pypa/gh-action-pypi-publish@release/v1 uses: pypa/gh-action-pypi-publish@release/v1
# with: with:
# # user: ${{ vars.PYPI_USERNAME }} # user: ${{ vars.PYPI_USERNAME }}
# user: __token__ user: __token__
# password: ${{ secrets.PYPI_API_TOKEN }} password: ${{ secrets.PYPI_API_TOKEN }}
create_docker: create_docker:
name: Publish Docker Images name: Publish Docker Images
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: tag needs: create_release
steps: steps:
- name: Update Docker configuration - name: Update Docker configuration
continue-on-error: true continue-on-error: true
@ -128,7 +109,7 @@ jobs:
uses: actions/checkout@v4.2.2 uses: actions/checkout@v4.2.2
with: with:
fetch-depth: 0 fetch-depth: 0
ref: ${{ needs.tag.outputs.tag_name }} ref: ${{ needs.create_release.outputs.release_name }}
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3 uses: docker/setup-buildx-action@v3
@ -151,7 +132,7 @@ jobs:
id: meta id: meta
uses: docker/metadata-action@v5 uses: docker/metadata-action@v5
with: with:
tags: type=semver,pattern=v{{version}},value=${{ needs.tag.outputs.tag_name }} tags: type=semver,pattern=v{{version}},value=${{ needs.create_release.outputs.release_name }}
images: | images: |
ghcr.io/${{ vars.GHCR_USERNAME }}/${{ steps.split.outputs.repo }} ghcr.io/${{ vars.GHCR_USERNAME }}/${{ steps.split.outputs.repo }}
${{ vars.PACKAGES_REGISTRY_URL }}/${{ gitea.repository }} ${{ vars.PACKAGES_REGISTRY_URL }}/${{ gitea.repository }}

View File

@ -16,7 +16,7 @@ jobs:
uses: actions/checkout@v4.2.2 uses: actions/checkout@v4.2.2
- name: SonarQube Scan - name: SonarQube Scan
uses: SonarSource/sonarqube-scan-action@v5.2.0 uses: SonarSource/sonarqube-scan-action@v5.1.0
env: env:
SONAR_HOST_URL: ${{ secrets.SONARQUBE_HOST_URL }} SONAR_HOST_URL: ${{ secrets.SONARQUBE_HOST_URL }}
SONAR_TOKEN: ${{ secrets.SONARQUBE_TOKEN }} SONAR_TOKEN: ${{ secrets.SONARQUBE_TOKEN }}

View File

@ -19,7 +19,7 @@ dependencies = [
"iniconfig==2.1.0", "iniconfig==2.1.0",
"lazy-object-proxy==1.11.0", "lazy-object-proxy==1.11.0",
"mccabe==0.7.0", "mccabe==0.7.0",
"mypy-extensions==1.1.0", "mypy-extensions==1.0.0",
"packaging==25.0", "packaging==25.0",
"pathspec==0.12.1", "pathspec==0.12.1",
"platformdirs==4.3.7", "platformdirs==4.3.7",

8
uv.lock generated
View File

@ -271,7 +271,7 @@ requires-dist = [
{ name = "iniconfig", specifier = "==2.1.0" }, { name = "iniconfig", specifier = "==2.1.0" },
{ name = "lazy-object-proxy", specifier = "==1.11.0" }, { name = "lazy-object-proxy", specifier = "==1.11.0" },
{ name = "mccabe", specifier = "==0.7.0" }, { name = "mccabe", specifier = "==0.7.0" },
{ name = "mypy-extensions", specifier = "==1.1.0" }, { name = "mypy-extensions", specifier = "==1.0.0" },
{ name = "packaging", specifier = "==25.0" }, { name = "packaging", specifier = "==25.0" },
{ name = "pathspec", specifier = "==0.12.1" }, { name = "pathspec", specifier = "==0.12.1" },
{ name = "platformdirs", specifier = "==4.3.7" }, { name = "platformdirs", specifier = "==4.3.7" },
@ -334,11 +334,11 @@ wheels = [
[[package]] [[package]]
name = "mypy-extensions" name = "mypy-extensions"
version = "1.1.0" version = "1.0.0"
source = { registry = "https://pypi.org/simple" } source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/a2/6e/371856a3fb9d31ca8dac321cda606860fa4548858c0cc45d9d1d4ca2628b/mypy_extensions-1.1.0.tar.gz", hash = "sha256:52e68efc3284861e772bbcd66823fde5ae21fd2fdb51c62a211403730b916558", size = 6343, upload_time = "2025-04-22T14:54:24.164Z" } sdist = { url = "https://files.pythonhosted.org/packages/98/a4/1ab47638b92648243faf97a5aeb6ea83059cc3624972ab6b8d2316078d3f/mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782", size = 4433, upload_time = "2023-02-04T12:11:27.157Z" }
wheels = [ wheels = [
{ url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl", hash = "sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505", size = 4963, upload_time = "2025-04-22T14:54:22.983Z" }, { url = "https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d", size = 4695, upload_time = "2023-02-04T12:11:25.002Z" },
] ]
[[package]] [[package]]