Example: Provide matrixx.yaml Using a ConfigMap-type Configuration Source

In the following example, the matrixx.yaml file is provided using a ConfigMap-type configuration source.

Procedure

  1. Create a ConfigMap object out of your matrixx.yaml file in the same system that the MATRIXX Helm chart is deployed and in the same namespace. In this example, the ConfigMap is called mymatrixx-config-map and the namespace is matrixx-ns1:
    kubectl create configmap mymatrixx-config-map --from-file=matrixx.yaml --namespace="matrixx-ns1"
  2. In your Helm values file, bind your ConfigMap object to a configuration source object (named mymatrixxConfigSource in this example):
    global:
      configurationSources:
        mymatrixxConfigSource:
          configmap:
            name: "mymatrixx-config-map"
  3. In the same Helm values file, bind that configuration source object to My MATRIXX:
    mymatrixx:
      configuration:
        sources:
          - refName: "mymatrixxConfigSource"
  4. Redeploy and start My MATRIXX. The log file shows that My MATRIXX is now drawing properties from your matrixx.yaml file located at /opt/mtx/conf/:
    Properties from file [/opt/mtx/conf/matrixx.yaml]:
                    prefix = MYM
                    reloadAfterSvn = true
                    maxTableSize = 2500
                    domainDeleteIdleTime = sessionTimeout + 60000
                    clientSessionTimeoutWarning = sessionTimeout - 300000
                    matrixx.ldap.contextSource = ldap://localhost:10389/dc=example,dc=com
                    matrixx.ldap.userDnPrefix = uid=
                    matrixx.ldap.userDnSuffix = ,ou=people,dc=example,dc=com
                    matrixx.ldap.userDnPatterns = uid={0},ou=people
                    matrixx.ldap.authoritiesPopulator = ou=groups
                    matrixx.ldap.groupRoleAttribute = ou
                    metrics.enabled = false
                    myMatrixxMeasurementEnabled = true
                    myMatrixxFileMeasurementEnabled = false
                    validateSchemaVersion.pricingDeployment = true
                    validateSchemaVersion.taxDeployment = true
                    loadingFileWaitingTime = 120