Repository navigation
Conversation
A declarative endpoint field with no constraints and no default (e.g.
`price: {type: float}`) was given an Ellipsis class attribute. Ellipsis is
not a FieldInfo, so FieldInfoStripper never removed it, and the leftover
class attribute stopped SQLAlchemy from mapping the column. The column was
created NOT NULL by create_all but its value was silently dropped on INSERT,
so every write to such a field raised a NOT NULL violation.
Leave these fields annotation-only: the annotation alone already makes the
generated schema field required, and the column now maps and persists.
Claude-Session: https://claude.ai/code/session_01LWV5jPTwsAehx2rM7UZjtq
Deploy a declarative CRUD API over an existing database with only a values.yaml: the chart hands LightApi.from_config the declarative config and runs it, so teams write no CRUD code. - ServerCommand (lightapi/server.py) + `lightapi serve` console script + `python -m lightapi`: boot a server from LIGHTAPI_CONFIG/HOST/PORT. - Always-on /healthz route (lightapi/health.py) for orchestrator probes, wired once into both run() and build_app(). - Generic Dockerfile: one image, config injected at deploy time. - charts/lightapi: Deployment (config via ConfigMap, secrets via Secret, /healthz liveness+readiness probes), Service, Secret, ServiceAccount, optional Ingress and HPA. Verified end to end on minikube: helm install/upgrade/rollback, config-change pod roll, secret and existingSecret paths, HPA, method restriction, optimistic locking, and broken-config CrashLoopBackOff with no traffic served. Claude-Session: https://claude.ai/code/session_01LWV5jPTwsAehx2rM7UZjtq
- README: env vars (LIGHTAPI_CONFIG/HOST/PORT), a `lightapi serve` note, a health-check note, and a Kubernetes (Helm) section. - docs/deployment/helm.md: full Helm guide with a minikube walkthrough. - charts/lightapi/README.md: chart usage and a complete values reference. - docs/deployment/docker.md: align with the real image (lightapi serve + LIGHTAPI_CONFIG) instead of the old gunicorn placeholder. - Add the Helm page to the deployment nav. Claude-Session: https://claude.ai/code/session_01LWV5jPTwsAehx2rM7UZjtq
Reconcile the two Docker packaging paths. Keep master's published iklob1/lightapi image, docker/entrypoint.py, and docker-publish workflow as the container story; keep this branch's Helm chart, /healthz route, and the YAML column-mapping fix on top. The chart now defaults to iklob1/lightapi. Conflicts resolved: - Dockerfile / .dockerignore / docs/deployment/docker.md: took master's. - lightapi/lightapi.py build_app(): kept master's CORS wiring and added the /healthz route via _asgi_routes(). The `lightapi serve` console command stays as a general library CLI alongside the container entrypoint. Claude-Session: https://claude.ai/code/session_01LWV5jPTwsAehx2rM7UZjtq
Package LightAPI as a Helm chart for zero-CRUD-code deploys
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Promote dev to master. This triggers the release pipeline: PyPI bump to 0.1.28, build + publish, tag v0.1.28, and the Docker image build (iklob1/lightapi:0.1.28 with /healthz).
Contents
Validated: 327 tests green on 3.10/3.11/3.12, helm lint clean, behavior battery on minikube.
https://claude.ai/code/session_01LWV5jPTwsAehx2rM7UZjtq