Add Automation Orchestrator Install and setup
This commit is contained in:
89
roles/cloudnativepg_operator/meta/argument_specs.yml
Normal file
89
roles/cloudnativepg_operator/meta/argument_specs.yml
Normal file
@@ -0,0 +1,89 @@
|
||||
---
|
||||
argument_specs:
|
||||
main:
|
||||
short_description: Install CloudNativePG via OLM and provision a PostgreSQL Cluster + Databases
|
||||
description:
|
||||
- Installs the CloudNativePG operator via OLM (certified-operators catalog, Manual install-plan
|
||||
approval which this role approves itself) and creates a single-instance PostgreSQL Cluster CR
|
||||
with Database CRs for the orchestrator, temporal, and temporal_visibility databases — all owned
|
||||
by one shared PostgreSQL role.
|
||||
- >-
|
||||
WARNING: this is a demo/dev-oriented, non-HA PostgreSQL deployment. For production, point
|
||||
automation_orchestrator_operator at a customer-managed PostgreSQL instance instead.
|
||||
- The generated owner-role password is stored in Vault at cloudnativepg_operator_vault_path
|
||||
and reused on subsequent runs for idempotency.
|
||||
options:
|
||||
cloudnativepg_operator_operator_namespace:
|
||||
description: Namespace for the CloudNativePG operator.
|
||||
type: str
|
||||
default: cloudnative-pg
|
||||
cloudnativepg_operator_channel:
|
||||
description: OLM subscription channel.
|
||||
type: str
|
||||
default: stable-v1
|
||||
cloudnativepg_operator_name:
|
||||
description: Operator package name in the catalog.
|
||||
type: str
|
||||
default: cloudnative-pg
|
||||
cloudnativepg_operator_catalog_source:
|
||||
description: Name of the CatalogSource to subscribe from.
|
||||
type: str
|
||||
default: certified-operators
|
||||
cloudnativepg_operator_wait_timeout:
|
||||
description: Seconds to wait for the operator, CSV, and Database CRs to become ready.
|
||||
type: int
|
||||
default: 600
|
||||
cloudnativepg_operator_cluster_namespace:
|
||||
description: Namespace for the Cluster CR, credential Secrets, and Database CRs.
|
||||
type: str
|
||||
default: automation-orchestrator
|
||||
cloudnativepg_operator_cluster_name:
|
||||
description: Name of the CloudNativePG Cluster CR.
|
||||
type: str
|
||||
default: orchestrator-postgres
|
||||
cloudnativepg_operator_owner_user:
|
||||
description: PostgreSQL role that owns all provisioned databases.
|
||||
type: str
|
||||
default: orchestrator
|
||||
cloudnativepg_operator_instances:
|
||||
description: Number of Postgres instances in the Cluster (1 = no HA).
|
||||
type: int
|
||||
default: 1
|
||||
cloudnativepg_operator_image_name:
|
||||
description: PostgreSQL container image for the Cluster.
|
||||
type: str
|
||||
default: ghcr.io/cloudnative-pg/postgresql:15
|
||||
cloudnativepg_operator_storage_size:
|
||||
description: Size of the Cluster's PersistentVolumeClaim.
|
||||
type: str
|
||||
default: 5Gi
|
||||
cloudnativepg_operator_storage_class:
|
||||
description: StorageClass for the Cluster's PVC. Empty string uses the cluster default.
|
||||
type: str
|
||||
default: ""
|
||||
cloudnativepg_operator_max_connections:
|
||||
description: postgresql.parameters.max_connections. Set to 0 to omit and use the Postgres default.
|
||||
type: int
|
||||
default: 200
|
||||
cloudnativepg_operator_databases:
|
||||
description: List of {name, dbname} Database CRs to create, all owned by cloudnativepg_operator_owner_user.
|
||||
type: list
|
||||
elements: dict
|
||||
cloudnativepg_operator_secrets:
|
||||
description: >-
|
||||
List of {name, database} credential Secrets to create (type kubernetes.io/basic-auth), all
|
||||
sharing the same generated username/password. secrets[0] is used as the CNPG bootstrap.initdb secret.
|
||||
type: list
|
||||
elements: dict
|
||||
cloudnativepg_operator_vault_mount:
|
||||
description: Vault KV2 mount point where the generated owner-role password is stored.
|
||||
type: str
|
||||
default: kv
|
||||
cloudnativepg_operator_vault_path:
|
||||
description: Vault KV2 path where the generated owner-role password is stored.
|
||||
type: str
|
||||
default: cloudnativepg/orchestrator-postgres
|
||||
cloudnativepg_operator_no_log:
|
||||
description: Set to false to disable no_log and expose secret values in task output. Never set false in shared environments.
|
||||
type: bool
|
||||
default: true
|
||||
18
roles/cloudnativepg_operator/meta/main.yml
Normal file
18
roles/cloudnativepg_operator/meta/main.yml
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: ptoal
|
||||
description: Install CloudNativePG via OLM and provision a PostgreSQL Cluster for Automation Orchestrator
|
||||
license: MIT
|
||||
min_ansible_version: "2.16"
|
||||
platforms:
|
||||
- name: GenericLinux
|
||||
versions:
|
||||
- all
|
||||
galaxy_tags:
|
||||
- openshift
|
||||
- postgresql
|
||||
- cnpg
|
||||
- operator
|
||||
- olm
|
||||
|
||||
dependencies: []
|
||||
Reference in New Issue
Block a user