From 8a1480e002dd24b5014ce65f7b1722071736af85 Mon Sep 17 00:00:00 2001 From: Hetvi Shah Date: Mon, 12 May 2025 22:13:29 +0530 Subject: [PATCH 01/13] [patch] Added template for aibroker --- .../pipelinerun-aibroker-install.yml.j2 | 605 ++++++++++++++++++ 1 file changed, 605 insertions(+) create mode 100644 src/mas/devops/templates/pipelinerun-aibroker-install.yml.j2 diff --git a/src/mas/devops/templates/pipelinerun-aibroker-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aibroker-install.yml.j2 new file mode 100644 index 00000000..e0954430 --- /dev/null +++ b/src/mas/devops/templates/pipelinerun-aibroker-install.yml.j2 @@ -0,0 +1,605 @@ +--- +apiVersion: tekton.dev/v1beta1 +kind: PipelineRun +metadata: + name: "{{mas_instance_id}}-install-{{ timestamp }}" + labels: + tekton.dev/pipeline: aiservice-install +spec: + pipelineRef: + name: aiservice-install + + serviceAccountName: "{{ service_account_name | default('pipeline', True) }}" + timeouts: + pipeline: "0" + + params: + # IBM Entitlement Key + # ------------------------------------------------------------------------- + - name: ibm_entitlement_key + value: "{{ ibm_entitlement_key }}" +{%- if skip_pre_check is defined and skip_pre_check != "" %} + + # Pipeline config + # ------------------------------------------------------------------------- + - name: skip_pre_check + value: "{{ skip_pre_check }}" +{%- endif %} +{%- if image_pull_policy is defined and image_pull_policy != "" %} + + # Image Pull Policy + # ------------------------------------------------------------------------- + - name: image_pull_policy + value: "{{ image_pull_policy }}" +{%- endif %} +{%- if ocp_ingress_tls_secret_name is defined and ocp_ingress_tls_secret_name != "" %} + + # Cluster config + # ------------------------------------------------------------------------- + - name: ocp_ingress_tls_secret_name + value: "{{ ocp_ingress_tls_secret_name }}" +{%- endif %} +{%- if artifactory_username is defined and artifactory_username != "" %} + + # Enable development catalogs + # ------------------------------------------------------------------------- + - name: artifactory_username + value: "{{ artifactory_username }}" + - name: artifactory_token + value: "{{ artifactory_token }}" +{%- endif %} +{%- if ibmcloud_apikey is defined and ibmcloud_resourcegroup != "" %} + + # IBM Cloud + # ------------------------------------------------------------------------- + - name: ibmcloud_apikey + value: "{{ ibmcloud_apikey }}" + - name: ibmcloud_resourcegroup + value: "{{ ibmcloud_resourcegroup }}" +{%- endif %} + + # Storage Classes + # ------------------------------------------------------------------------- + - name: storage_class_rwx + value: "{{ storage_class_rwx }}" + - name: storage_class_rwo + value: "{{ storage_class_rwo }}" +{%- if eck_action is defined and eck_action != "" %} + + # Dependencies - ECK + # ------------------------------------------------------------------------- + - name: eck_action + value: "{{ eck_action }}" + + - name: eck_enable_elasticsearch + value: "{{ eck_enable_elasticsearch }}" + - name: eck_enable_kibana + value: "{{ eck_enable_kibana }}" + - name: eck_enable_logstash + value: "{{ eck_enable_logstash }}" + - name: eck_enable_filebeat + value: "{{ eck_enable_filebeat }}" + + {%- if eck_remote_es_hosts is defined and eck_remote_es_hosts != "" %} + - name: eck_remote_es_hosts + value: "{{ eck_remote_es_hosts }}" + - name: eck_remote_es_username + value: "{{ eck_remote_es_username }}" + - name: eck_remote_es_password + value: "{{ eck_remote_es_password }}" + {%- endif %} +{%- endif %} +{%- if turbonomic_server_url is defined and turbonomic_server_url != "" %} + + # Dependencies - Turbonomic + # ------------------------------------------------------------------------- + - name: turbonomic_server_url + value: "{{ turbonomic_server_url }}" + - name: turbonomic_server_version + value: "{{ turbonomic_server_version }}" + - name: turbonomic_target_name + value: "{{ turbonomic_target_name }}" + - name: turbonomic_username + value: "{{ turbonomic_username }}" + - name: turbonomic_password + value: "{{ turbonomic_password }}" +{%- endif %} +{%- if db2_action_system == "install" or db2_action_manage == "install" %} + + # Dependencies - Db2 - Actions + # ------------------------------------------------------------------------- + - name: db2_action_system + value: "{{ db2_action_system }}" + - name: db2_action_manage + value: "{{ db2_action_manage }}" + + # Dependencies - Db2u Operator + # ------------------------------------------------------------------------- + - name: db2_namespace + value: "{{ db2_namespace }}" + - name: db2_channel + value: "{{ db2_channel }}" + - name: db2_type + value: "{{ db2_type }}" + - name: db2_timezone + value: "{{ db2_timezone }}" + {%- if db2_meta_storage_accessmode is defined and db2_meta_storage_accessmode != "" %} + + # Dependencies - Db2 - Access Mode + # ------------------------------------------------------------------------- + - name: db2_meta_storage_accessmode + value: "{{ db2_meta_storage_accessmode }}" + - name: db2_backup_storage_accessmode + value: "{{ db2_backup_storage_accessmode }}" + - name: db2_logs_storage_accessmode + value: "{{ db2_logs_storage_accessmode }}" + - name: db2_temp_storage_accessmode + value: "{{ db2_temp_storage_accessmode }}" + - name: db2_data_storage_accessmode + value: "{{ db2_data_storage_accessmode }}" + {%- endif %} + {%- if db2_affinity_key is defined and db2_affinity_key != "" %} + + # Dependencies - Db2 - Node Scheduling + # ------------------------------------------------------------------------- + - name: db2_affinity_key + value: "{{ db2_affinity_key }}" + - name: db2_affinity_value + value: "{{ db2_affinity_value }}" + - name: db2_tolerate_key + value: "{{ db2_tolerate_key }}" + - name: db2_tolerate_value + value: "{{ db2_tolerate_value }}" + - name: db2_tolerate_effect + value: "{{ db2_tolerate_effect }}" + {%- endif %} + {%- if db2_cpu_requests is defined and db2_cpu_requests != "" %} + + # Dependencies - Db2 - Memory & CPU Resources + # ------------------------------------------------------------------------- + - name: db2_cpu_requests + value: "{{ db2_cpu_requests }}" + - name: db2_cpu_limits + value: "{{ db2_cpu_limits }}" + - name: db2_memory_requests + value: "{{ db2_memory_requests }}" + - name: db2_memory_limits + value: "{{ db2_memory_limits }}" + {%- endif %} + {%- if db2_meta_storage_size is defined and db2_meta_storage_size != "" %} + + # Dependencies - Db2 - Storage Capacity + # ------------------------------------------------------------------------- + - name: db2_meta_storage_size + value: "{{ db2_meta_storage_size }}" + - name: db2_backup_storage_size + value: "{{ db2_backup_storage_size }}" + - name: db2_logs_storage_size + value: "{{ db2_logs_storage_size }}" + - name: db2_temp_storage_size + value: "{{ db2_temp_storage_size }}" + - name: db2_data_storage_size + value: "{{ db2_data_storage_size }}" + {%- endif %} +{%- endif %} +{%- if mongodb_action is defined and mongodb_action != "" %} + + # Dependencies - MongoDb + # ------------------------------------------------------------------------- + - name: mongodb_action + value: "{{ mongodb_action }}" + - name: mongodb_namespace + value: "{{ mongodb_namespace }}" + - name: mongodb_replicas + value: "{{ mongodb_replicas }}" + - name: mongodb_cpu_requests + value: "{{ mongodb_cpu_requests }}" + - name: mongodb_provider + value: "{{ mongodb_provider }}" + - name: mongodb_version + value: "{{ mongodb_version }}" + {%- if mongodb_provider == "ibm" %} + + # Dependencies - IBM Cloud MongoDb + # ------------------------------------------------------------------------- + - name: ibm_mongo_name + value: "{{ ibm_mongo_name }}" + - name: ibm_mongo_resourcegroup + value: "{{ ibm_mongo_resourcegroup }}" + - name: ibm_mongo_region + value: "{{ ibm_mongo_region }}" + - name: ibm_mongo_admin_password + value: "{{ ibm_mongo_admin_password }}" + {%- endif %} +{%- endif %} +{%- if kafka_action_system == "install" %} + + # Dependencies - Kafka + # ------------------------------------------------------------------------- + - name: kafka_action_system + value: "{{ kafka_action_system }}" + - name: kafka_provider + value: "{{ kafka_provider }}" + - name: kafka_namespace + value: "{{ kafka_namespace }}" + - name: kafka_version + value: "{{ kafka_version }}" + {%- if kafka_provider == "aws" %} + + # Dependencies - AWS MSK + # ------------------------------------------------------------------------- + - name: vpc_id + value: "{{ vpc_id }}" + - name: aws_kafka_user_name + value: "{{ aws_kafka_user_name }}" + - name: aws_kafka_user_password + value: "{{ aws_kafka_user_password }}" + - name: aws_msk_instance_type + value: "{{ aws_msk_instance_type }}" + - name: aws_msk_instance_number + value: "{{ aws_msk_instance_number }}" + - name: aws_msk_volume_size + value: "{{ aws_msk_volume_size }}" + - name: aws_msk_cidr_az1 + value: "{{ aws_msk_cidr_az1 }}" + - name: aws_msk_cidr_az2 + value: "{{ aws_msk_cidr_az2 }}" + - name: aws_msk_cidr_az3 + value: "{{ aws_msk_cidr_az3 }}" + - name: aws_msk_ingress_cidr + value: "{{ aws_msk_ingress_cidr }}" + - name: aws_msk_egress_cidr + value: "{{ aws_msk_egress_cidr }}" + {%- elif kafka_provider == "ibm" %} + + # Dependencies - IBM Cloud Event Streams + # ------------------------------------------------------------------------- + - name: eventstreams_resourcegroup + value: "{{ eventstreams_resourcegroup }}" + - name: eventstreams_name + value: "{{ eventstreams_name }}" + - name: eventstreams_location + value: "{{ eventstreams_location }}" + - name: eventstreams_retention + value: "{{ eventstreams_retention }}" + - name: eventstreams_create_manage_jms_topics + value: "{{ eventstreams_create_manage_jms_topics }}" + {%- endif %} +{%- endif %} +{%- if cpd_product_version is defined and cpd_product_version != "" %} + + # Dependencies - CP4D + # ------------------------------------------------------------------------- + - name: cpd_product_version + value: "{{ cpd_product_version }}" + - name: cpd_install_spss + value: "{{ cpd_install_spss }}" + - name: cpd_install_openscale + value: "{{ cpd_install_openscale }}" + - name: cpd_install_cognos + value: "{{ cpd_install_cognos }}" + - name: cpd_install_ws + value: "{{ cpd_install_ws }}" + - name: cpd_install_wml + value: "{{ cpd_install_wml }}" + - name: cpd_install_ae + value: "{{ cpd_install_ae }}" +{%- endif %} + + # Dependencies - SLS + # ------------------------------------------------------------------------- + - name: sls_channel + value: '3.x' +{%- if sls_entitlement_file is defined and sls_entitlement_file != "" %} + - name: sls_entitlement_file + value: "{{ sls_entitlement_file }}" +{%- endif %} +{%- if sls_namespace is defined and sls_namespace != "" %} + - name: sls_namespace + value: "{{ sls_namespace }}" +{%- endif %} +{%- if sls_icr_cpopen is defined and sls_icr_cpopen != "" %} + - name: sls_icr_cpopen + value: "{{ sls_icr_cpopen }}" +{%- endif %} +{%- if sls_mongodb_cfg_file is defined and sls_mongodb_cfg_file != "" %} + - name: sls_mongodb_cfg_file + value: "{{ sls_mongodb_cfg_file }}" +{%- endif %} +{%- if sls_action is defined and sls_action != "" %} + - name: sls_action + value: "{{ sls_action }}" +{%- endif %} + + + # Dependencies - UDS/DRO (Required) + # ------------------------------------------------------------------------- + - name: uds_action + value: "{{ uds_action }}" + - name: uds_contact_email + value: "{{ uds_contact_email }}" + - name: uds_contact_firstname + value: "{{ uds_contact_firstname }}" + - name: uds_contact_lastname + value: "{{ uds_contact_lastname }}" +{%- if dro_namespace is defined and dro_namespace != "" %} + - name: dro_namespace + value: "{{ dro_namespace }}" +{%- endif %} +{%- if cos_type is defined and cos_type != "" %} + + # Dependencies - COS + # ------------------------------------------------------------------------- + - name: cos_type + value: "{{ cos_type }}" + - name: cos_resourcegroup + value: "{{ cos_resourcegroup }}" + - name: cos_instance_name + value: "{{ cos_instance_name }}" + - name: cos_action + value: "{{ cos_action }}" + - name: cos_apikey + value: "{{ cos_apikey }}" + - name: cos_bucket_name + value: "{{ cos_bucket_name }}" +{%- endif %} + + # MAS Catalog + # ------------------------------------------------------------------------- + - name: mas_channel + value: "{{ mas_channel }}" + - name: mas_catalog_version + value: "{{ mas_catalog_version }}" +{%- if mas_catalog_digest is defined and mas_catalog_digest != "" %} + - name: mas_catalog_digest + value: "{{ mas_catalog_digest }}" +{%- endif %} + + # Dependencies - Certificate Manager + # ------------------------------------------------------------------------- + - name: cert_manager_provider + value: "{{ cert_manager_provider }}" + - name: cert_manager_action + value: "{{ cert_manager_action }}" +{%- if dns_provider is defined and dns_provider != "" %} + + # MAS DNS Integrations - General + # ------------------------------------------------------------------------- + - name: dns_provider + value: "{{ dns_provider }}" + {%- if cloudflare_apitoken is defined and cloudflare_apitoken != "" %} + + # MAS DNS Integrations - Cloudflare Support + # ------------------------------------------------------------------------- + - name: cloudflare_email + value: "{{ cloudflare_email }}" + - name: cloudflare_apitoken + value: "{{ cloudflare_apitoken }}" + - name: cloudflare_zone + value: "{{ cloudflare_zone }}" + - name: cloudflare_subdomain + value: "{{ cloudflare_subdomain }}" + {%- endif %} + {%- if cis_apikey is defined and cis_apikey != "" %} + + # MAS DNS Integrations - CIS Support + # ------------------------------------------------------------------------- + - name: cis_email + value: "{{ cis_email }}" + - name: cis_apikey + value: "{{ cis_apikey }}" + - name: cis_crn + value: "{{ cis_crn }}" + - name: cis_subdomain + value: "{{ cis_subdomain }}" + {%- endif %} + {%- if cis_service_name is defined and cis_service_name != "" %} + + # MAS DNS Integrations - CIS Security Enhancement Support + # ------------------------------------------------------------------------- + - name: cis_service_name + value: "{{ cis_service_name }}" + - name: cis_enhanced_security + value: "{{ cis_enhanced_security }}" + - name: override_edge_certs + value: "{{ override_edge_certs }}" + - name: cis_proxy + value: "{{ cis_proxy }}" + {%- endif %} +{%- endif %} +{%- if aws_access_key_id is defined and aws_access_key_id != "" %} + + # AWS basic info + # ------------------------------------------------------------------------- + - name: aws_access_key_id + value: "{{ aws_access_key_id }}" + - name: aws_secret_access_key + value: "{{ aws_secret_access_key }}" + - name: aws_region + value: "{{ aws_region }}" +{%- endif %} +{%- if route53_hosted_zone_name is defined and route53_hosted_zone_name != "" %} + + # MAS DNS Integrations - AWS Route 53 + # ------------------------------------------------------------------------- + - name: route53_hosted_zone_name + value: "{{ route53_hosted_zone_name }}" + - name: route53_hosted_zone_region + value: "{{ route53_hosted_zone_region }}" + - name: route53_email + value: "{{ route53_email }}" + - name: route53_subdomain + value: "{{ route53_subdomain }}" +{%- endif %} +{%- if mas_add_catalog is defined and mas_add_catalog != "" %} + + # Data Dictionary + # ------------------------------------------------------------------------- + - name: mas_add_catalog + value: "{{ mas_add_catalog }}" + - name: mas_add_channel + value: "{{ mas_add_channel }}" +{%- endif %} + + + # MAS Workspace + # ------------------------------------------------------------------------- + - name: mas_workspace_id + value: "{{ mas_workspace_id }}" + - name: mas_workspace_name + value: "{{ mas_workspace_name }}" + +{%- if grafana_action is defined and grafana_action != "" %} + # Grafana + # ------------------------------------------------------------------------- + - name: grafana_action + value: "{{ grafana_action }}" + - name: grafana_v5_namespace + value: "{{ grafana_v5_namespace }}" + - name: grafana_instance_storage_size + value: "{{ grafana_instance_storage_size }}" +{%- endif %} +{%- if mas_app_channel_aibroker is defined and mas_app_channel_aibroker != "" %} + + # AI Broker + # ------------------------------------------------------------------------- + - name: mas_app_channel_aibroker + value: "{{ mas_app_channel_aibroker }}" + + # AI Broker Tenant + # ------------------------------------------------------------------------- + - name: tenant_entitlement_type + value: "{{ tenant_entitlement_type }}" + - name: tenant_entitlement_start_date + value: "{{ tenant_entitlement_start_date }}" + - name: tenant_entitlement_end_date + value: "{{ tenant_entitlement_end_date }}" +{%- endif %} +{%- if mas_aibroker_storage_provider is defined and mas_aibroker_storage_provider != "" %} + + # AI Broker - OpenData Hub Storage + # ------------------------------------------------------------------------- + - name: mas_aibroker_storage_provider + value: "{{ mas_aibroker_storage_provider }}" + - name: mas_aibroker_storage_accesskey + value: "{{ mas_aibroker_storage_accesskey }}" + - name: mas_aibroker_storage_secretkey + value: "{{ mas_aibroker_storage_secretkey }}" + - name: mas_aibroker_storage_host + value: "{{ mas_aibroker_storage_host }}" + - name: mas_aibroker_storage_port + value: "{{ mas_aibroker_storage_port }}" + - name: mas_aibroker_storage_ssl + value: "{{ mas_aibroker_storage_ssl }}" + - name: mas_aibroker_storage_region + value: "{{ mas_aibroker_storage_region }}" + - name: mas_aibroker_storage_pipelines_bucket + value: "{{ mas_aibroker_storage_pipelines_bucket }}" + - name: mas_aibroker_storage_tenants_bucket + value: "{{ mas_aibroker_storage_tenants_bucket }}" + - name: mas_aibroker_storage_templates_bucket + value: "{{ mas_aibroker_storage_templates_bucket }}" + - name: mas_aibroker_tenant_name + value: "{{ mas_aibroker_tenant_name }}" + - name: minio_root_user + value: "{{ minio_root_user }}" + - name: minio_root_password + value: "{{ minio_root_password }}" + +{%- endif %} +{%- if mas_aibroker_controller_tag is defined and mas_aibroker_controller_tag != "" %} + + # AI Broker - KModels Tags + # ------------------------------------------------------------------------- + - name: mas_aibroker_controller_tag + value: "{{ mas_aibroker_controller_tag }}" + - name: mas_aibroker_store_tag + value: "{{ mas_aibroker_store_tag }}" + - name: mas_aibroker_watcher_tag + value: "{{ mas_aibroker_watcher_tag }}" + - name: mas_aibroker_connector_tag + value: "{{ mas_aibroker_connector_tag }}" + - name: mas_aibroker_pipeline_steps_tag + value: "{{ mas_aibroker_pipeline_steps_tag }}" +{%- endif %} +{%- if mas_aibroker_watsonxai_apikey is defined and mas_aibroker_watsonxai_apikey != "" %} + + # AI Broker - watsonX + # ------------------------------------------------------------------------- + - name: mas_aibroker_watsonxai_apikey + value: "{{ mas_aibroker_watsonxai_apikey }}" + - name: mas_aibroker_watsonxai_url + value: "{{ mas_aibroker_watsonxai_url }}" + - name: mas_aibroker_watsonxai_project_id + value: "{{ mas_aibroker_watsonxai_project_id }}" + - name: mas_aibroker_watsonx_action + value: "{{ mas_aibroker_watsonx_action }}" +{%- endif %} +{%- if mas_aibroker_s3_action is defined and mas_aibroker_s3_action != "" %} + + # AI Broker - S3 + # ------------------------------------------------------------------------- + - name: mas_aibroker_s3_action + value: "{{ mas_aibroker_s3_action }}" + - name: mas_aibroker_apikey_action + value: "{{ mas_aibroker_apikey_action }}" +{%- endif %} +{%- if mas_aibroker_db_host is defined and mas_aibroker_db_host != "" %} + + # AI Broker - Database (DataSciencePipelinesApplication) + # ------------------------------------------------------------------------- + - name: mas_aibroker_db_host + value: "{{ mas_aibroker_db_host }}" + - name: mas_aibroker_db_port + value: "{{ mas_aibroker_db_port }}" + - name: mas_aibroker_db_user + value: "{{ mas_aibroker_db_user }}" + - name: mas_aibroker_db_database + value: "{{ mas_aibroker_db_database }}" + - name: mas_aibroker_db_secret_name + value: "{{ mas_aibroker_db_secret_name }}" + - name: mas_aibroker_db_secret_key + value: "{{ mas_aibroker_db_secret_key }}" + - name: mas_aibroker_db_secret_value + value: "{{ mas_aibroker_db_secret_value }}" + - name: mariadb_user + value: "{{ mariadb_user }}" + - name: mariadb_password + value: "{{ mariadb_password }}" + +{%- endif %} + + workspaces: + # The generated configuration files + # ------------------------------------------------------------------------- + - name: shared-configs + persistentVolumeClaim: + claimName: config-pvc + + # User-provided configurations + # ------------------------------------------------------------------------- + # Any pre-generated configs that will be copied into the + # shared-config during install-suite + - name: shared-additional-configs + secret: + secretName: pipeline-additional-configs + + # SLS entitlement + # ------------------------------------------------------------------------- + # The SLS entitlement key file that will be installed + # during install-sls + - name: shared-entitlement + secret: + secretName: pipeline-sls-entitlement + + # PodTemplates configurations + # ------------------------------------------------------------------------- + - name: shared-pod-templates + secret: + secretName: pipeline-pod-templates + + # Certificates configurations + # ------------------------------------------------------------------------- + - name: shared-certificates + secret: + secretName: pipeline-certificates From b078b66d44bdf6c2939cff02fb6890c37611c5a6 Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Mon, 12 May 2025 22:32:33 +0530 Subject: [PATCH 02/13] [patch] Add support for aiservice pipelinerun --- src/mas/devops/data/catalogs/v9-250403-amd64.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/mas/devops/data/catalogs/v9-250403-amd64.yaml b/src/mas/devops/data/catalogs/v9-250403-amd64.yaml index aa1f3820..49d45edb 100644 --- a/src/mas/devops/data/catalogs/v9-250403-amd64.yaml +++ b/src/mas/devops/data/catalogs/v9-250403-amd64.yaml @@ -77,7 +77,9 @@ mas_visualinspection_version: 9.0.x: 9.0.8 # updated 8.10.x: 8.8.4 # No Update 8.11.x: 8.9.11 # updated - +mas_aibroker_version: + 9.0.x: 9.0.5 + # Extra Images for UDS # ------------------------------------------------------------------------------ uds_extras_version: 1.5.0 From a2e4437d38d08ad04aef84ab659c8f0bedcd5f5a Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Mon, 12 May 2025 22:35:17 +0530 Subject: [PATCH 03/13] [patch] Add support for aiservice pipelinerun --- src/mas/devops/tekton.py | 12 ++++++++++++ ...l.yml.j2 => pipelinerun-aiservice-install.yml.j2} | 10 +++++----- 2 files changed, 17 insertions(+), 5 deletions(-) rename src/mas/devops/templates/{pipelinerun-aibroker-install.yml.j2 => pipelinerun-aiservice-install.yml.j2} (98%) diff --git a/src/mas/devops/tekton.py b/src/mas/devops/tekton.py index c2e09a3e..61667f6f 100644 --- a/src/mas/devops/tekton.py +++ b/src/mas/devops/tekton.py @@ -402,6 +402,18 @@ def launchInstallPipeline(dynClient: DynamicClient, params: dict) -> str: return pipelineURL +def launchInstallPipelineForAiservice(dynClient: DynamicClient, params: dict) -> str: + """ + Create a PipelineRun to install the chosen MAS instance (and selected dependencies) + """ + instanceId = params["mas_instance_id"] + namespace = f"mas-{instanceId}-pipelines" + timestamp = launchPipelineRun(dynClient, namespace, "pipelinerun-aiservice-install", params) + + pipelineURL = f"{getConsoleURL(dynClient)}/k8s/ns/mas-{instanceId}-pipelines/tekton.dev~v1beta1~PipelineRun/{instanceId}-install-{timestamp}" + return pipelineURL + + def launchUpdatePipeline(dynClient: DynamicClient, params: dict) -> str: """ Create a PipelineRun to update the Maximo Operator Catalog diff --git a/src/mas/devops/templates/pipelinerun-aibroker-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 similarity index 98% rename from src/mas/devops/templates/pipelinerun-aibroker-install.yml.j2 rename to src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index e0954430..d5072cc8 100644 --- a/src/mas/devops/templates/pipelinerun-aibroker-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -574,7 +574,7 @@ spec: # ------------------------------------------------------------------------- - name: shared-configs persistentVolumeClaim: - claimName: config-pvc + claimName: config-pvc-aiservice # User-provided configurations # ------------------------------------------------------------------------- @@ -582,7 +582,7 @@ spec: # shared-config during install-suite - name: shared-additional-configs secret: - secretName: pipeline-additional-configs + secretName: pipeline-additional-configs-aiservice # SLS entitlement # ------------------------------------------------------------------------- @@ -590,16 +590,16 @@ spec: # during install-sls - name: shared-entitlement secret: - secretName: pipeline-sls-entitlement + secretName: pipeline-sls-entitlement-aiservice # PodTemplates configurations # ------------------------------------------------------------------------- - name: shared-pod-templates secret: - secretName: pipeline-pod-templates + secretName: pipeline-pod-templates-aiservice # Certificates configurations # ------------------------------------------------------------------------- - name: shared-certificates secret: - secretName: pipeline-certificates + secretName: pipeline-certificates-aiservice From ffccb9a971d097564d40107240442b734b21a51e Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Tue, 13 May 2025 13:48:03 +0530 Subject: [PATCH 04/13] [patch] Change PVC name in aiservice install pipelinerun --- .../templates/pipelinerun-aiservice-install.yml.j2 | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index d5072cc8..e0954430 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -574,7 +574,7 @@ spec: # ------------------------------------------------------------------------- - name: shared-configs persistentVolumeClaim: - claimName: config-pvc-aiservice + claimName: config-pvc # User-provided configurations # ------------------------------------------------------------------------- @@ -582,7 +582,7 @@ spec: # shared-config during install-suite - name: shared-additional-configs secret: - secretName: pipeline-additional-configs-aiservice + secretName: pipeline-additional-configs # SLS entitlement # ------------------------------------------------------------------------- @@ -590,16 +590,16 @@ spec: # during install-sls - name: shared-entitlement secret: - secretName: pipeline-sls-entitlement-aiservice + secretName: pipeline-sls-entitlement # PodTemplates configurations # ------------------------------------------------------------------------- - name: shared-pod-templates secret: - secretName: pipeline-pod-templates-aiservice + secretName: pipeline-pod-templates # Certificates configurations # ------------------------------------------------------------------------- - name: shared-certificates secret: - secretName: pipeline-certificates-aiservice + secretName: pipeline-certificates From 8162a8b963eb0e670006c9c89750efd1abee10e6 Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Wed, 14 May 2025 12:36:45 +0530 Subject: [PATCH 05/13] [patch] add some extra params which required for aiservice --- .../pipelinerun-aiservice-install.yml.j2 | 94 +++++++++++++++++++ 1 file changed, 94 insertions(+) diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index e0954430..76eacccd 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -441,6 +441,100 @@ spec: value: "{{ mas_add_channel }}" {%- endif %} + # MAS Core + # ------------------------------------------------------------------------- + - name: mas_instance_id + value: "{{ mas_instance_id }}" +{%- if mas_wipe_mongo_data is defined and mas_wipe_mongo_data != "" %} + - name: mas_wipe_mongo_data + value: "{{ mas_wipe_mongo_data }}" +{%- endif %} +{%- if mas_domain is defined and mas_domain != "" %} + - name: mas_domain + value: "{{ mas_domain }}" +{%- endif %} +{%- if mas_special_characters is defined and mas_special_characters != "" %} + - name: mas_special_characters + value: "{{ mas_special_characters }}" +{%- endif %} +{%- if mas_cluster_issuer is defined and mas_cluster_issuer != "" %} + - name: mas_cluster_issuer + value: "{{ mas_cluster_issuer }}" +{%- endif %} +{%- if idle_timeout is defined and idle_timeout != "" %} + - name: idle_timeout + value: "{{ idle_timeout }}" +{%- endif %} +{%- if idp_session_timeout is defined and idp_session_timeout != "" %} + - name: idp_session_timeout + value: "{{ idp_session_timeout }}" +{%- endif %} +{%- if access_token_timeout is defined and access_token_timeout != "" %} + - name: access_token_timeout + value: "{{ access_token_timeout }}" +{%- endif %} +{%- if refresh_token_timeout is defined and refresh_token_timeout != "" %} + - name: refresh_token_timeout + value: "{{ refresh_token_timeout }}" +{%- endif %} +{%- if default_idp is defined and default_idp != "" %} + - name: default_idp + value: "{{ default_idp }}" +{%- endif %} +{%- if seamless_login is defined and seamless_login != "" %} + - name: seamless_login + value: "{{ seamless_login }}" +{%- endif %} +{%- if sso_cookie_name is defined and sso_cookie_name != "" %} + - name: sso_cookie_name + value: "{{ sso_cookie_name }}" +{%- endif %} +{%- if allow_default_sso_cookie_name is defined and allow_default_sso_cookie_name != "" %} + - name: allow_default_sso_cookie_name + value: "{{ allow_default_sso_cookie_name }}" +{%- endif %} +{%- if use_only_custom_cookie_name is defined and use_only_custom_cookie_name != "" %} + - name: use_only_custom_cookie_name + value: "{{ use_only_custom_cookie_name }}" +{%- endif %} +{%- if disable_ldap_cookie is defined and disable_ldap_cookie != "" %} + - name: disable_ldap_cookie + value: "{{ disable_ldap_cookie }}" +{%- endif %} +{%- if allow_custom_cache_key is defined and allow_custom_cache_key != "" %} + - name: allow_custom_cache_key + value: "{{ allow_custom_cache_key }}" +{%- endif %} +{%- if mas_annotations is defined and mas_annotations != "" %} + - name: mas_annotations + value: "{{ mas_annotations }}" +{%- endif %} + - name: mas_icr_cp + value: "{{ mas_icr_cp }}" + - name: mas_icr_cpopen + value: "{{ mas_icr_cpopen }}" +{%- if mas_trust_default_cas is defined and mas_trust_default_cas != "" %} + - name: mas_trust_default_cas + value: "{{ mas_trust_default_cas }}" +{%- endif %} +{%- if mas_manual_cert_mgmt is defined %} + - name: mas_manual_cert_mgmt + value: "{{ mas_manual_cert_mgmt }}" +{%- endif %} +{%- if enable_ipv6 is defined and enable_ipv6 != "" %} + - name: enable_ipv6 + value: "{{ enable_ipv6 }}" +{%- endif %} +{%- if mas_superuser_username is defined and mas_superuser_username != "" %} + - name: mas_superuser_username + value: "{{ mas_superuser_username }}" + - name: mas_superuser_password + value: "{{ mas_superuser_password }}" +{%- endif %} +{%- if mas_enable_walkme is defined and mas_enable_walkme != "" %} + - name: mas_enable_walkme + value: "{{ mas_enable_walkme }}" +{%- endif %} # MAS Workspace # ------------------------------------------------------------------------- From 85485fc148e5cf55b0270be7f50eaee53b14ed49 Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Wed, 14 May 2025 19:56:37 +0530 Subject: [PATCH 06/13] [patch] Add new vars to pipelineRun --- .../pipelinerun-aiservice-install.yml.j2 | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index 76eacccd..eb89af60 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -568,6 +568,16 @@ spec: value: "{{ tenant_entitlement_start_date }}" - name: tenant_entitlement_end_date value: "{{ tenant_entitlement_end_date }}" + - name: mas_aibroker_tenant_s3_bucket_prefix + value: "{{ mas_aibroker_tenant_s3_bucket_prefix }}" + - name: mas_aibroker_tenant_s3_region + value: "{{ mas_aibroker_tenant_s3_region }}" + - name: mas_aibroker_tenant_s3_endpoint_url + value: "{{ mas_aibroker_tenant_s3_endpoint_url }}" + - name: mas_aibroker_tenant_s3_access_key + value: "{{ mas_aibroker_tenant_s3_access_key }}" + - name: mas_aibroker_tenant_s3_secret_key + value: "{{ mas_aibroker_tenant_s3_secret_key }}" {%- endif %} {%- if mas_aibroker_storage_provider is defined and mas_aibroker_storage_provider != "" %} @@ -637,6 +647,12 @@ spec: value: "{{ mas_aibroker_s3_action }}" - name: mas_aibroker_apikey_action value: "{{ mas_aibroker_apikey_action }}" + - name: mas_aibroker_s3_bucket_prefix + value: "{{ mas_aibroker_s3_bucket_prefix }}" + - name: mas_aibroker_s3_region + value: "{{ mas_aibroker_storage_region }}" + - name: mas_aibroker_s3_endpoint_url + value: "{{ mas_aibroker_s3_endpoint_url }}" {%- endif %} {%- if mas_aibroker_db_host is defined and mas_aibroker_db_host != "" %} From 79675f2ea64700b33dd28eb2173594b521f6ac2b Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Tue, 20 May 2025 09:40:00 +0530 Subject: [PATCH 07/13] [patch] add rsl params --- .../devops/templates/pipelinerun-aiservice-install.yml.j2 | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index eb89af60..f4c5c233 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -578,6 +578,12 @@ spec: value: "{{ mas_aibroker_tenant_s3_access_key }}" - name: mas_aibroker_tenant_s3_secret_key value: "{{ mas_aibroker_tenant_s3_secret_key }}" + - name: rsl_url + value: "{{ rsl_url }}" + - name: rsl_org_id + value: "{{ rsl_org_id }}" + - name: rsl_token + value: "{{ rsl_token }}" {%- endif %} {%- if mas_aibroker_storage_provider is defined and mas_aibroker_storage_provider != "" %} @@ -650,7 +656,7 @@ spec: - name: mas_aibroker_s3_bucket_prefix value: "{{ mas_aibroker_s3_bucket_prefix }}" - name: mas_aibroker_s3_region - value: "{{ mas_aibroker_storage_region }}" + value: "{{ mas_aibroker_s3_region }}" - name: mas_aibroker_s3_endpoint_url value: "{{ mas_aibroker_s3_endpoint_url }}" {%- endif %} From 292c103b87810d264a450e87fdc86929e0b2a267 Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Wed, 21 May 2025 14:09:24 +0530 Subject: [PATCH 08/13] [patch] reorder some s3 params --- .../templates/pipelinerun-aiservice-install.yml.j2 | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index f4c5c233..dd0d5491 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -584,6 +584,13 @@ spec: value: "{{ rsl_org_id }}" - name: rsl_token value: "{{ rsl_token }}" + - name: mas_aibroker_s3_bucket_prefix + value: "{{ mas_aibroker_s3_bucket_prefix }}" + - name: mas_aibroker_s3_region + value: "{{ mas_aibroker_s3_region }}" + - name: mas_aibroker_s3_endpoint_url + value: "{{ mas_aibroker_s3_endpoint_url }}" + {%- endif %} {%- if mas_aibroker_storage_provider is defined and mas_aibroker_storage_provider != "" %} @@ -653,12 +660,6 @@ spec: value: "{{ mas_aibroker_s3_action }}" - name: mas_aibroker_apikey_action value: "{{ mas_aibroker_apikey_action }}" - - name: mas_aibroker_s3_bucket_prefix - value: "{{ mas_aibroker_s3_bucket_prefix }}" - - name: mas_aibroker_s3_region - value: "{{ mas_aibroker_s3_region }}" - - name: mas_aibroker_s3_endpoint_url - value: "{{ mas_aibroker_s3_endpoint_url }}" {%- endif %} {%- if mas_aibroker_db_host is defined and mas_aibroker_db_host != "" %} From b1fa6e815ac81577e48bc650c0bb623e42859eb6 Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Thu, 29 May 2025 12:06:52 +0530 Subject: [PATCH 09/13] [patch] Add extra params --- .../templates/pipelinerun-aiservice-install.yml.j2 | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index dd0d5491..d2dc6690 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -559,6 +559,17 @@ spec: # ------------------------------------------------------------------------- - name: mas_app_channel_aibroker value: "{{ mas_app_channel_aibroker }}" + - name: install_minio_aiservice + value: "{{ install_minio_aiservice }}" + - name: install_mariadb_aiservice + value: "{{ install_mariadb_aiservice }}" + - name: install_mongo_aiservice + value: "{{ install_mongo_aiservice }}" + - name: install_sls_aiservice + value: "{{ install_sls_aiservice }}" + - name: install_dro_aiservice + value: "{{ install_dro_aiservice }}" + # AI Broker Tenant # ------------------------------------------------------------------------- From d0f8fe3b38ba3a8a992a75355b8e85a1455d8d41 Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Thu, 29 May 2025 22:59:32 +0530 Subject: [PATCH 10/13] [patch] Add hold flag for aiservice-wait-suite --- src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index d2dc6690..bf8b7241 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -569,6 +569,8 @@ spec: value: "{{ install_sls_aiservice }}" - name: install_dro_aiservice value: "{{ install_dro_aiservice }}" + - name: hold_aiservice_for_mas + value: "{{ hold_aiservice_for_mas }}" # AI Broker Tenant From ae7719578378752484833dc91c44553d3b0d33b1 Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Thu, 5 Jun 2025 15:28:15 +0530 Subject: [PATCH 11/13] [patch] remove unused var from pipeline --- src/mas/devops/tekton.py | 2 +- .../pipelinerun-aiservice-install.yml.j2 | 175 +----------------- 2 files changed, 4 insertions(+), 173 deletions(-) diff --git a/src/mas/devops/tekton.py b/src/mas/devops/tekton.py index 61667f6f..7084a6e8 100644 --- a/src/mas/devops/tekton.py +++ b/src/mas/devops/tekton.py @@ -404,7 +404,7 @@ def launchInstallPipeline(dynClient: DynamicClient, params: dict) -> str: def launchInstallPipelineForAiservice(dynClient: DynamicClient, params: dict) -> str: """ - Create a PipelineRun to install the chosen MAS instance (and selected dependencies) + Create a PipelineRun to install the Aiservice """ instanceId = params["mas_instance_id"] namespace = f"mas-{instanceId}-pipelines" diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index bf8b7241..85bd9c8a 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -2,7 +2,7 @@ apiVersion: tekton.dev/v1beta1 kind: PipelineRun metadata: - name: "{{mas_instance_id}}-install-{{ timestamp }}" + name: "aiservice-install-{{ timestamp }}" labels: tekton.dev/pipeline: aiservice-install spec: @@ -64,31 +64,7 @@ spec: value: "{{ storage_class_rwx }}" - name: storage_class_rwo value: "{{ storage_class_rwo }}" -{%- if eck_action is defined and eck_action != "" %} - - # Dependencies - ECK - # ------------------------------------------------------------------------- - - name: eck_action - value: "{{ eck_action }}" - - - name: eck_enable_elasticsearch - value: "{{ eck_enable_elasticsearch }}" - - name: eck_enable_kibana - value: "{{ eck_enable_kibana }}" - - name: eck_enable_logstash - value: "{{ eck_enable_logstash }}" - - name: eck_enable_filebeat - value: "{{ eck_enable_filebeat }}" - - {%- if eck_remote_es_hosts is defined and eck_remote_es_hosts != "" %} - - name: eck_remote_es_hosts - value: "{{ eck_remote_es_hosts }}" - - name: eck_remote_es_username - value: "{{ eck_remote_es_username }}" - - name: eck_remote_es_password - value: "{{ eck_remote_es_password }}" - {%- endif %} -{%- endif %} + {%- if turbonomic_server_url is defined and turbonomic_server_url != "" %} # Dependencies - Turbonomic @@ -212,60 +188,7 @@ spec: value: "{{ ibm_mongo_admin_password }}" {%- endif %} {%- endif %} -{%- if kafka_action_system == "install" %} - - # Dependencies - Kafka - # ------------------------------------------------------------------------- - - name: kafka_action_system - value: "{{ kafka_action_system }}" - - name: kafka_provider - value: "{{ kafka_provider }}" - - name: kafka_namespace - value: "{{ kafka_namespace }}" - - name: kafka_version - value: "{{ kafka_version }}" - {%- if kafka_provider == "aws" %} - - # Dependencies - AWS MSK - # ------------------------------------------------------------------------- - - name: vpc_id - value: "{{ vpc_id }}" - - name: aws_kafka_user_name - value: "{{ aws_kafka_user_name }}" - - name: aws_kafka_user_password - value: "{{ aws_kafka_user_password }}" - - name: aws_msk_instance_type - value: "{{ aws_msk_instance_type }}" - - name: aws_msk_instance_number - value: "{{ aws_msk_instance_number }}" - - name: aws_msk_volume_size - value: "{{ aws_msk_volume_size }}" - - name: aws_msk_cidr_az1 - value: "{{ aws_msk_cidr_az1 }}" - - name: aws_msk_cidr_az2 - value: "{{ aws_msk_cidr_az2 }}" - - name: aws_msk_cidr_az3 - value: "{{ aws_msk_cidr_az3 }}" - - name: aws_msk_ingress_cidr - value: "{{ aws_msk_ingress_cidr }}" - - name: aws_msk_egress_cidr - value: "{{ aws_msk_egress_cidr }}" - {%- elif kafka_provider == "ibm" %} - - # Dependencies - IBM Cloud Event Streams - # ------------------------------------------------------------------------- - - name: eventstreams_resourcegroup - value: "{{ eventstreams_resourcegroup }}" - - name: eventstreams_name - value: "{{ eventstreams_name }}" - - name: eventstreams_location - value: "{{ eventstreams_location }}" - - name: eventstreams_retention - value: "{{ eventstreams_retention }}" - - name: eventstreams_create_manage_jms_topics - value: "{{ eventstreams_create_manage_jms_topics }}" - {%- endif %} -{%- endif %} + {%- if cpd_product_version is defined and cpd_product_version != "" %} # Dependencies - CP4D @@ -326,28 +249,9 @@ spec: - name: dro_namespace value: "{{ dro_namespace }}" {%- endif %} -{%- if cos_type is defined and cos_type != "" %} - - # Dependencies - COS - # ------------------------------------------------------------------------- - - name: cos_type - value: "{{ cos_type }}" - - name: cos_resourcegroup - value: "{{ cos_resourcegroup }}" - - name: cos_instance_name - value: "{{ cos_instance_name }}" - - name: cos_action - value: "{{ cos_action }}" - - name: cos_apikey - value: "{{ cos_apikey }}" - - name: cos_bucket_name - value: "{{ cos_bucket_name }}" -{%- endif %} # MAS Catalog # ------------------------------------------------------------------------- - - name: mas_channel - value: "{{ mas_channel }}" - name: mas_catalog_version value: "{{ mas_catalog_version }}" {%- if mas_catalog_digest is defined and mas_catalog_digest != "" %} @@ -445,66 +349,10 @@ spec: # ------------------------------------------------------------------------- - name: mas_instance_id value: "{{ mas_instance_id }}" -{%- if mas_wipe_mongo_data is defined and mas_wipe_mongo_data != "" %} - - name: mas_wipe_mongo_data - value: "{{ mas_wipe_mongo_data }}" -{%- endif %} -{%- if mas_domain is defined and mas_domain != "" %} - - name: mas_domain - value: "{{ mas_domain }}" -{%- endif %} {%- if mas_special_characters is defined and mas_special_characters != "" %} - name: mas_special_characters value: "{{ mas_special_characters }}" {%- endif %} -{%- if mas_cluster_issuer is defined and mas_cluster_issuer != "" %} - - name: mas_cluster_issuer - value: "{{ mas_cluster_issuer }}" -{%- endif %} -{%- if idle_timeout is defined and idle_timeout != "" %} - - name: idle_timeout - value: "{{ idle_timeout }}" -{%- endif %} -{%- if idp_session_timeout is defined and idp_session_timeout != "" %} - - name: idp_session_timeout - value: "{{ idp_session_timeout }}" -{%- endif %} -{%- if access_token_timeout is defined and access_token_timeout != "" %} - - name: access_token_timeout - value: "{{ access_token_timeout }}" -{%- endif %} -{%- if refresh_token_timeout is defined and refresh_token_timeout != "" %} - - name: refresh_token_timeout - value: "{{ refresh_token_timeout }}" -{%- endif %} -{%- if default_idp is defined and default_idp != "" %} - - name: default_idp - value: "{{ default_idp }}" -{%- endif %} -{%- if seamless_login is defined and seamless_login != "" %} - - name: seamless_login - value: "{{ seamless_login }}" -{%- endif %} -{%- if sso_cookie_name is defined and sso_cookie_name != "" %} - - name: sso_cookie_name - value: "{{ sso_cookie_name }}" -{%- endif %} -{%- if allow_default_sso_cookie_name is defined and allow_default_sso_cookie_name != "" %} - - name: allow_default_sso_cookie_name - value: "{{ allow_default_sso_cookie_name }}" -{%- endif %} -{%- if use_only_custom_cookie_name is defined and use_only_custom_cookie_name != "" %} - - name: use_only_custom_cookie_name - value: "{{ use_only_custom_cookie_name }}" -{%- endif %} -{%- if disable_ldap_cookie is defined and disable_ldap_cookie != "" %} - - name: disable_ldap_cookie - value: "{{ disable_ldap_cookie }}" -{%- endif %} -{%- if allow_custom_cache_key is defined and allow_custom_cache_key != "" %} - - name: allow_custom_cache_key - value: "{{ allow_custom_cache_key }}" -{%- endif %} {%- if mas_annotations is defined and mas_annotations != "" %} - name: mas_annotations value: "{{ mas_annotations }}" @@ -535,24 +383,7 @@ spec: - name: mas_enable_walkme value: "{{ mas_enable_walkme }}" {%- endif %} - - # MAS Workspace - # ------------------------------------------------------------------------- - - name: mas_workspace_id - value: "{{ mas_workspace_id }}" - - name: mas_workspace_name - value: "{{ mas_workspace_name }}" -{%- if grafana_action is defined and grafana_action != "" %} - # Grafana - # ------------------------------------------------------------------------- - - name: grafana_action - value: "{{ grafana_action }}" - - name: grafana_v5_namespace - value: "{{ grafana_v5_namespace }}" - - name: grafana_instance_storage_size - value: "{{ grafana_instance_storage_size }}" -{%- endif %} {%- if mas_app_channel_aibroker is defined and mas_app_channel_aibroker != "" %} # AI Broker From a3430f558db28a48d3a5be058c651fa1882b6550 Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Tue, 10 Jun 2025 09:49:05 +0530 Subject: [PATCH 12/13] [patch] Introduce aibroker_instance_id --- src/mas/devops/data/catalogs/v9-250403-amd64.yaml | 2 -- src/mas/devops/tekton.py | 2 +- .../devops/templates/pipelinerun-aiservice-install.yml.j2 | 6 +++--- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/mas/devops/data/catalogs/v9-250403-amd64.yaml b/src/mas/devops/data/catalogs/v9-250403-amd64.yaml index 49d45edb..217226db 100644 --- a/src/mas/devops/data/catalogs/v9-250403-amd64.yaml +++ b/src/mas/devops/data/catalogs/v9-250403-amd64.yaml @@ -77,8 +77,6 @@ mas_visualinspection_version: 9.0.x: 9.0.8 # updated 8.10.x: 8.8.4 # No Update 8.11.x: 8.9.11 # updated -mas_aibroker_version: - 9.0.x: 9.0.5 # Extra Images for UDS # ------------------------------------------------------------------------------ diff --git a/src/mas/devops/tekton.py b/src/mas/devops/tekton.py index 7084a6e8..5f0bf485 100644 --- a/src/mas/devops/tekton.py +++ b/src/mas/devops/tekton.py @@ -406,7 +406,7 @@ def launchInstallPipelineForAiservice(dynClient: DynamicClient, params: dict) -> """ Create a PipelineRun to install the Aiservice """ - instanceId = params["mas_instance_id"] + instanceId = params["aibroker_instance_id"] namespace = f"mas-{instanceId}-pipelines" timestamp = launchPipelineRun(dynClient, namespace, "pipelinerun-aiservice-install", params) diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index 85bd9c8a..5c6cc544 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -345,10 +345,10 @@ spec: value: "{{ mas_add_channel }}" {%- endif %} - # MAS Core + # Common params # ------------------------------------------------------------------------- - - name: mas_instance_id - value: "{{ mas_instance_id }}" + - name: aibroker_instance_id + value: "{{ aibroker_instance_id }}" {%- if mas_special_characters is defined and mas_special_characters != "" %} - name: mas_special_characters value: "{{ mas_special_characters }}" From 1db8fa3025b42b135880a277dc8f5f3fbd9ca468 Mon Sep 17 00:00:00 2001 From: Bhautik Vala Date: Tue, 10 Jun 2025 14:58:35 +0530 Subject: [PATCH 13/13] [patch] remove unused vars --- .../pipelinerun-aiservice-install.yml.j2 | 123 +----------------- 1 file changed, 2 insertions(+), 121 deletions(-) diff --git a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 index 5c6cc544..c1730c9f 100644 --- a/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 +++ b/src/mas/devops/templates/pipelinerun-aiservice-install.yml.j2 @@ -2,7 +2,7 @@ apiVersion: tekton.dev/v1beta1 kind: PipelineRun metadata: - name: "aiservice-install-{{ timestamp }}" + name: "{{aibroker_instance_id}}-install-{{ timestamp }}" labels: tekton.dev/pipeline: aiservice-install spec: @@ -80,84 +80,7 @@ spec: - name: turbonomic_password value: "{{ turbonomic_password }}" {%- endif %} -{%- if db2_action_system == "install" or db2_action_manage == "install" %} - - # Dependencies - Db2 - Actions - # ------------------------------------------------------------------------- - - name: db2_action_system - value: "{{ db2_action_system }}" - - name: db2_action_manage - value: "{{ db2_action_manage }}" - - # Dependencies - Db2u Operator - # ------------------------------------------------------------------------- - - name: db2_namespace - value: "{{ db2_namespace }}" - - name: db2_channel - value: "{{ db2_channel }}" - - name: db2_type - value: "{{ db2_type }}" - - name: db2_timezone - value: "{{ db2_timezone }}" - {%- if db2_meta_storage_accessmode is defined and db2_meta_storage_accessmode != "" %} - - # Dependencies - Db2 - Access Mode - # ------------------------------------------------------------------------- - - name: db2_meta_storage_accessmode - value: "{{ db2_meta_storage_accessmode }}" - - name: db2_backup_storage_accessmode - value: "{{ db2_backup_storage_accessmode }}" - - name: db2_logs_storage_accessmode - value: "{{ db2_logs_storage_accessmode }}" - - name: db2_temp_storage_accessmode - value: "{{ db2_temp_storage_accessmode }}" - - name: db2_data_storage_accessmode - value: "{{ db2_data_storage_accessmode }}" - {%- endif %} - {%- if db2_affinity_key is defined and db2_affinity_key != "" %} - - # Dependencies - Db2 - Node Scheduling - # ------------------------------------------------------------------------- - - name: db2_affinity_key - value: "{{ db2_affinity_key }}" - - name: db2_affinity_value - value: "{{ db2_affinity_value }}" - - name: db2_tolerate_key - value: "{{ db2_tolerate_key }}" - - name: db2_tolerate_value - value: "{{ db2_tolerate_value }}" - - name: db2_tolerate_effect - value: "{{ db2_tolerate_effect }}" - {%- endif %} - {%- if db2_cpu_requests is defined and db2_cpu_requests != "" %} - - # Dependencies - Db2 - Memory & CPU Resources - # ------------------------------------------------------------------------- - - name: db2_cpu_requests - value: "{{ db2_cpu_requests }}" - - name: db2_cpu_limits - value: "{{ db2_cpu_limits }}" - - name: db2_memory_requests - value: "{{ db2_memory_requests }}" - - name: db2_memory_limits - value: "{{ db2_memory_limits }}" - {%- endif %} - {%- if db2_meta_storage_size is defined and db2_meta_storage_size != "" %} - - # Dependencies - Db2 - Storage Capacity - # ------------------------------------------------------------------------- - - name: db2_meta_storage_size - value: "{{ db2_meta_storage_size }}" - - name: db2_backup_storage_size - value: "{{ db2_backup_storage_size }}" - - name: db2_logs_storage_size - value: "{{ db2_logs_storage_size }}" - - name: db2_temp_storage_size - value: "{{ db2_temp_storage_size }}" - - name: db2_data_storage_size - value: "{{ db2_data_storage_size }}" - {%- endif %} -{%- endif %} + {%- if mongodb_action is defined and mongodb_action != "" %} # Dependencies - MongoDb @@ -189,26 +112,6 @@ spec: {%- endif %} {%- endif %} -{%- if cpd_product_version is defined and cpd_product_version != "" %} - - # Dependencies - CP4D - # ------------------------------------------------------------------------- - - name: cpd_product_version - value: "{{ cpd_product_version }}" - - name: cpd_install_spss - value: "{{ cpd_install_spss }}" - - name: cpd_install_openscale - value: "{{ cpd_install_openscale }}" - - name: cpd_install_cognos - value: "{{ cpd_install_cognos }}" - - name: cpd_install_ws - value: "{{ cpd_install_ws }}" - - name: cpd_install_wml - value: "{{ cpd_install_wml }}" - - name: cpd_install_ae - value: "{{ cpd_install_ae }}" -{%- endif %} - # Dependencies - SLS # ------------------------------------------------------------------------- - name: sls_channel @@ -349,14 +252,6 @@ spec: # ------------------------------------------------------------------------- - name: aibroker_instance_id value: "{{ aibroker_instance_id }}" -{%- if mas_special_characters is defined and mas_special_characters != "" %} - - name: mas_special_characters - value: "{{ mas_special_characters }}" -{%- endif %} -{%- if mas_annotations is defined and mas_annotations != "" %} - - name: mas_annotations - value: "{{ mas_annotations }}" -{%- endif %} - name: mas_icr_cp value: "{{ mas_icr_cp }}" - name: mas_icr_cpopen @@ -369,20 +264,6 @@ spec: - name: mas_manual_cert_mgmt value: "{{ mas_manual_cert_mgmt }}" {%- endif %} -{%- if enable_ipv6 is defined and enable_ipv6 != "" %} - - name: enable_ipv6 - value: "{{ enable_ipv6 }}" -{%- endif %} -{%- if mas_superuser_username is defined and mas_superuser_username != "" %} - - name: mas_superuser_username - value: "{{ mas_superuser_username }}" - - name: mas_superuser_password - value: "{{ mas_superuser_password }}" -{%- endif %} -{%- if mas_enable_walkme is defined and mas_enable_walkme != "" %} - - name: mas_enable_walkme - value: "{{ mas_enable_walkme }}" -{%- endif %} {%- if mas_app_channel_aibroker is defined and mas_app_channel_aibroker != "" %}