Add Automation Orchestrator Install and setup
This commit is contained in:
158
roles/automation_orchestrator_operator/meta/argument_specs.yml
Normal file
158
roles/automation_orchestrator_operator/meta/argument_specs.yml
Normal file
@@ -0,0 +1,158 @@
|
||||
---
|
||||
argument_specs:
|
||||
main:
|
||||
short_description: Install Automation Orchestrator via its OLM operator (AutomationOrchestrator CR)
|
||||
description:
|
||||
- Installs the Automation Orchestrator operator via OLM (redhat-operators by default, or a
|
||||
custom CatalogSource for pre-release builds) and creates a single
|
||||
AutomationOrchestrator CR. Adopts an existing install (OperatorGroup, installed CSV)
|
||||
when operator_namespace points at one.
|
||||
- >-
|
||||
Automation Orchestrator is bring-your-own-PostgreSQL: this role only references
|
||||
existing K8s Secrets (keys: database, username, password) — it does not create the
|
||||
database/user or their credential Secret. Defaults match the cloudnativepg_operator
|
||||
role's output; run that role first, or point postgres_* variables and the secret-name
|
||||
variables at a customer-managed PostgreSQL instance.
|
||||
- Modeled on https://github.com/ansible/aapctl and https://github.com/automation-nexus/automation-orchestrator-operator.
|
||||
options:
|
||||
automation_orchestrator_operator_operator_namespace:
|
||||
description: Namespace for the Automation Orchestrator operator and (by default) its CR.
|
||||
type: str
|
||||
default: automation-orchestrator
|
||||
automation_orchestrator_operator_channel:
|
||||
description: OLM subscription channel.
|
||||
type: str
|
||||
default: stable
|
||||
automation_orchestrator_operator_name:
|
||||
description: Operator package name in the catalog.
|
||||
type: str
|
||||
default: automation-orchestrator-operator
|
||||
automation_orchestrator_operator_catalog_source_name:
|
||||
description: CatalogSource to subscribe from (created by this role only when catalog_image is set).
|
||||
type: str
|
||||
default: redhat-operators
|
||||
automation_orchestrator_operator_catalog_image:
|
||||
description: >-
|
||||
Index image for a custom CatalogSource (e.g. a pre-release build). Empty string
|
||||
uses the existing catalog_source_name without creating a CatalogSource.
|
||||
type: str
|
||||
default: ""
|
||||
automation_orchestrator_operator_install_plan_approval:
|
||||
description: >-
|
||||
Subscription installPlanApproval (Manual or Automatic). With Manual, the role approves
|
||||
only the initial InstallPlan; once a CSV is installed, upgrades are left pending.
|
||||
type: str
|
||||
choices: [Manual, Automatic]
|
||||
default: Manual
|
||||
automation_orchestrator_operator_wait_timeout:
|
||||
description: Seconds to wait for the operator and instance to become ready.
|
||||
type: int
|
||||
default: 600
|
||||
automation_orchestrator_operator_idms_name:
|
||||
description: Name of the cluster-wide ImageDigestMirrorSet for pre-release images.
|
||||
type: str
|
||||
default: idms-aap-27-next
|
||||
automation_orchestrator_operator_image_digest_mirrors:
|
||||
description: >-
|
||||
spec.imageDigestMirrors entries ({source, mirrors}) for the IDMS. Applying a change
|
||||
triggers a MachineConfigPool rollout. Only needed for pre-release builds; [] skips it.
|
||||
type: list
|
||||
elements: dict
|
||||
default: []
|
||||
automation_orchestrator_operator_mcp_wait_timeout:
|
||||
description: Seconds to wait for the MachineConfigPool rollout after the IDMS changes.
|
||||
type: int
|
||||
default: 1800
|
||||
automation_orchestrator_operator_app_namespace:
|
||||
description: >-
|
||||
Namespace for the AutomationOrchestrator instance. Exactly one CR is allowed per namespace.
|
||||
Defaults to the same namespace as the operator.
|
||||
type: str
|
||||
default: "{operator_namespace}"
|
||||
automation_orchestrator_operator_instance_name:
|
||||
description: Name of the AutomationOrchestrator CR.
|
||||
type: str
|
||||
default: automation-orchestrator
|
||||
automation_orchestrator_operator_postgres_host:
|
||||
description: PostgreSQL host shared by the backend and Temporal databases.
|
||||
type: str
|
||||
default: orchestrator-postgres-rw
|
||||
automation_orchestrator_operator_postgres_port:
|
||||
description: PostgreSQL port.
|
||||
type: int
|
||||
default: 5432
|
||||
automation_orchestrator_operator_postgres_ssl_mode:
|
||||
description: PostgreSQL SSL mode (disable, allow, prefer, require, verify-ca, verify-full).
|
||||
type: str
|
||||
default: verify-ca
|
||||
automation_orchestrator_operator_postgres_ca_cert_secret:
|
||||
description: >-
|
||||
Name of a pre-existing Secret (key ca.crt) with the PostgreSQL server CA certificate.
|
||||
Required when sslMode is verify-ca or verify-full.
|
||||
type: str
|
||||
default: orchestrator-postgres-ca
|
||||
automation_orchestrator_operator_backend_db_secret_name:
|
||||
description: Name of the pre-existing Secret with the backend database credentials.
|
||||
type: str
|
||||
default: orchestrator-postgres-secret
|
||||
automation_orchestrator_operator_temporal_db_secret_name:
|
||||
description: Name of the pre-existing Secret with the Temporal database credentials.
|
||||
type: str
|
||||
default: temporal-postgres-secret
|
||||
automation_orchestrator_operator_ingress_type:
|
||||
description: External access type (Route on OpenShift, Ingress on AKS, or None).
|
||||
type: str
|
||||
default: Route
|
||||
automation_orchestrator_operator_ingress_host:
|
||||
description: Custom hostname for external access. Leave unset to use the operator's auto-generated hostname.
|
||||
type: str
|
||||
default: ""
|
||||
automation_orchestrator_operator_ingress_annotations:
|
||||
description: Annotations applied to the generated Route/Ingress resource.
|
||||
type: dict
|
||||
default: {}
|
||||
automation_orchestrator_operator_ingress_tls_secret_name:
|
||||
description: Name of a pre-existing kubernetes.io/tls Secret. Only used when ingress_type is Ingress.
|
||||
type: str
|
||||
default: ""
|
||||
automation_orchestrator_operator_image_pull_secrets:
|
||||
description: List of {name} references to Secrets used to pull component workload images.
|
||||
type: list
|
||||
elements: dict
|
||||
default: []
|
||||
automation_orchestrator_operator_backend:
|
||||
description: Passthrough overrides (replicas, resources, affinity, tolerations, nodeSelector) for spec.backend.
|
||||
type: dict
|
||||
default: {}
|
||||
automation_orchestrator_operator_ui:
|
||||
description: Passthrough overrides for spec.ui.
|
||||
type: dict
|
||||
default: {}
|
||||
automation_orchestrator_operator_worker:
|
||||
description: Passthrough overrides for spec.worker.
|
||||
type: dict
|
||||
default: {}
|
||||
automation_orchestrator_operator_background_worker:
|
||||
description: >-
|
||||
Passthrough overrides for spec.backgroundWorker. Note: replicas has no effect —
|
||||
the operator always manages this component via an HPA.
|
||||
type: dict
|
||||
default: {}
|
||||
automation_orchestrator_operator_redis:
|
||||
description: Passthrough overrides for spec.redis.
|
||||
type: dict
|
||||
default: {}
|
||||
automation_orchestrator_operator_temporal_server:
|
||||
description: Passthrough overrides for spec.temporal.server.
|
||||
type: dict
|
||||
default: {}
|
||||
automation_orchestrator_operator_extra_spec:
|
||||
description: >-
|
||||
Arbitrary dict recursively merged into the generated CR spec last — escape hatch for
|
||||
fields not otherwise exposed (fileStorage, otel, tls, secrets, workflowHttpRequestAllowedHosts, ...).
|
||||
type: dict
|
||||
default: {}
|
||||
automation_orchestrator_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/automation_orchestrator_operator/meta/main.yml
Normal file
18
roles/automation_orchestrator_operator/meta/main.yml
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: ptoal
|
||||
description: Install Automation Orchestrator via its OpenShift/AKS OLM operator
|
||||
license: MIT
|
||||
min_ansible_version: "2.16"
|
||||
platforms:
|
||||
- name: GenericLinux
|
||||
versions:
|
||||
- all
|
||||
galaxy_tags:
|
||||
- openshift
|
||||
- aap
|
||||
- operator
|
||||
- olm
|
||||
- ansible
|
||||
|
||||
dependencies: []
|
||||
Reference in New Issue
Block a user