content/platform-spec.json

{
  "$schema": "./src/schemas/platform-spec.schema.json",

  "platformId": "axeon-corp",
  "environment": "Production",
  "testMode": true,
  "location": "uksouth",

  "networking": {
    "addressPrefix": "10.0.0.0/16"
  },

  "naming": {
    "defaultLength": "s",
    "separator": "-",
    "casing": "lower",

    "tokens": {
      "org": { "s": "ax", "m": "axeon", "l": "axeon-global" },
      "prj": { "s": "lza", "m": "lzbox", "l": "landing-zone-box" },
      "geo": { "s": "uks", "m": "uksouth", "l": "uk-south" },
      "env": { "s": "p", "m": "prod", "l": "production" },
      "typ": { "s": "shr", "m": "shared", "l": "common-infrastructure" },
      "idx": { "s": "0", "m": "01", "l": "001" },
      "fok": { "s": "pri", "m": "primary", "l": "active-region" }
    },

    "resources": {
      "resourceGroup": { "s": "rg", "m": "resgrp", "l": "resource-group" },
      "virtualNetwork": { "s": "vnet", "m": "vnetwork", "l": "virtual-network" },
      "subnet": { "s": "snet", "m": "subnet", "l": "subnet" },
      "networkSecurityGroup": { "s": "nsg", "m": "netsecgrp","l": "network-security-group" },
      "storageAccount": { "s": "st", "m": "stor", "l": "storage" },
      "keyVault": { "s": "kv", "m": "kvault", "l": "key-vault" },
      "logAnalyticsWorkspace": { "s": "law", "m": "logws", "l": "log-analytics-workspace" },
      "managedIdentity": { "s": "id", "m": "ident", "l": "managed-identity" },
      "publicIpAddress": { "s": "pip", "m": "pubip", "l": "public-ip-address" },
      "bastionHost": { "s": "bas", "m": "bastion", "l": "bastion-host" },
      "policyAssignment": { "s": "pa", "m": "polasn", "l": "policy-assignment" }
    },

    "patterns": {
      "default": "{rsc}-{org}-{prj}-{env}-{geo}-{typ}-{idx}"
    },

    "overrides": {
      "storageAccount": {
        "pattern": "{org}{prj}{env}{geo}{rsc}{idx}",
        "separator": "",
        "casing": "lower",
        "maxLength": 24,
        "charset": "alphanumeric",
        "defaultLength": "s"
      },
      "keyVault": {
        "pattern": "{rsc}-{org}-{prj}-{env}-{geo}-{idx}",
        "maxLength": 24,
        "charset": "alphanumericHyphen"
      }
    }
  }
}