Deploying an Environment

In this scenario we are managing the [delivery] cluster

  • The developers and operators introduce change via source control
  • The initial creation of an environment is manual, as a design decision, its a single step process
  • Keel is responsible for watching for docker image updates and doing rolling updates in kubernetes
  • Cert Manager takes care of letsencrypt registration and TLS

Overview of the process

  • Open a cloud shell with the credentials for the correct cluster
  • Get the environment passphrase
  • Create the environment
  • Check out console to see the workloads turn up

Get the repository and environment passphrases

There is a store of credentials that you should know about, if not ask support@practiv.com

You need the

  • The enviroment passphrase forge-[delivery]

Open a cloud shell

Go to the cloud console for the [delivery] Cluster

Use the connect button to open a cloud shell with the correct cluster credentials configured

Create the environment

Once in the shell the process is simple

  • Exec into the environment image
  • run the create command
  • Provide the credentials you sourced earlier

The script does several things

  • create the forge-[delivery] namespace
  • create the secrets passphrase
  • executes the system image and run an upgrade, this will:
    • create secrets
    • create deployments, ingresses, services etc
    • create ingress control

Run

kubectl --namespace forge exec -it forge-[delivery]-0 sh
create

Check out console to see the workloads turn up

The environment image will have created a number of Kubernetes resources, watch in the console to see them turn up in the forge-[delivery] namespace