Custom environments
To be able to support custom environments you can set up multiple GAP applications in your repository by setting up a separate gap folder for each of them.
In short you will need to
- create multiple gap folders, eg:
gap-base,gap-darklaunchetc. Each of these folders will contain agap.yamland optionally environment specific sub-folders. For example
# gap-base/gap.yaml
name: "gap-example"
namespace: "cloud-platform"
usePrebuiltImage: true
deployments:
web:
ingress:
enabled: true
# gap-darklaunch/gap.yaml
name: "gap-example-darklaunch"
namespace: "cloud-platform"
usePrebuiltImage: true
deployments:
web:
ingress:
enabled: true
You need to set up different CNames for these applications.
- create a separate CI workflow for each folder/application and put an additional step into the workflow before invoking the deployment, which renames the a gap folder to the name
gap
- run: mv ./gap-base ./gap
- create a k8s secret via the
gap-clifor each of them
These will essentially live as separate applications on GAP.
- via the separated
gap.yamlyou will be able to configure them however you want - because it is a separate application using different secrets you can configure them separately
You can see an example in this repository