github.com/verrazzano/verrazzano@v1.7.1/tests/e2e/config/scripts/process_oci_dns_install_yaml.sh (about) 1 #!/bin/bash 2 3 # Copyright (c) 2020, 2022, Oracle and/or its affiliates. 4 # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 5 6 INSTALL_CONFIG_TO_EDIT=$1 7 CERT_MGR=${2:-"acme"} 8 ACME_ENV=${3:-"staging"} 9 DNS_SCOPE=${4:-"GLOBAL"} 10 NGINX_LB_SCOPE=${5:-"GLOBAL"} 11 ISTIO_LB_SCOPE=${6:-"GLOBAL"} 12 if [ "${DNS_SCOPE}" != "PRIVATE" ] && [ "${DNS_SCOPE}" != "GLOBAL" ]; then 13 # setting scope to global even for invalid values. This should not happen in jenkins flow 14 DNS_SCOPE="GLOBAL" 15 fi 16 if [ "${NGINX_LB_SCOPE}" != "PRIVATE" ] && [ "${NGINX_LB_SCOPE}" != "GLOBAL" ]; then 17 # setting scope to global even for invalid values. This should not happen in jenkins flow 18 NGINX_LB_SCOPE="GLOBAL" 19 fi 20 if [ "${ISTIO_LB_SCOPE}" != "PRIVATE" ] && [ "${ISTIO_LB_SCOPE}" != "GLOBAL" ]; then 21 # setting scope to global even for invalid values. This should not happen in jenkins flow 22 ISTIO_LB_SCOPE="GLOBAL" 23 fi 24 echo "Editing install config file for OCI DNS ${INSTALL_CONFIG_TO_EDIT}" 25 yq -i eval ".spec.environmentName = \"${VZ_ENVIRONMENT_NAME}\"" ${INSTALL_CONFIG_TO_EDIT} 26 yq -i eval ".spec.profile = \"${INSTALL_PROFILE}\"" ${INSTALL_CONFIG_TO_EDIT} 27 yq -i eval ".spec.components.dns.oci.dnsZoneCompartmentOCID = \"${OCI_DNS_COMPARTMENT_OCID}\"" ${INSTALL_CONFIG_TO_EDIT} 28 yq -i eval ".spec.components.dns.oci.dnsZoneOCID = \"${OCI_DNS_ZONE_OCID}\"" ${INSTALL_CONFIG_TO_EDIT} 29 yq -i eval ".spec.components.dns.oci.dnsZoneName = \"${OCI_DNS_ZONE_NAME}\"" ${INSTALL_CONFIG_TO_EDIT} 30 yq -i eval ".spec.components.dns.oci.dnsScope = \"${DNS_SCOPE}\"" ${INSTALL_CONFIG_TO_EDIT} 31 if [ "${CERT_MGR}" == "acme" ]; then 32 yq -i eval ".spec.components.certManager.certificate.acme.provider = \"letsEncrypt\"" ${INSTALL_CONFIG_TO_EDIT} 33 yq -i eval ".spec.components.certManager.certificate.acme.emailAddress = \"emailAddress@domain.com\"" ${INSTALL_CONFIG_TO_EDIT} 34 yq -i eval ".spec.components.certManager.certificate.acme.environment = \"${ACME_ENV}\"" ${INSTALL_CONFIG_TO_EDIT} 35 fi 36 if [ $INSTALL_PROFILE == "dev" ] && [ $CRD_API_VERSION == "v1alpha1" ]; then 37 yq -i eval ".spec.components.keycloak.mysql.mysqlInstallArgs.[0].name = \"persistence.enabled\"" ${INSTALL_CONFIG_TO_EDIT} 38 yq -i eval ".spec.components.keycloak.mysql.mysqlInstallArgs.[0].value = \"false\"" ${INSTALL_CONFIG_TO_EDIT} 39 elif [ $INSTALL_PROFILE == "dev" ] && [ $CRD_API_VERSION == "v1beta1" ]; then 40 yq -i eval ".spec.components.keycloak.overrides.[0].values.persistence.enabled = false" ${INSTALL_CONFIG_TO_EDIT} 41 fi 42 43 if [ ${NGINX_LB_SCOPE} == "PRIVATE" ] && [ $CRD_API_VERSION == "v1beta1" ]; then 44 yq -i eval ".spec.components.ingressNGINX.overrides[0].values.controller.service.annotations.\"service.beta.kubernetes.io/oci-load-balancer-internal\" = \"true\"" ${INSTALL_CONFIG_TO_EDIT} 45 fi 46 if [ ${ISTIO_LB_SCOPE} == "PRIVATE" ] && [ $CRD_API_VERSION == "v1beta1" ]; then 47 yq -i eval ".spec.components.istio.overrides[0].values.apiVersion = \"install.istio.io/v1alpha1\"" ${INSTALL_CONFIG_TO_EDIT} 48 yq -i eval ".spec.components.istio.overrides[0].values.kind = \"IstioOperator\"" ${INSTALL_CONFIG_TO_EDIT} 49 yq -i eval ".spec.components.istio.overrides[0].values.spec.components.ingressGateways[0].enabled = true" ${INSTALL_CONFIG_TO_EDIT} 50 yq -i eval ".spec.components.istio.overrides[0].values.spec.components.ingressGateways[0].name = \"istio-ingressgateway\"" ${INSTALL_CONFIG_TO_EDIT} 51 yq -i eval ".spec.components.istio.overrides[0].values.spec.components.ingressGateways[0].k8s.serviceAnnotations.\"service.beta.kubernetes.io/oci-load-balancer-internal\" = \"true\"" ${INSTALL_CONFIG_TO_EDIT} 52 fi 53 54 cat ${INSTALL_CONFIG_TO_EDIT}