Documentation
  • Getting Started
  • Creating a Product
    • Products Overview
    • Making a Helm Chart
      • Converting from docker-compose
      • Interpolated Values
      • Image Pull Secrets
      • Cluster Ingress
      • SSL Certificates
    • Setting up the Registry
      • Google Container Registry
  • Deploying a Product
    • Deployments Overview
    • Deploying on AWS
    • Deploying on GCP
    • Deploying on Azure (beta)
  • Debugging
    • GCP Permissions Errors
    • Volume Classes
Powered by GitBook
On this page
  1. Creating a Product
  2. Making a Helm Chart

Interpolated Values

This page describes how to access the variables needed by your Helm chart to connect to infrastructure created by Metamanagement.

PreviousConverting from docker-composeNextImage Pull Secrets

Last updated 4 years ago

Metamanagement exposes a series of values for consumption by your Helm Chart. You can freely assume that the following values are available as flat values. (See the for more details on how to use values.)

Universally available values

  • mm_platform: The type of the platform where the code is installed. This is either “aws”, “gcp”, or "azure".

  • mm_hostname: The hostname where the customer’s project will be made available. This will be a custom domain name if one is specified, or if one is not specified, it will be a pre-generated one on GCP.

  • mm_region: The region of AWS/GCP/Azure in which the infrastructure is hosted.

Postgres

If a managed Postgres database is created, you will have access to:

  • mm_postgres_user: Postgres user.

  • mm_postgres_password: Postgres password.

  • mm_postgres_ip: Endpoint for Postgres instance.

MySQL

If a managed MySQL database is created, you will have access to:

  • mm_mysql_user: MySQL user.

  • mm_mysql_password: MySQL password.

  • mm_mysql_host: Endpoint for MySQL instance.

Redis

If a managed Redis instance is created, you will have access to:

  • mm_redis_host: Endpoint for the Redis host.

Memcached (AWS & GCP only)

If a managed Memcached instance is created, you will have access to:

  • mm_memcached_configuration_endpoint: Configuration endpoint for Memcached cluster.

Block Storage

For each different block storage bucket that needs to be created, the following environment variables will be made available, one per bucket.

  • mm_bucket_<name>: The identifier for the created bucket, where <name> is specified by the vendor at product-creation time.

Azure support additionally requires the use of a few extra variables. If your product uses block storage and intends to support Azure, you will likely also need the following information:

  • mm_azure_bucket_account: The name of the account that has access to the Azure buckets.

  • mm_azure_bucket_account_key: The key needed to access the created Azure buckets.

Custom Fields

If custom-generated fields were specified during product creation, the customer-specifed values will be made available to the Helm chart.

  • mm_custom_<field>: The value specified by the customer for the defined field.

Using interpolated values in values.yaml

The .Values struct can only be used in your helm chart template and not in your inputted values.yaml file. If for whatever reason you lack the ability to make modifications to the original chart and want to use the Metamanagement-derived values, you can instead use the ${mm_<variable>} syntax directly in values.yaml files uploaded to Metamanagement. Before using Helm, we will substitute the above values directly, so Helm parses values.yaml correctly.

Helm documentation