Skip to content

Open Parameters

This section primarily concerns publishers of Microservices on the platform, and provides further info on how to refer to open parameters in a Microservice configuration.

When some input to your Microservice is sensitive, or if there is some customisation that can be applied as the Process is started, DIGITbrain supports open parameters.

Define these as a Microservice's Parameters and the Digital Agora will generate a web form when a Process starts, requesting that the user provide a value for each parameter of each Microservice bound to the Process.

Tip

When defining open parameters, keep the name of the parameter in mind, to refer to it later

You may be familiar with the Docker-Compose approach to variable substitution from a .env file. We support the same ${ } braced syntax as Docker-Compose, but instead of the .env file, the available environment variables are defined by Model & Data, and Open Parameters.

For open parameters, use the ${PARAMETER_NAME} syntax to refer to them, for example in a Microservice's Docker-Compose.

In Compose, you can still use regular environment variable shell substition within the args or entrypoint fields of the Compose, as in the example below. Please note that as per Compose documentation a single dollar-sign $ must be escaped, by using double dollar-signs $$.

parameters:
- name: MINIO_URL
  type: String
  mandatory: true
  defaultValue: https://minio.example.com
  description: MinIO url
- name: MINIO_ROOT_USER
  type: String
  mandatory: true
  defaultValue: admin
  description: MinIO username
- name: MINIO_ROOT_PASS
  type: String
  mandatory: true
  description: MinIO password
version: '3.7'
services:
ristra:
    image: dbs-container-repo.emgora.eu/db-ristra-cli-cpu:1.0.0
    entrypoint: python -m connect ${MINIO_URL} --user $$MINIOUSER --pass $$MINIOPASS
    environment:
      MINIOUSER: ${MINIO_ROOT_USER}
      MINIOPASS: ${MINIO_ROOT_PASS}

Warning

Note that due to a bug in external tooling, environment variables with underscores in their names are not supported for shell substitution. If you need environment variable shell substitution, please use environment variables named without underscores.