feat(cleanup): cleaning up the project with somme standards

This commit is contained in:
2023-05-04 17:06:19 +02:00
parent 53ece61384
commit d84b111049
13 changed files with 151 additions and 0 deletions

View File

@ -0,0 +1,8 @@
---
nameReference:
- kind: Secret
fieldSpecs:
- path: spec/superuserSecret/name
kind: Cluster
- path: spec/bootstrap/initdb/secret/name
kind: Cluster

View File

@ -0,0 +1,36 @@
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component
generatorOptions:
disableNameSuffixHash: true
configurations:
- ./configurations/cnpg-cluster.yaml
resources:
- ./resources/airflow-cnpg-cluster.yaml
secretgenerator:
- name: airflow-postgres-admin
type: secret
literals:
- username=postgres
- password=notsosecret
- name: airflow-postgres-user
type: Secret
literals:
- username=airflow
- password=NotSoSecret
- name: airflow-postgres-connection
type: Secret
literals:
- connection=postgresql://airflow:NotSoSecret@${DB_SERVICE_HOST}:${DB_SERVICE_PORT}/airflow
vars:
- name: AIRFLOW_DATABASE_SERVICE_NAME
objref:
name: airflow-postgres
kind: Cluster
apiVersion: postgresql.cnpg.io/v1
fieldref:
fieldpath: metadata.name

View File

@ -0,0 +1,17 @@
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: airflow-postgres
spec:
instances: 3
primaryUpdateStrategy: unsupervised
superuserSecret:
name: airflow-postgres-admin
bootstrap:
initdb:
database: airflow
owner: airflow
secret:
name: airflow-postgres-user
storage:
size: 2Gi

62
base/kustomization.yaml Normal file
View File

@ -0,0 +1,62 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
generatorOptions:
disableNameSuffixHash: true
components:
- ./components/airflow-cnpg-database
secretGenerator:
- name: airflow-webserver-secret-key
type: secret
literals:
- webserver-secret-key=c94b62cffbf4dd1c42747fc65007054432f10c185c5e6160
configMapGenerator:
- name: 'airflow-connections'
literals:
- AIRFLOW_CONN_TEST="test://test.do.not.use"
helmCharts:
- name: airflow
repo: https://airflow.apache.org
version: 1.9.0
releaseName: airflow
valuesInline:
postgresql:
enabled: false
pgbouncer:
enabled: true
data:
metadataSecretName: airflow-postgres-connection
webserverSecretKeySecretName: airflow-webserver-secret-key
env:
- name: "DB_SERVICE_HOST"
value: "$(AIRFLOW_DATABASE_SERVICE_NAME)-rw"
- name: "DB_SERVICE_PORT"
value: "5432"
webserver:
defaultUser:
username: admin
password: NotSoSecret
workers:
replicas: 3
dags:
gitSync:
enabled: false
extraEnvFrom: |
- configMapRef:
name: '{{ .Release.Name }}-connections'
scheduler:
extraInitContainers:
- name: airflow-create-connections
image: reg.cadoles.com/cadoles/airflow:latest
args:
- bash
- -c
- |-
exec \
./scripts/create-connections.sh
- --

View File

@ -0,0 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
name: airflow

3
base/secrets/.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
*
!.gitignore
!.gitkeep

0
base/secrets/.gitkeep Normal file
View File