feat: Add orchestration models and services for Kubernetes cluster management

- Implemented Pydantic models for Kubernetes cluster state representation in `cluster.py`.
- Created a `Resource` class for converting JSON/dict to Python objects in `resource.py`.
- Established user models and services for user management, including password hashing and JWT token generation.
- Developed application orchestration services for managing Kubernetes applications, including installation and uninstallation.
- Added cluster service for retrieving cluster status and health reports.
- Introduced node service for fetching node resource details and health status.
- Implemented user service for handling user authentication and management.
This commit is contained in:
2025-09-02 02:50:42 +00:00
parent 00039b2fe1
commit c7f8e69d61
65 changed files with 3649 additions and 0 deletions

28
config.yaml.template Normal file
View File

@ -0,0 +1,28 @@
orchestration:
kube:
kubectl_file: "~/.ocdp/kube/config"
applications_dir: "~/.ocdp/kube/applications"
logs_dir: "~/.ocdp/kube/logs"
logger:
loki:
url: "https://loki.bwgdi.com/loki/api/v1/push"
labels: "application=myapp,environment=develop"
label_keys: ""
database:
mysql:
host: "localhost"
port: 3306
db_name: "ocdp"
username: "root"
# ❗️ Password should be read from environment variables, not provided here
password:
hash:
algorithm: "ARGON2"
token:
jwt:
signing_algorithm: "HS256"
# ❗️ Secret should be read from environment variables, not provided here