Skip to main content
Version: Deploy 23.1

Customize Your Site—Custom Configuration of Deploy

Prerequisites

  • A Digital.ai Release installation on a kubernetes cluster
  • kubectl connected to the cluster
  • One of the following (or later) versions of Release operator:
    • 10.2.18
    • 10.3.16
    • 22.0.8
    • 22.1.6
    • 22.2.2

Custom Configuration of deployit-security.xml from Master Pods

  1. Download the latest template configuration file that exists on your Deploy pod that is running. For example, find this file at /opt/xebialabs/xl-deploy-server/conf/deployit-security.xml in master pod.

    kubectl cp digitalai/dai-xld-digitalai-deploy-master-0:/opt/xebialabs/xl-deploy-server/conf/deployit-security.xml .
  2. Update the custom resource (CR) file or the CR on the cluster.

    1. Update the spec.deploy.configurationManagement.master.configuration.script and spec.deploy.configurationManagement.master.configuration.scriptData specs in the CR file.
      1. Open and copy the contents of the deploy-security.xml file and add the same under the deploy-security.xml key.

      2. Update the script under the spec.deploy.configurationManagement.master.configuration.script spec.

        Here's an example.

        ...
        script: |-
        ...
        cp /opt/xebialabs/xl-deploy-server/xld-configuration-management/deployit-security.xml /opt/xebialabs/xl-deploy-server/conf/deployit-security.xml && echo "Changing the deployit-security.xml";
        scriptData:
        ...
        deployit-security.xml: |-
        <?xml version="1.0" encoding="UTF-8"?>
        ...

        Note: This is the example of master configuration. Under spec.deploy.configurationManagement there are also worker and centralConfiguration sections.

  3. Save and apply changes from the CR file. Restart the pods.

    kubectl rollout restart sts dai-xld-digitalai-deploy-master -n digitalai

Custom Configuration of deployit.conf.template from Master Pods

  1. Download the latest template configuration file that exists on the master Deploy pod.

    For example, if you want to update the deployiy.conf.template, it is at /opt/xebialabs/xl-deploy-server/default-conf/deployit.conf.template in the master pod.

    kubectl cp digitalai/dai-xld-digitalai-deploy-master-0:/opt/xebialabs/xl-deploy-server/default-conf/deployit.conf.template .
  2. Update the custom resource (CR) file or CR on the cluster.

    1. Upate the spec.deploy.configurationManagement.master.configuration.script and spec.deploy.configurationManagement.master.configuration.scriptData specs in the CR file.
      1. Open and copy the contents of the deployit.conf.template file and add the contents under the deployit.conf.template key.

      2. Add the script under the spec.deploy.configurationManagement.master.configuration.script spec.

        Here's an example.

        ...
        script: |-
        ...
        cp /opt/xebialabs/xl-deploy-server/xld-configuration-management/deployit.conf.template /opt/xebialabs/xl-deploy-server/default-conf/deployit.conf.template && echo "Changing the deployit.conf.template";
        scriptData:
        ...
        deployit.conf.template: |-
        # Template for non-HOCON Digital.ai Deploy configuration file
        #
        admin.password=${ADMIN_PASSWORD}
        ...

        Note: This is the example of master configuration. Under spec.deploy.configurationManagement there are also worker and centralConfiguration sections.

  3. Save and apply changes from the CR file. Restart the pods.

    kubectl rollout restart sts dai-xld-digitalai-deploy-master -n digitalai

Custom Configuration of deploy-server.yaml.template from Central Configuration Pods

  1. Download the latest template configuration file that exists on the Deploy's Central Configuration pod.

    For example, if you want to update the deploy-server.yaml.template, it is at /opt/xebialabs/central-configuration-server/central-conf/deploy-server.yaml.template in the master pod.

    kubectl cp digitalai/dai-xld-digitalai-deploy-cc-server-0:/opt/xebialabs/central-configuration-server/central-conf/deploy-server.yaml.template .
  2. Update the custom resource (CR) file or CR on the cluster.

  3. Update the spec.deploy.configurationManagement.centralConfiguration.configuration.script and spec.deploy.configurationManagement.centralConfiguration.configuration.scriptData specs in the CR file.

  4. Open and copy the contents of the deploy-server.yaml.template file and add the contents to the deploy-server.yaml.template key.

    Here's an example.

    ...
    script: |-
    ...
    cp /opt/xebialabs/central-configuration-server/xld-configuration-management/deploy-server.yaml.template /opt/xebialabs/central-configuration-server/central-conf/deploy-server.yaml.template && echo "Changing the deploy-server.yaml.template";
    scriptData:
    ...
    deploy-server.yaml.template: |-
    deploy.server:
    ...
  5. Is OIDC enabled? If yes, disable it. Because, the changes that are from there will conflict with the changes in the deploy-server.yaml.template file. Add spec.oidc.enabled: false in the CR file.

    Note: The /opt/xebialabs/central-configuration-server/centralConfiguration/deploy-oidc.yaml file will be removed when you disable OIDC in the CR file. For this reason, you must copy this file too.

    For example, the spec.deploy.configurationManagement.centralConfiguration.configuration.script spec would be like:

    ...
    script: |-
    ...
    cp /opt/xebialabs/central-configuration-server/xld-configuration-management/deploy-server.yaml.template /opt/xebialabs/central-configuration-server/central-conf/deploy-server.yaml.template && echo "Changing the deploy-server.yaml.template";
    cp /opt/xebialabs/central-configuration-server/xld-configuration-management/deploy-oidc.yaml /opt/xebialabs/central-configuration-server/centralConfiguration/deploy-oidc.yaml && echo "Changing the deploy-oidc.yaml";
    scriptData:
    ...
    deploy-server.yaml.template: |-
    deploy.server:
    ...
    deploy-oidc.yaml: |-
    deploy.security:
    ...
  6. Save and apply changes from the CR file. Restart the pods.

    kubectl rollout restart sts dai-xld-digitalai-deploy-cc-server -n digitalai
    kubectl rollout restart sts dai-xld-digitalai-deploy-master -n digitalai
    kubectl rollout restart sts dai-xld-digitalai-deploy-worker -n digitalai