Add OPA and Openshift AI
This commit is contained in:
69
roles/rhoai_maas/tasks/operator.yml
Normal file
69
roles/rhoai_maas/tasks/operator.yml
Normal file
@@ -0,0 +1,69 @@
|
||||
---
|
||||
# Install one OLM operator (Automatic approval) and wait for its CSV.
|
||||
# Expects __rhoai_maas_operator: {name, namespace, channel,
|
||||
# operator_group_target_namespaces?, namespace_labels?}
|
||||
|
||||
- name: Create operator namespace {{ __rhoai_maas_operator.namespace }}
|
||||
kubernetes.core.k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: "{{ __rhoai_maas_operator.namespace }}"
|
||||
labels: "{{ __rhoai_maas_operator.namespace_labels | default({}) }}"
|
||||
|
||||
# openshift-operators already has the global-operators OperatorGroup
|
||||
- name: Create OperatorGroup for {{ __rhoai_maas_operator.name }}
|
||||
kubernetes.core.k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: operators.coreos.com/v1
|
||||
kind: OperatorGroup
|
||||
metadata:
|
||||
name: "{{ __rhoai_maas_operator.name }}"
|
||||
namespace: "{{ __rhoai_maas_operator.namespace }}"
|
||||
spec: >-
|
||||
{{ {'targetNamespaces': __rhoai_maas_operator.operator_group_target_namespaces}
|
||||
if __rhoai_maas_operator.operator_group_target_namespaces is defined else {} }}
|
||||
when: __rhoai_maas_operator.namespace != 'openshift-operators'
|
||||
|
||||
- name: Subscribe to {{ __rhoai_maas_operator.name }}
|
||||
kubernetes.core.k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: operators.coreos.com/v1alpha1
|
||||
kind: Subscription
|
||||
metadata:
|
||||
name: "{{ __rhoai_maas_operator.name }}"
|
||||
namespace: "{{ __rhoai_maas_operator.namespace }}"
|
||||
spec:
|
||||
channel: "{{ __rhoai_maas_operator.channel }}"
|
||||
installPlanApproval: Automatic
|
||||
name: "{{ __rhoai_maas_operator.name }}"
|
||||
source: "{{ __rhoai_maas_operator.source | default('redhat-operators') }}"
|
||||
sourceNamespace: openshift-marketplace
|
||||
|
||||
- name: Wait for Subscription to report an installed CSV - {{ __rhoai_maas_operator.name }}
|
||||
kubernetes.core.k8s_info:
|
||||
api_version: operators.coreos.com/v1alpha1
|
||||
kind: Subscription
|
||||
namespace: "{{ __rhoai_maas_operator.namespace }}"
|
||||
name: "{{ __rhoai_maas_operator.name }}"
|
||||
register: __rhoai_maas_sub
|
||||
until: (__rhoai_maas_sub.resources[0].status.installedCSV | default('')) | length > 0
|
||||
retries: "{{ __rhoai_maas_wait_retries }}"
|
||||
delay: 10
|
||||
|
||||
- name: Wait for CSV to succeed - {{ __rhoai_maas_operator.name }}
|
||||
kubernetes.core.k8s_info:
|
||||
api_version: operators.coreos.com/v1alpha1
|
||||
kind: ClusterServiceVersion
|
||||
namespace: "{{ __rhoai_maas_operator.namespace }}"
|
||||
name: "{{ __rhoai_maas_sub.resources[0].status.installedCSV }}"
|
||||
register: __rhoai_maas_csv
|
||||
until: >-
|
||||
__rhoai_maas_csv.resources | length > 0 and
|
||||
__rhoai_maas_csv.resources[0].status.phase | default('') == 'Succeeded'
|
||||
retries: "{{ __rhoai_maas_wait_retries }}"
|
||||
delay: 10
|
||||
Reference in New Issue
Block a user