IBM / cloudpak-gitops

Deployment of IBM Cloud Paks using ArgoCD / Red Hat GitOps operator.
Apache License 2.0
22 stars 23 forks source link

fix: Avoid running CP4D cri-o setup on OCP with Hosted Control Plane #249

Closed nastacio closed 1 year ago

nastacio commented 1 year ago

Describe the bug Cloud Pak for Data requires execution of this step on clusters in various providers, including AWS: https://www.ibm.com/docs/en/cloud-paks/cp-data/4.6.x?topic=settings-changing-cri-o-container

It has dependencies on CRDs that do not exist in clusters using a hosted control plane, so that until CP4D officially supports HCP, this step (cri-o tuning of the node) should not be executed.

To Reproduce Steps to reproduce the behavior:

  1. Attempt to deploy the cp4d-app to a cluster with a hosted control plane, such as ROSA with HCP
  2. Wait for the presync hook pre-sync-cp4d-cluster-setup (file config/cloudpaks/cp4d/templates/0090-sync-cluster-setup.yaml) to complete.
  3. Hook fails.

Expected behavior Installation should work.

Screenshots N/A

Additional context

See output of task:

+ result=0
+ OPENSHIFT_TYPE=self-managed
++ oc get Infrastructure cluster -o 'jsonpath={.status.platform}'
W0616 19:41:30.393039       8 loader.go:223] Config not found: /opt/ansible/.kubeconfig
+ platform=AWS
+ case "${platform}" in
+ oc get Infrastructure cluster -o 'jsonpath={.status.platformStatus}'
+ grep red-hat-managed
W0616 19:41:30.499416      20 loader.go:223] Config not found: /opt/ansible/.kubeconfig
{"aws":{"region":"us-east-1","resourceTags":[{"key":"api.openshift.com/environment","value":"production"},{"key":"api.openshift.com/id","value":"24d60kdv3cnsb0l75ibvm7kbhm20ubep"},{"key":"api.openshift.com/legal-entity-id","value":"1ptkiyAEV0hLduem5w95nWZi4nX"},{"key":"api.openshift.com/name","value":"dnrosa-hcp14"},{"key":"Spend_Env","value":"Dev"},{"key":"red-hat-clustertype","value":"rosa"},{"key":"red-hat-managed","value":"true"}]},"type":"AWS"}
+ OPENSHIFT_TYPE=rosa
+ '[' rosa '!=' roks ']'
+ [[ cpfs,scheduler,cpd_platform,rstudio,wml,ws =~ cognos_analytics ]]
+ [[ cpfs,scheduler,cpd_platform,rstudio,wml,ws =~ dv ]]
+ [[ cpfs,scheduler,cpd_platform,rstudio,wml,ws =~ db2 ]]
+ [[ cpfs,scheduler,cpd_platform,rstudio,wml,ws =~ bigsql ]]
+ [[ cpfs,scheduler,cpd_platform,rstudio,wml,ws =~ watson_discovery ]]
+ [[ cpfs,scheduler,cpd_platform,rstudio,wml,ws =~ wkc ]]
+ [[ cpfs,scheduler,cpd_platform,rstudio,wml,ws =~ ws ]]
+ echo 'INFO: Changing CRI-O container settings'
INFO: Changing CRI-O container settings
+ bin/apply-crio --openshift-type=rosa --extra-vars=pid_limit=16384
[WARNING]: No inventory was parsed, only implicit localhost is available
[WARNING]: provided hosts list is empty, only localhost is available. Note that
the implicit localhost does not match 'all'

PLAY [localhost] ***************************************************************

TASK [include_role : utils] ****************************************************

TASK [utils : include_vars] ****************************************************
ok: [localhost]

TASK [utils : include_vars] ****************************************************
ok: [localhost]

TASK [utils : debug] ***********************************************************
skipping: [localhost]

TASK [utils : fail] ************************************************************
skipping: [localhost]

TASK [utils : merging release_components_meta and global_components_meta] ******
ok: [localhost]

TASK [utils : merge with override_components_meta] *****************************
skipping: [localhost]

TASK [utils : merge with override_components_meta] *****************************
ok: [localhost]

TASK [utils : set_fact] ********************************************************
skipping: [localhost]

TASK [utils : set_fact] ********************************************************
skipping: [localhost]

TASK [utils : check openshift cluster status] **********************************
included: /opt/ansible/ansible-play/roles/utils/tasks/check_cluster_healthy.yml for localhost

TASK [utils : checking ocp cluster connection status] **************************
changed: [localhost]

TASK [utils : fail] ************************************************************
skipping: [localhost]

TASK [utils : get cluster arch] ************************************************
[WARNING]: conditional statements should not include jinja2 templating
delimiters such as {{ }} or {% %}. Found: {{ (kube_arch.stdout |
from_json)['serverVersion'] is defined }}
changed: [localhost]

TASK [utils : set_fact] ********************************************************
ok: [localhost]

TASK [utils : set_fact] ********************************************************
ok: [localhost]

TASK [utils : include_tasks] ***************************************************
skipping: [localhost]

TASK [utils : debug] ***********************************************************
skipping: [localhost]

TASK [utils : Print trace information] *****************************************
skipping: [localhost]

TASK [utils : remove any existing generated preview sh script] *****************
skipping: [localhost]

TASK [utils : remove any existing generated preview yaml file] *****************
skipping: [localhost]

TASK [utils : Create CPFS namespace if not present ibm-common-services] ********
skipping: [localhost]

TASK [utils : Create cpd operator namespace if not present ibm-common-services] ***
skipping: [localhost]

TASK [utils : ensure operator group for ibm-common-services namespace] *********
skipping: [localhost]

TASK [utils : ensure operator group for ibm-common-services namespace] *********
skipping: [localhost]

TASK [include_role : utils] ****************************************************

TASK [utils : set_fact] ********************************************************
ok: [localhost]

TASK [utils : set_fact] ********************************************************
skipping: [localhost]

TASK [utils : set_fact] ********************************************************
skipping: [localhost]

TASK [utils : print preview custom crio] ***************************************
skipping: [localhost]

TASK [utils : Check if custom crio exists] *************************************
changed: [localhost]

TASK [utils : applying custom crio] ********************************************
fatal: [localhost]: FAILED! => {"changed": false, "msg": "Failed to find exact match for machineconfiguration.openshift.io/v1.ContainerRuntimeConfig by [kind, name, singularName, shortNames]"}

PLAY RECAP *********************************************************************
localhost                  : ok=11   changed=3    unreachable=0    failed=1    skipped=18   rescued=0    ignored=0

+ result=1
+ exit 1
nastacio commented 1 year ago

:tada: This issue has been resolved in version 0.24.1 :tada:

The release is available on GitHub release

Your semantic-release bot :package::rocket: