Infrastructure Configuration

A how-to guide to create your infrastructure configuration through the Developer Platform.

Before Getting Started

Please do the following before creating your infrastructure configuration.

Writing your Infrastructure Configuration

  1. Create a branch from the Infrastructure Config repository named ‘feature/SPECT-ticket number’.
  2. Add your cluster and application into config/products.yml . In the products.yml you will define your key, name, and id for your cluster and application.



  3. Add your cluster and application(s) into all features they will be required, NDT is mandatory.

    The feature is your topology of what will be installed where.

  4. Create a folder within config/clusters named your cluster key defined in products.yml. Then create an apps folder, a resources folder and a cluster.yml within the cluster folder created.

    The cluster.yml file will include the resources within the cluster, networkRules, networkSecurityGroupRules, and tags.

  5. Create a yaml file for each of the apps required with the name of your application key defined in products.yml. The app file will enable you to define your appSettings, networkRules, and tags.

  6. Create a yaml file for each of the resources required for your cluster. If a resource file (e.g. storageaccount.yml) is not created within your resources folder but is specified within your cluster, the config/defaults/1.0 settings will be used.

    Tip: Copy the yaml files from config/defaults/1.0 settings.

    Cluster Dependency: If apps and resources from Cluster A want to talk to apps or resources in Cluster B, Cluster B has a dependency on Cluster A.

    If you have cluster dependencies you will need to add RBAC to your resource yaml files.

Next Steps

Once you have written the configuration, please submit the PR for review and Team Spectre will work with you to provision your infrastructure.

FAQ

  • How can I add tenant/environment specific configuration?

    This will all be done through the Developer Platform's Application Configuration repository. Documentation for this will be coming soon.
  • What if there's configuration I'm unable to do with the Developer Platform?