Metadata-Version: 2.3
Name: django-kubernetes-backend
Version: 0.1.1
Summary: 
Author: Taylor Mitchell
Requires-Python: >=3.13
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: django (>=5.1.7,<6.0.0)
Requires-Dist: kubernetes (>=32.0.1,<33.0.0)
Description-Content-Type: text/markdown

# Django Kubernetes Backend

A Django model backend that overlays Kubernetes (K8s) resources and Custom Resource Definitions (CRDs), providing an ORM-like interface for interacting with Kubernetes resources. This project aims to integrate Django's model patterns with Kubernetes' API, allowing developers to manage Kubernetes resources using familiar Django model syntax.

## Features

- **Kubernetes Integration**:
  - Supports both namespace-scoped and cluster-wide Kubernetes resources.
  - Configurable authentication using kubeconfig (from environment, specific file, or in-cluster service account token).

- **Model Design**:
  - Uses a metaclass (`KubernetesModelBase`) to define models for Kubernetes resources, mimicking Django's model patterns.
  - Adds a `KubernetesMeta` inner class for specifying resource configuration (e.g. `resource_type`, `api_version`, `kind`, `namespace`, `cluster_scoped`).

- **Dynamic Field Generation**:
  - Automatically discovers and generates Django model fields based on the Kubernetes OpenAPI schema.
  - Maps Kubernetes schema types (e.g. `string`, `integer`, `array`) to Django field types (e.g. `CharField`, `IntegerField`, `JSONField`

