150 lines
4.2 KiB
YAML
150 lines
4.2 KiB
YAML
---
|
|
- name: Create namespace
|
|
kubernetes.core.k8s:
|
|
api_version: v1
|
|
kind: Namespace
|
|
name: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
state: present
|
|
|
|
- name: Create uyuni-selfsigned-issuer Issuer
|
|
kubernetes.core.k8s:
|
|
api_version: cert-manager.io/v1
|
|
kind: Issuer
|
|
name: uyuni-selfsigned-issuer
|
|
namespace: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
definition:
|
|
spec:
|
|
selfSigned: {}
|
|
state: present
|
|
when: uyuni_create_certificates | bool
|
|
|
|
- name: Create uyuni Certificates
|
|
kubernetes.core.k8s:
|
|
api_version: cert-manager.io/v1
|
|
kind: Certificate
|
|
name: "{{ item.name }}"
|
|
namespace: "{{ item.namespace | default(uyuni_namespace) }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
definition:
|
|
spec:
|
|
secretName: "{{ item.secretName }}"
|
|
dnsNames: "{{ item.dnsNames }}"
|
|
issuerRef:
|
|
name: uyuni-selfsigned-issuer
|
|
kind: Issuer
|
|
state: present
|
|
loop: "{{ uyuni_certificates }}"
|
|
when: uyuni_create_certificates | bool
|
|
|
|
- name: Wait for uyuni-ingress-cert certificate to be ready
|
|
kubernetes.core.k8s_info:
|
|
api_version: cert-manager.io/v1
|
|
kind: Certificate
|
|
name: uyuni-ingress-cert
|
|
namespace: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
register: _uyuni_cert_status
|
|
until: _uyuni_cert_status.resources[0].status.conditions | selectattr('type', 'equalto', 'Ready') | selectattr('status', 'equalto', 'True') | list | length > 0
|
|
retries: 60
|
|
delay: 10
|
|
when: uyuni_create_certificates | bool
|
|
|
|
- name: Wait for uyuni-db-cert certificate to be ready
|
|
kubernetes.core.k8s_info:
|
|
api_version: cert-manager.io/v1
|
|
kind: Certificate
|
|
name: uyuni-db-cert
|
|
namespace: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
register: _db_cert_status
|
|
until: _db_cert_status.resources[0].status.conditions | selectattr('type', 'equalto', 'Ready') | selectattr('status', 'equalto', 'True') | list | length > 0
|
|
retries: 60
|
|
delay: 10
|
|
when: uyuni_create_certificates | bool
|
|
|
|
- name: Create db-admin-credentials secret
|
|
kubernetes.core.k8s:
|
|
api_version: v1
|
|
kind: Secret
|
|
name: db-admin-credentials
|
|
namespace: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
definition:
|
|
type: Opaque
|
|
data:
|
|
username: "{{ uyuni_db_admin_user | b64encode }}"
|
|
password: "{{ uyuni_db_admin_password | b64encode }}"
|
|
database: "{{ uyuni_db_name | b64encode }}"
|
|
state: present
|
|
|
|
- name: Create db-credentials secret
|
|
kubernetes.core.k8s:
|
|
api_version: v1
|
|
kind: Secret
|
|
name: db-credentials
|
|
namespace: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
definition:
|
|
type: Opaque
|
|
data:
|
|
username: "{{ uyuni_db_user | b64encode }}"
|
|
password: "{{ uyuni_db_admin_password | b64encode }}"
|
|
state: present
|
|
|
|
- name: Create reportdb-credentials secret
|
|
kubernetes.core.k8s:
|
|
api_version: v1
|
|
kind: Secret
|
|
name: reportdb-credentials
|
|
namespace: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
definition:
|
|
type: Opaque
|
|
data:
|
|
username: "{{ uyuni_db_report_user | b64encode }}"
|
|
password: "{{ uyuni_db_report_password | b64encode }}"
|
|
state: present
|
|
|
|
- name: Create admin-credentials secret
|
|
kubernetes.core.k8s:
|
|
api_version: v1
|
|
kind: Secret
|
|
name: admin-credentials
|
|
namespace: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
definition:
|
|
type: Opaque
|
|
data:
|
|
username: "{{ uyuni_admin_user | b64encode }}"
|
|
password: "{{ uyuni_admin_password | b64encode }}"
|
|
state: present
|
|
|
|
- name: Create uyuni-ca ConfigMap
|
|
kubernetes.core.k8s:
|
|
api_version: v1
|
|
kind: ConfigMap
|
|
name: uyuni-ca
|
|
namespace: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
definition:
|
|
data:
|
|
ca.crt: ""
|
|
state: present
|
|
|
|
- name: Create db-ca ConfigMap
|
|
kubernetes.core.k8s:
|
|
api_version: v1
|
|
kind: ConfigMap
|
|
name: db-ca
|
|
namespace: "{{ uyuni_namespace }}"
|
|
kubeconfig: "{{ uyuni_kubeconfig }}"
|
|
definition:
|
|
data:
|
|
ca.crt: ""
|
|
state: present
|
|
|
|
- name: Include Helm installation
|
|
ansible.builtin.include_tasks: helm.yml
|