HelmBlueGreenDeploy - How it Works

JFrog Pipelines Documentation

ft:sourceType
Paligo

When you use the HelmBlueGreenDeploy native step in a pipeline, it performs the below functions in the background. For more information on HelmBlueGreenDeploy Pipeline steps, see HelmBlueGreenDeploy.

  • helm init --client-only (if the Helm version is 2)

  • jfrog rt config (if there is a HelmChart resource input, to configure the JFrog CLI with the Artifactory credentials)

  • jfrog rt use (if there is a HelmChart resource input, to set the current default Artifactory configuration)

  • kubectl get service (fetch Live Services to read annotations and discover current Idle environment)

  • helm fetch (if there is a HelmChart resource input and the Helm version is 2, to fetch the chart)

  • helm pull (if there is a HelmChart resource input and the Helm version is 3, to fetch the chart)

  • replace_envs (if there are valueFilePaths, to replace variable placeholders)

  • helm lint (if lint is true)

  • helm --dry-run (if dryRun is true)

  • helm (deploy)

  • kubectl get service (fetch reference Services deployed by helm to create or update role Services)

  • Cleanup and update role Services definition (uses jq on Bash nodes and jq and ConvertFrom-Json on PowerShell nodes)

  • kubectl apply (create or update role Services)

  • add_pipeline_files (saves HelmBlueGreenDeploy configuration to be used by HelmBlueGreenRoleSwitch and HelmBlueGreenCleanup steps later)

  • helm test (if test is true)