ci: Forgejo Actions workflows (nodeless shell CI + dependency refresh, python ^3.11) #1

Open
hermes wants to merge 1 commit from ci/forgejo-actions into main
Member

Ports the ecs-files-composer nodeless CI setup to ecs-service-discovery.

  • .forgejo/workflows/ci.yml: lint (ruff), tests matrix (py3.13 + py3.14 — actively-supported versions only for a service app), docs, build — nodeless shell checkout, public ECR python containers, job logic via Makefile
  • scripts/ci-cache.sh: act-runner artifactcache REST client (actions/cache@v4 unreachable on this network), keyed on poetry.lock, best-effort
  • .forgejo/workflows/release.yml: PyPI publish on v* tags (PYPI_TOKEN secret)
  • Dependency refresh: poetry.lock regenerated (compose-x-common 1.5.x brings flatdict3, all wheels — old flatdict 4.0.1/lxml 5.2.2 were sdist-only and failed to build); dev deps now ruff ^0.16, pytest, twine ^6.0
  • Python floor ^3.9 -> ^3.11; ruff replaces flake8/black/isort (compose-x-common alignment); small lint fixes in existing modules
  • Docs: sphinx-material 0.0.35 crashes on py3.13 (multiprocessing AutoProxy conflict with sphinx-sitemap) — theme swapped to sphinx_rtd_theme; imghdr shim for Sphinx 5.x on modern python; headless BROWSER handling
  • New trivial passing test (tests/ was empty); .pre-commit-config.yaml and .codebuild/ untouched

All verification passing locally: poetry install, pytest, ruff check + format, docs build (0 warnings), poetry build + twine check, yaml parse.
First CI run: cache save-only (miss expected).

Ports the ecs-files-composer nodeless CI setup to ecs-service-discovery. - .forgejo/workflows/ci.yml: lint (ruff), tests matrix (py3.13 + py3.14 — actively-supported versions only for a service app), docs, build — nodeless shell checkout, public ECR python containers, job logic via Makefile - scripts/ci-cache.sh: act-runner artifactcache REST client (actions/cache@v4 unreachable on this network), keyed on poetry.lock, best-effort - .forgejo/workflows/release.yml: PyPI publish on v* tags (PYPI_TOKEN secret) - Dependency refresh: poetry.lock regenerated (compose-x-common 1.5.x brings flatdict3, all wheels — old flatdict 4.0.1/lxml 5.2.2 were sdist-only and failed to build); dev deps now ruff ^0.16, pytest, twine ^6.0 - Python floor ^3.9 -> ^3.11; ruff replaces flake8/black/isort (compose-x-common alignment); small lint fixes in existing modules - Docs: sphinx-material 0.0.35 crashes on py3.13 (multiprocessing AutoProxy conflict with sphinx-sitemap) — theme swapped to sphinx_rtd_theme; imghdr shim for Sphinx 5.x on modern python; headless BROWSER handling - New trivial passing test (tests/ was empty); .pre-commit-config.yaml and .codebuild/ untouched All verification passing locally: poetry install, pytest, ruff check + format, docs build (0 warnings), poetry build + twine check, yaml parse. First CI run: cache save-only (miss expected).
ci: Forgejo Actions workflows (nodeless shell CI + dependency refresh, python ^3.11)
All checks were successful
CI / Lint (ruff) (pull_request) Successful in 11s
CI / Tests (Python 3.13) (pull_request) Successful in 2m19s
CI / Tests (Python 3.14) (pull_request) Successful in 2m21s
CI / Docs build (pull_request) Successful in 2m36s
CI / Package build (pull_request) Successful in 2m30s
635d8446e3
All checks were successful
CI / Lint (ruff) (pull_request) Successful in 11s
CI / Tests (Python 3.13) (pull_request) Successful in 2m19s
CI / Tests (Python 3.14) (pull_request) Successful in 2m21s
CI / Docs build (pull_request) Successful in 2m36s
CI / Package build (pull_request) Successful in 2m30s
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin 'ci/forgejo-actions:ci/forgejo-actions'
git switch 'ci/forgejo-actions'

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch 'main'
git merge --no-ff 'ci/forgejo-actions'
git switch 'ci/forgejo-actions'
git rebase 'main'
git switch 'main'
git merge --ff-only 'ci/forgejo-actions'
git switch 'ci/forgejo-actions'
git rebase 'main'
git switch 'main'
git merge --no-ff 'ci/forgejo-actions'
git switch 'main'
git merge --squash 'ci/forgejo-actions'
git switch 'main'
git merge --ff-only 'ci/forgejo-actions'
git switch 'main'
git merge 'ci/forgejo-actions'
git push origin 'main'
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
compose-x/ecs-service-discovery!1
No description provided.