From 8b55743176a0cb2927b20b96a3b270517e0bf937 Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 11:18:06 +0200 Subject: [PATCH 01/28] e --- .woodpecker/test.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.woodpecker/test.yaml b/.woodpecker/test.yaml index a649443..136bf7b 100644 --- a/.woodpecker/test.yaml +++ b/.woodpecker/test.yaml @@ -2,6 +2,7 @@ when: - event: push branch: main - event: manual + - event: tag steps: From 8308fe65f362c6e443ebad95bff0b6c9e4b7411d Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 11:19:39 +0200 Subject: [PATCH 02/28] fail --- tests/basic.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/basic.py b/tests/basic.py index 30e2c41..4f6a45a 100644 --- a/tests/basic.py +++ b/tests/basic.py @@ -1,2 +1,6 @@ def test_foo(): assert True + + +def fail_foo(): + assert False From b0af67e0c552e4d33b8b674833c5cdddaeb8ad51 Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 11:21:38 +0200 Subject: [PATCH 03/28] o --- tests/basic.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/basic.py b/tests/basic.py index 4f6a45a..caf98cf 100644 --- a/tests/basic.py +++ b/tests/basic.py @@ -1,6 +1,6 @@ -def test_foo(): +def test_ok(): assert True -def fail_foo(): +def test_fail(): assert False From caa53623973d36d0c549b3fffdde133701f27395 Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 12:43:29 +0200 Subject: [PATCH 04/28] b --- Containerfile | 13 +++++++------ pyproject.toml | 6 ++---- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/Containerfile b/Containerfile index 373e514..f710619 100644 --- a/Containerfile +++ b/Containerfile @@ -1,15 +1,16 @@ -# Build: podman build -t code.philo.ydns.eu/k-net/knoc -f Containerfile +# Build: podman build -t code.philo.ydns.eu/philorg/test-woodpecker -f Containerfile -FROM docker.io/python:3.13-slim +#FROM docker.io/python:3.13-slim +FROM docker.io/python:alpine +#FROM ghcr.io/astral-sh/uv:python3.13-alpine #RUN apk add --no-cache git -COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/ -COPY --from=docker.io/python:3.13 /usr/bin/git /usr/local/bin/git +#COPY --from=ghcr.io/astral-sh/uv:python3.13-alpine /usr/local/bin/uv /usr/local/bin/ COPY . /app # Sync the project into a new environment, using the frozen lockfile WORKDIR /app -RUN uv pip install --system . +RUN --mount=from=ghcr.io/astral-sh/uv:alpine,source=/usr/local/bin/uv,target=/bin/uv uv pip install --system . -ENTRYPOINT ["knoc"] +ENTRYPOINT ["foo"] diff --git a/pyproject.toml b/pyproject.toml index e3d35d6..bf946b4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,6 +8,7 @@ dependencies = [] [project.scripts] foo = "test_woodpecker_ci.main:main" + [build-system] requires = ["hatchling"] build-backend = "hatchling.build" @@ -16,7 +17,4 @@ build-backend = "hatchling.build" packages = ["src/test_woodpecker_ci"] [dependency-groups] -dev = [ - "httpx>=0.28.1", - "pytest>=8.4.1", -] +dev = ["httpx>=0.28.1", "pytest>=8.4.1"] From deccea88098987d91968867b01794877869b67bd Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 13:25:32 +0200 Subject: [PATCH 05/28] w --- .woodpecker/build.yaml | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index acb3249..1632570 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -6,11 +6,6 @@ depends_on: - test steps: -# isitatag: -# image: ghcr.io/astral-sh/uv:python3.13-alpine -# when: -# evaluate: '"CI_COMMIT_TAG" in $env' - sync: image: ghcr.io/astral-sh/uv:python3.13-alpine volumes: @@ -31,22 +26,16 @@ steps: commands: - uv build --wheel - uv cache prune --ci - - - push_python: -# TODO: when git tag - image: code.philo.ydns.eu/philorg/twine + image: ghcr.io/astral-sh/uv:python3.13-alpine environment: OWNER: philorg REGISTRY_URL: https://code.philo.ydns.eu - USERNAME: - from_secret: forgejo_username - PASSWORD: - from_secret: forgejo_password + REGISTRY_TOKEN: + from_secret: registry_token commands: - - twine upload --repository-url $REGISTRY_URL/api/packages/$OWNER/pypi -u $USERNAME -p $PASSWORD --non-interactive dist/*.whl + - uv publish --publish-url $REGISTRY_URL/api/packages/$OWNER/pypi -u __token__ --token REGISTRY_TOKEN dist/*.whl failure: ignore # TODO: container From 2bf168476a94e09fc188b5f6e52919d63b580453 Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 13:26:32 +0200 Subject: [PATCH 06/28] q --- tests/basic.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/basic.py b/tests/basic.py index caf98cf..c6881ce 100644 --- a/tests/basic.py +++ b/tests/basic.py @@ -2,5 +2,5 @@ def test_ok(): assert True -def test_fail(): +def no_test_fail(): assert False From 772c4a94fb26bc2b1dfc57edf9361d5476937c64 Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 13:30:19 +0200 Subject: [PATCH 07/28] g --- .woodpecker/build.yaml | 4 ++-- pyproject.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 1632570..1513954 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -26,7 +26,7 @@ steps: commands: - uv build --wheel - uv cache prune --ci - + push_python: image: ghcr.io/astral-sh/uv:python3.13-alpine environment: @@ -35,7 +35,7 @@ steps: REGISTRY_TOKEN: from_secret: registry_token commands: - - uv publish --publish-url $REGISTRY_URL/api/packages/$OWNER/pypi -u __token__ --token REGISTRY_TOKEN dist/*.whl + - uv publish --publish-url $REGISTRY_URL/api/packages/$OWNER/pypi --token REGISTRY_TOKEN dist/*.whl failure: ignore # TODO: container diff --git a/pyproject.toml b/pyproject.toml index bf946b4..14588ec 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "test-woodpecker-ci" -version = "0.1.0" +version = "0.1.1" description = "Add your description here" readme = "README.md" requires-python = ">=3.13" From 47c5182a99f66d0e820dcc0e4e89a1b8b3bf842e Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 13:31:47 +0200 Subject: [PATCH 08/28] g --- .woodpecker/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 1513954..51c4b18 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -35,7 +35,7 @@ steps: REGISTRY_TOKEN: from_secret: registry_token commands: - - uv publish --publish-url $REGISTRY_URL/api/packages/$OWNER/pypi --token REGISTRY_TOKEN dist/*.whl + - uv publish --publish-url $REGISTRY_URL/api/packages/$OWNER/pypi --token $REGISTRY_TOKEN dist/*.whl failure: ignore # TODO: container From 5747745304b54afe10b3c36b44a57c867f69a55b Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 15:03:34 +0200 Subject: [PATCH 09/28] c --- .woodpecker/build.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 51c4b18..70de75d 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -6,6 +6,20 @@ depends_on: - test steps: + build_container: + image: code.philo.ydns.eu/philorg/podman + environment: + REGISTRY_URL: https://code.philo.ydns.eu + OWNER: philorg + CONTAINERFILE: Containerfile + commands: + - build -t code.philo.ydns.eu/philorg/test-woodpecker -f $CONTAINERFILE + + publish_container: + image: code.philo.ydns.eu/philorg/podman + commands: + - echo $REGISTRY_LOGIN_TOKEN | podman login -u --password-stdin registry.gitlab.com + sync: image: ghcr.io/astral-sh/uv:python3.13-alpine volumes: From 7b3089ada1c55227243411ebf3222d409e4c808c Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 15:07:56 +0200 Subject: [PATCH 10/28] c --- .woodpecker/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 70de75d..c0782d6 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -13,7 +13,7 @@ steps: OWNER: philorg CONTAINERFILE: Containerfile commands: - - build -t code.philo.ydns.eu/philorg/test-woodpecker -f $CONTAINERFILE + - podman build -t code.philo.ydns.eu/philorg/test-woodpecker -f $CONTAINERFILE publish_container: image: code.philo.ydns.eu/philorg/podman From 8b334f1e6dd2276917d42a74439bf1212c55af42 Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 15:46:14 +0200 Subject: [PATCH 11/28] p --- .woodpecker/build.yaml | 51 ++++++++++++++++++++++++++++++++---------- 1 file changed, 39 insertions(+), 12 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index c0782d6..3dae7ad 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -6,19 +6,46 @@ depends_on: - test steps: - build_container: - image: code.philo.ydns.eu/philorg/podman - environment: - REGISTRY_URL: https://code.philo.ydns.eu - OWNER: philorg - CONTAINERFILE: Containerfile - commands: - - podman build -t code.philo.ydns.eu/philorg/test-woodpecker -f $CONTAINERFILE + steps: + publish: + image: docker.io/taywee/woodpecker-buildah:latest + settings: + tag: code.philo.ydns.eu/test-woodpecker + registry: code.philo.ydns.eu + username: + from_secret: registry_username + password: + from_secret: registry_password + env-files: + DOCKER_HUB_AUTH: /home/build/.config/containers/auth.json - publish_container: - image: code.philo.ydns.eu/philorg/podman - commands: - - echo $REGISTRY_LOGIN_TOKEN | podman login -u --password-stdin registry.gitlab.com + settings: + registry: code.philo.ydns.eu + repo: code.philo.ydns.eu/test-woodpecker + tags: ${CI_COMMIT_SHA} + cache: true + skip_tls_verify: false # set to true for testing registries ONLY with self-signed certs + build_args: + - COMMIT_SHA=${CI_COMMIT_SHA} + - COMMIT_AUTHOR_EMAIL=${CI_COMMIT_AUTHOR_EMAIL} + username: + from_secret: docker-username + password: + from_secret: docker-password + # build_container: + # image: code.philo.ydns.eu/philorg/podman + # environment: + # REGISTRY_URL: https://code.philo.ydns.eu + # OWNER: philorg + # CONTAINERFILE: Containerfile + # commands: + # - podman build -t code.philo.ydns.eu/philorg/test-woodpecker -f $CONTAINERFILE + # + # + # publish_container: + # image: code.philo.ydns.eu/philorg/podman + # commands: + # - echo $REGISTRY_LOGIN_TOKEN | podman login -u --password-stdin registry.gitlab.com sync: image: ghcr.io/astral-sh/uv:python3.13-alpine From 4685127011d225ef3ab542fe54fcaa6235ec1eda Mon Sep 17 00:00:00 2001 From: phil Date: Tue, 24 Jun 2025 15:48:24 +0200 Subject: [PATCH 12/28] m --- .woodpecker/build.yaml | 45 +++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 23 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 3dae7ad..80784a3 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -6,32 +6,31 @@ depends_on: - test steps: - steps: - publish: - image: docker.io/taywee/woodpecker-buildah:latest - settings: - tag: code.philo.ydns.eu/test-woodpecker - registry: code.philo.ydns.eu - username: - from_secret: registry_username - password: - from_secret: registry_password + publish: + image: docker.io/taywee/woodpecker-buildah:latest + settings: + tag: code.philo.ydns.eu/test-woodpecker + registry: code.philo.ydns.eu + username: + from_secret: registry_username + password: + from_secret: registry_password env-files: DOCKER_HUB_AUTH: /home/build/.config/containers/auth.json - settings: - registry: code.philo.ydns.eu - repo: code.philo.ydns.eu/test-woodpecker - tags: ${CI_COMMIT_SHA} - cache: true - skip_tls_verify: false # set to true for testing registries ONLY with self-signed certs - build_args: - - COMMIT_SHA=${CI_COMMIT_SHA} - - COMMIT_AUTHOR_EMAIL=${CI_COMMIT_AUTHOR_EMAIL} - username: - from_secret: docker-username - password: - from_secret: docker-password + # settings: + # registry: code.philo.ydns.eu + # repo: code.philo.ydns.eu/test-woodpecker + # tags: ${CI_COMMIT_SHA} + # cache: true + # skip_tls_verify: false # set to true for testing registries ONLY with self-signed certs + # build_args: + # - COMMIT_SHA=${CI_COMMIT_SHA} + # - COMMIT_AUTHOR_EMAIL=${CI_COMMIT_AUTHOR_EMAIL} + # username: + # from_secret: docker-username + # password: + # from_secret: docker-password # build_container: # image: code.philo.ydns.eu/philorg/podman # environment: From 79850e9f0a31bb8ad55473c395b68c180ec12635 Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 02:17:57 +0200 Subject: [PATCH 13/28] g --- .woodpecker/build.yaml | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 80784a3..3c841b3 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -6,17 +6,31 @@ depends_on: - test steps: - publish: - image: docker.io/taywee/woodpecker-buildah:latest + build_and_release_and_push: + image: maltegrosse/woodpecker-buildah:0.0.12 settings: - tag: code.philo.ydns.eu/test-woodpecker registry: code.philo.ydns.eu + repository: philorg/test-woodpecker + tags: ${CI_COMMIT_SHA} + architectures: amd64 + context: Containerfile username: from_secret: registry_username password: from_secret: registry_password - env-files: - DOCKER_HUB_AUTH: /home/build/.config/containers/auth.json + + + # publish: + # image: docker.io/taywee/woodpecker-buildah:latest + # settings: + # tag: code.philo.ydns.eu/test-woodpecker + # registry: code.philo.ydns.eu + # username: + # from_secret: registry_username + # password: + # from_secret: registry_password + # env-files: + # DOCKER_HUB_AUTH: /home/build/.config/containers/auth.json # settings: # registry: code.philo.ydns.eu From 01bc102185e32ebef4cb0e5be290d3a14736edaa Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 02:36:33 +0200 Subject: [PATCH 14/28] All python + container OK --- .woodpecker/build.yaml | 43 +----------------------------------------- 1 file changed, 1 insertion(+), 42 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 3c841b3..c4d99e8 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -6,7 +6,7 @@ depends_on: - test steps: - build_and_release_and_push: + container_build_release_push: image: maltegrosse/woodpecker-buildah:0.0.12 settings: registry: code.philo.ydns.eu @@ -19,47 +19,6 @@ steps: password: from_secret: registry_password - - # publish: - # image: docker.io/taywee/woodpecker-buildah:latest - # settings: - # tag: code.philo.ydns.eu/test-woodpecker - # registry: code.philo.ydns.eu - # username: - # from_secret: registry_username - # password: - # from_secret: registry_password - # env-files: - # DOCKER_HUB_AUTH: /home/build/.config/containers/auth.json - - # settings: - # registry: code.philo.ydns.eu - # repo: code.philo.ydns.eu/test-woodpecker - # tags: ${CI_COMMIT_SHA} - # cache: true - # skip_tls_verify: false # set to true for testing registries ONLY with self-signed certs - # build_args: - # - COMMIT_SHA=${CI_COMMIT_SHA} - # - COMMIT_AUTHOR_EMAIL=${CI_COMMIT_AUTHOR_EMAIL} - # username: - # from_secret: docker-username - # password: - # from_secret: docker-password - # build_container: - # image: code.philo.ydns.eu/philorg/podman - # environment: - # REGISTRY_URL: https://code.philo.ydns.eu - # OWNER: philorg - # CONTAINERFILE: Containerfile - # commands: - # - podman build -t code.philo.ydns.eu/philorg/test-woodpecker -f $CONTAINERFILE - # - # - # publish_container: - # image: code.philo.ydns.eu/philorg/podman - # commands: - # - echo $REGISTRY_LOGIN_TOKEN | podman login -u --password-stdin registry.gitlab.com - sync: image: ghcr.io/astral-sh/uv:python3.13-alpine volumes: From 5fb9b992fa84214a371485630f210ea4060784c1 Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 02:38:09 +0200 Subject: [PATCH 15/28] Cleanup --- Containerfile | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Containerfile b/Containerfile index f710619..0c139a6 100644 --- a/Containerfile +++ b/Containerfile @@ -1,10 +1,6 @@ # Build: podman build -t code.philo.ydns.eu/philorg/test-woodpecker -f Containerfile -#FROM docker.io/python:3.13-slim FROM docker.io/python:alpine -#FROM ghcr.io/astral-sh/uv:python3.13-alpine -#RUN apk add --no-cache git -#COPY --from=ghcr.io/astral-sh/uv:python3.13-alpine /usr/local/bin/uv /usr/local/bin/ COPY . /app From 9498ae680c86b07a628589bd38c76bf99ef9ce70 Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 03:24:46 +0200 Subject: [PATCH 16/28] Cleanup --- .woodpecker/build.yaml | 8 -------- .woodpecker/test.yaml | 2 -- 2 files changed, 10 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index c4d99e8..a1f21da 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -50,11 +50,3 @@ steps: commands: - uv publish --publish-url $REGISTRY_URL/api/packages/$OWNER/pypi --token $REGISTRY_TOKEN dist/*.whl failure: ignore - -# TODO: container - # For podman build: see https://woodpecker-ci.org/blog/podman-image-build-sigstore - # podman-privileged-test: - # image: quay.io/podman/stable - # commands: - # - echo From https://docs.gitlab.com/runner/executors/kubernetes/use_podman_with_kubernetes/ - # - podman build . -t playground-bis:testing diff --git a/.woodpecker/test.yaml b/.woodpecker/test.yaml index 136bf7b..7d3ae6f 100644 --- a/.woodpecker/test.yaml +++ b/.woodpecker/test.yaml @@ -5,7 +5,6 @@ when: - event: tag steps: - sync: image: ghcr.io/astral-sh/uv:python3.13-alpine volumes: @@ -17,7 +16,6 @@ steps: - uv sync test: - #image: ghcr.io/astral-sh/uv:alpine image: ghcr.io/astral-sh/uv:python3.13-alpine commands: - .venv/bin/pytest -s tests/basic.py From 8916c5e6b044d8e5bc7f651e8589c271575846be Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 02:58:36 +0000 Subject: [PATCH 17/28] Update README.md --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 53ef454..26634f9 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ # test-woodpecker-ci -Yo +[![status-badge](https://code.philo.ydns.eu/woodpecker/api/badges/5/status.svg)](https://code.philo.ydns.eu/woodpecker/repos/5) + +This is a sandbox for building packages (pypi and container) with Woodpecker CI. \ No newline at end of file From feff5a08b6ad4a9b4cad2698527277f558bc6184 Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 12:29:51 +0200 Subject: [PATCH 18/28] Use local woodpecker-buildah image --- .woodpecker/build.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index a1f21da..ef00013 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -7,7 +7,8 @@ depends_on: steps: container_build_release_push: - image: maltegrosse/woodpecker-buildah:0.0.12 + #image: docker.io/maltegrosse/woodpecker-buildah:0.0.12 + image: code.philo.ydns.eu/philorg/woodpecker-buildah settings: registry: code.philo.ydns.eu repository: philorg/test-woodpecker From 0dfccc3392881626cecbf75387a22b3569f8200d Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 13:13:06 +0200 Subject: [PATCH 19/28] t --- .woodpecker/build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index ef00013..90f84bc 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -7,8 +7,8 @@ depends_on: steps: container_build_release_push: - #image: docker.io/maltegrosse/woodpecker-buildah:0.0.12 - image: code.philo.ydns.eu/philorg/woodpecker-buildah + image: docker.io/maltegrosse/woodpecker-buildah:0.0.12 + #image: code.philo.ydns.eu/philorg/woodpecker-buildah settings: registry: code.philo.ydns.eu repository: philorg/test-woodpecker From a5518752fe9a89b06657ba0426e368a47ae5f818 Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 13:44:12 +0200 Subject: [PATCH 20/28] Use dynamic version --- pyproject.toml | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 14588ec..3fcc624 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "test-woodpecker-ci" -version = "0.1.1" -description = "Add your description here" +dynamic = ["version"] +description = "Sandbox for Woodpecker CI" readme = "README.md" requires-python = ">=3.13" dependencies = [] @@ -10,11 +10,22 @@ dependencies = [] foo = "test_woodpecker_ci.main:main" [build-system] -requires = ["hatchling"] +requires = ["hatchling", "uv-dynamic-versioning"] build-backend = "hatchling.build" +[tool.hatch.version] +source = "uv-dynamic-versioning" + [tool.hatch.build.targets.wheel] packages = ["src/test_woodpecker_ci"] [dependency-groups] dev = ["httpx>=0.28.1", "pytest>=8.4.1"] + +[tool.uv-dynamic-versioning] +style = "semver" + +[tool.uv] +extra-index-url = [ + "https://code.philo.ydns.eu/api/packages/philorg/pypi/simple/", +] From d4dcbac8d93dd74147b75133830198ac3195f011 Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 13:48:06 +0200 Subject: [PATCH 21/28] Use dynamic version --- pyproject.toml | 2 +- uv.lock | 15 ++++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 3fcc624..55559fa 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,7 +20,7 @@ source = "uv-dynamic-versioning" packages = ["src/test_woodpecker_ci"] [dependency-groups] -dev = ["httpx>=0.28.1", "pytest>=8.4.1"] +dev = ["dunamai>=1.24.1", "httpx>=0.28.1", "pytest>=8.4.1"] [tool.uv-dynamic-versioning] style = "semver" diff --git a/uv.lock b/uv.lock index 72afab8..2cb8967 100644 --- a/uv.lock +++ b/uv.lock @@ -33,6 +33,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" }, ] +[[package]] +name = "dunamai" +version = "1.24.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "packaging" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/54/22/7f46b0146ef614cd6f80e4bcb188dabe33e90b4e0af028e16f597f5826ad/dunamai-1.24.1.tar.gz", hash = "sha256:3aa3348f77242da8628b23f11e89569343440f0f912bcef32a1fa891cf8e7215", size = 45616, upload-time = "2025-05-09T13:48:46.417Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1d/d6/6ed8b439906ca2e88d65bddf002e21239678aca6001d8fb82e8e2b196245/dunamai-1.24.1-py3-none-any.whl", hash = "sha256:4370e406d8ce195fc4b066b5c326bfa9adb269c4b8719b4e4fd90b63a2144bf7", size = 26654, upload-time = "2025-05-09T13:48:45.442Z" }, +] + [[package]] name = "h11" version = "0.16.0" @@ -142,11 +154,11 @@ wheels = [ [[package]] name = "test-woodpecker-ci" -version = "0.1.0" source = { editable = "." } [package.dev-dependencies] dev = [ + { name = "dunamai" }, { name = "httpx" }, { name = "pytest" }, ] @@ -155,6 +167,7 @@ dev = [ [package.metadata.requires-dev] dev = [ + { name = "dunamai", specifier = ">=1.24.1" }, { name = "httpx", specifier = ">=0.28.1" }, { name = "pytest", specifier = ">=8.4.1" }, ] From caedb1fe5250488863d2547418f1b962f7be4cfd Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 13:49:47 +0200 Subject: [PATCH 22/28] Use dynamic version --- src/test_woodpecker_ci/__init__.py | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 src/test_woodpecker_ci/__init__.py diff --git a/src/test_woodpecker_ci/__init__.py b/src/test_woodpecker_ci/__init__.py new file mode 100644 index 0000000..6da5d7b --- /dev/null +++ b/src/test_woodpecker_ci/__init__.py @@ -0,0 +1,10 @@ +import importlib.metadata + +try: + from dunamai import Version, Style + + __version__ = Version.from_git().serialize(style=Style.SemVer, dirty=True) +except ImportError: + # __name__ can be used if the package name is the same + # as the directory. Otherwise, specify it explicitely. + __version__ = importlib.metadata.version(__name__) From 9dd00e3deb4d1c97f2665b6f0991baa014e143b9 Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 14:25:33 +0200 Subject: [PATCH 23/28] Use local images --- .woodpecker/build.yaml | 4 ++-- .woodpecker/test.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 90f84bc..ef00013 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -7,8 +7,8 @@ depends_on: steps: container_build_release_push: - image: docker.io/maltegrosse/woodpecker-buildah:0.0.12 - #image: code.philo.ydns.eu/philorg/woodpecker-buildah + #image: docker.io/maltegrosse/woodpecker-buildah:0.0.12 + image: code.philo.ydns.eu/philorg/woodpecker-buildah settings: registry: code.philo.ydns.eu repository: philorg/test-woodpecker diff --git a/.woodpecker/test.yaml b/.woodpecker/test.yaml index 7d3ae6f..6326edc 100644 --- a/.woodpecker/test.yaml +++ b/.woodpecker/test.yaml @@ -6,7 +6,7 @@ when: steps: sync: - image: ghcr.io/astral-sh/uv:python3.13-alpine + image: code.philo.ydns.eu/philorg/uv volumes: - uv-cache:/uv-cache environment: From 1190718e984aeb8b5e3538bf62a08a44eb0363dc Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 14:47:11 +0200 Subject: [PATCH 24/28] Use local images --- .woodpecker/build.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index ef00013..a5de771 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -21,7 +21,7 @@ steps: from_secret: registry_password sync: - image: ghcr.io/astral-sh/uv:python3.13-alpine + image: code.philo.ydns.eu/philorg/uv volumes: - uv-cache:/uv-cache environment: @@ -31,7 +31,7 @@ steps: - uv sync build: - image: ghcr.io/astral-sh/uv:python3.13-alpine + image: code.philo.ydns.eu/philorg/uv volumes: - uv-cache:/uv-cache environment: @@ -42,7 +42,7 @@ steps: - uv cache prune --ci push_python: - image: ghcr.io/astral-sh/uv:python3.13-alpine + image: code.philo.ydns.eu/philorg/uv environment: OWNER: philorg REGISTRY_URL: https://code.philo.ydns.eu From e5e6c029fa9a89d8997f8de3c9af6e7154f894f5 Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 14:57:16 +0200 Subject: [PATCH 25/28] AAdd access to git in Containerfile --- Containerfile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Containerfile b/Containerfile index 0c139a6..17e619d 100644 --- a/Containerfile +++ b/Containerfile @@ -7,6 +7,8 @@ COPY . /app # Sync the project into a new environment, using the frozen lockfile WORKDIR /app -RUN --mount=from=ghcr.io/astral-sh/uv:alpine,source=/usr/local/bin/uv,target=/bin/uv uv pip install --system . +RUN --mount=from=code.philorg.ydns.eu/uv:alpine,source=/usr/local/bin/uv,target=/bin/uv \ + --mount=from=code.philorg.ydns.eu/uv:alpine,source=/usr/bin/git,target=/bin/git \ + uv pip install --system . ENTRYPOINT ["foo"] From 9a948fde8ebc842de874546e37af5a4b9eff501b Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 15:00:40 +0200 Subject: [PATCH 26/28] Fix --- Containerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Containerfile b/Containerfile index 17e619d..4c34d3b 100644 --- a/Containerfile +++ b/Containerfile @@ -7,8 +7,8 @@ COPY . /app # Sync the project into a new environment, using the frozen lockfile WORKDIR /app -RUN --mount=from=code.philorg.ydns.eu/uv:alpine,source=/usr/local/bin/uv,target=/bin/uv \ - --mount=from=code.philorg.ydns.eu/uv:alpine,source=/usr/bin/git,target=/bin/git \ +RUN --mount=from=code.philorg.ydns.eu/philorg/uv:alpine,source=/usr/local/bin/uv,target=/bin/uv \ + --mount=from=code.philorg.ydns.eu/philorg/uv:alpine,source=/usr/bin/git,target=/bin/git \ uv pip install --system . ENTRYPOINT ["foo"] From d1c9bc1c0177bf614a8f34dd4883bd3df776d17e Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 15:33:43 +0200 Subject: [PATCH 27/28] Ficx --- Containerfile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Containerfile b/Containerfile index 4c34d3b..f875859 100644 --- a/Containerfile +++ b/Containerfile @@ -4,11 +4,13 @@ FROM docker.io/python:alpine COPY . /app -# Sync the project into a new environment, using the frozen lockfile WORKDIR /app -RUN --mount=from=code.philorg.ydns.eu/philorg/uv:alpine,source=/usr/local/bin/uv,target=/bin/uv \ - --mount=from=code.philorg.ydns.eu/philorg/uv:alpine,source=/usr/bin/git,target=/bin/git \ +# Sync the project into a new environment, using the frozen lockfile +RUN \ + --mount=from=code.philo.ydns.eu/philorg/uv,source=/usr/local/bin/uv,target=/bin/uv \ + --mount=from=code.philo.ydns.eu/philorg/uv,source=/usr/lib/libpcre2-8.so.0,target=/usr/lib/libpcre2-8.so.0 \ + --mount=from=code.philo.ydns.eu/philorg/uv,source=/usr/bin/git,target=/usr/bin/git \ uv pip install --system . ENTRYPOINT ["foo"] From 763e9aa70bf1bdfb5826c9e3718f4aa2e5ef2ba6 Mon Sep 17 00:00:00 2001 From: phil Date: Wed, 25 Jun 2025 15:37:29 +0200 Subject: [PATCH 28/28] Rename container --- .woodpecker/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index a5de771..f328164 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -11,7 +11,7 @@ steps: image: code.philo.ydns.eu/philorg/woodpecker-buildah settings: registry: code.philo.ydns.eu - repository: philorg/test-woodpecker + repository: philorg/test-woodpecker-python tags: ${CI_COMMIT_SHA} architectures: amd64 context: Containerfile