Add Dockerfile and Woodpecker CI pipeline #6
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Type
Feature
Repo
forgejo_admin/minio-apiLineage
plan-minio-mobile→ Phase 2 → Phase 2c (k8s Deployment + CI)User Story
As a platform operator
I want the minio-api service containerized with automated CI
So that every push to main builds, tests, lints, and publishes a Docker image to Harbor
Context
The minio-api FastAPI service is code-complete (15 endpoints, 90 tests, Keycloak auth). This adds the container and CI pipeline so it can be deployed to k3s. Follow the same pattern as basketball-api and mcd-tracker-api.
Harbor registry:
harbor.tail5b443a.ts.netWoodpecker CI:
ci.tail5b443a.ts.netForgejo PyPI (for minio-sdk dependency):
https://forgejo.tail5b443a.ts.net/api/packages/forgejo_admin/pypi/simple/File Targets
Files to create:
Dockerfile— Python 3.12-slim, install deps (including minio-sdk from Forgejo PyPI), uvicorn entrypoint.woodpecker.yml— pipeline: lint (ruff), test (pytest), build image, push to HarborFiles to modify:
.woodpecker.ymlif it already exists — update to include Docker build/push stepsAcceptance Criteria
docker build .succeeds locallydocker runstarts uvicorn and serves/docslatest/health(simple 200 OK)MINIO_ENDPOINT,MINIO_ACCESS_KEY,MINIO_SECRET_KEY,KEYCLOAK_URL,KEYCLOAK_REALM,AUTH_DISABLEDTest Expectations
docker build .completes without errorspytest tests/ -v(in CI pipeline)Constraints
python:3.12-slimpip installwith--extra-index-urlfor Forgejo PyPIminio-api(may need to be created)Checklist
Related
phase-minio-mobile-2c-k8s-deploy— phase noteproject-minio-mobile— project this advances