Life Cycle Management

The Life Cycle Management feature for Spinnaker helps you to deploy spinnaker in a hassle free mode. Under normal circumstances deploying spinnaker means you have to perform multiple steps which includes the following:

  1. Creating a persistent storage to store metadata of spinnaker objects like, applications and its pipelines.

  2. Installing Halyard Service which is responsible to handle spinnaker installation and configuration.

  3. Choosing which version of spinnaker to install and installing its components to make spinnaker as a solution.

  4. Enabling TLS for spinnaker's externally exposed services like gate and deck.

  5. Also, you can configure spinnaker with authentication and authorization.

This is where the Life Cycle Management (LCM) features comes in with automation and helps you to reduce the time and effort in the initial set up of spinnaker. The LCM features allows you to automate the following:

  1. Automated Installation in Cloud Environment - Cloud-driver and echo services are enabled in High Available mode.

  2. Secrets are enabled in git/S3 for data protection.

  3. Dynamically load deployment target K8s accounts from external store.

  4. Spinnaker version upgrade can be easily done by simply updating the Halyard configuration in git repository.

To automate all the above features you need to do the following:

  1. Set the spinnaker.gitops.HalyardInit.enabled property to true in the values.yaml file while configuring OES.

  2. Set the type of repo using the spinnaker.gitops.HalyardInit.repo-type property in the values.yaml file . The default value is git.

  3. Clone and use the following public git repos to use the LCM automations when the above property is set to true:

    a. Halyard Configuration Repo - https://github.com/OpsMx/gitops-accounts-sample b. Repo where k8s dynamic accounts, jenkins, etc., can be added - https://github.com/OpsMx/gitops-hal-sample c. Information about these repos and credentials to access shall be specified via a secret that's installed along with our oes helm chart in this repo - https://github.com/OpsMx/enterprise-spinnaker/blob/master/charts/oes/templates/secrets/opsmx-gitops-secret.yaml​