Horde Perforce config files - how to configure differing dev and prod environments?

We’re trying out Horde configuration in Perforce (e.g., `“ConfigPath”: “//path/to/globals.json”`).

Our dev and prod environments would have configuration differences like these:

  • different `notificationChannel` Slack channels
  • schedule `enabled: false` for dev, `enabled: true` for prod

Is there a recommended way to handle differences in Horde configurations between environments?

  1. Is there a way to parameterize values like differing `notificationChannel`?
  2. Or do you have separate configuration files for each environment?
    1. In our case, we would be duplicating all configuration files, just to modify the few differences.
    2. This doesn’t seem efficient when integrating dev config changes to prod, ending up doing manual copy-pasting.

Hello,

It is a globals.json file per environment. You could use “include” to reference shared config and then in each globals.config have the unique values.

"include": [
		{ "path": "shared/downtime.global.json" },
		{ "path": "shared/secrets.global.json" }
]

Matthew