Skip to content

Extensions field to Helm in Terminus

During installation, Terminus injects extended field into the APP, using the configuration from TerminusManifest.yaml.

The information from these extended fields can be directly referenced in the template without being defined in values.yaml. If there are definitions in values.yaml with the same name, the system value will overwrite them.

  • User Infomation

    ValueTypeDescription
    .Values.bfl.usernameStringUsername of the currently installing APP
    .Values.user.zoneStringDomain of the current user
  • Domain Information

    ValueTypeDescription
    .Values.domainMap<String,String>Define the Entry for the App, using the entrance name as the key and the URL as the value.
  • Storage Information

    ValueTypeDescription
    .Values.userspace.appDataStringCluster storage address available to the APP
    .Values.userspace.appCacheStringLocal node cache address available to the APP
    .Values.userspace.userDataStringstorage directory of User's data
  • Cluster Information

    ValueTypeDescription
    .Values.cluster.archStringCluster CPU archtecture

    Multi-platform (AMD64 and ARM) cluster is not supported for now.

  • Application Dependencies

    ValueTypeDescription
    .Values.depsMap<String, Value>Current address and port of the applications the APP depends on
    .Values.svcsMap<String, Value>Other services and ports of the applications the APP depends on

    When an application sets dependencies on another application, this will be passed through the deps parameter. For instance, if an application, sets a dependency on another application called 'A-Server', and 'A-Server' sets the entry name as 'aserver' with the entry host configured as 'aserver-svc', the value will be like:

    {
      "aserver_host": "aserver-svc.<A-Server namespce>",
      "aserver_port": 80
    }

    At the same time, svcs will pass in all services of A-Server.

    {
      "aserver-svc_host": "aserver-svc.<A-Server namespce>",
      "aserver-svc_port": [80]    # If there are multiple ports in the service, they will be passed in together.
    }
  • Database Information

    ValueTypeDescription
    .Values.postgres.hostStringPostgreSQL database host address
    .Values.postgres.portNumberPostgreSQL database port
    .Values.postgres.usernameStringPostgreSQL database username
    .Values.postgres.passwordStringPostgreSQL database password
    .Values.postgres.databasesMap<String,String>PostgreSQL database name. Use the configured database name as the key. For instance, if it's configured as 'app_db', the variable would be .Values.postgres.databases.app_db.
    .Values.mongo.hostStringMongoDB database host address
    .Values.mongo.portNumberMongoDB database port
    .Values.mongo.usernameStringMongoDB database username
    .Values.mongo.passwordStringMongoDB database username
    .Values.mongo.databasesMap<String,String>MongoDB database name. Use the configured database name as the key. For instance, if it's configured as 'app_db', the variable would be .Values.mongo.databases.app_db
    .Values.redis.hostStringRedis database host address
    .Values.redis.portNumberRedis database port
    .Values.redis.passwordStringRedis database username
    .Values.redis.namespacesMap<String,String>Redis namespace. Use the configured namespace as the key. For instance, if it's configured as 'app_ns', the variable would be .Values.redis.namespaces.app_ns