helm-1.4.0

KOSI Plugin Helm Version 1.4.0

Release-Notes

New

  • flags parameter

Updates

  • update dependencies

Summary

With this plugin you cann install, upgrade or delete helm packages. It is required that the helmvalues.yaml is present in the running directory of the install command of KOSI.
The helm tgz should be included in the files tree inside the includes tree.

Keys

command

Defines whether the chart should be installed, upgraded or deleted.

tgz

The filename of the Helmchart.

values

Give a list of files where the values for the helm package will be stored.

flags

Give a list of flags where the flags for the helm command will be stored. Example: flags=’["–wait","–create-namespace"]'

namespace

Define in which namespace the chart should get installed.

deploymentName

Defines the name of the deployment.

helm install:

This are the parameters for helm install.

Key Default value Description
command Mandatory - This key have to be set to execute the wanted helm command.
tgz Mandatory - This key have to be set to handle the wanted helm-chart.
values optional - This key is optional. If this key is not set, there are no values.
flags optional - This key is optional. If this key is not set, there are no flags.
namespace optional default This key is optional. Set this key if you want to handle your command in a specific namespace.
deploymentName optional random-generated This key is optional. Set this key to set a specific deploymentName for your helm-deployment. Default is a random-generated name

Example install:

languageversion = "0.1.0";
apiversion = "kubernative/kubeops/sina/user/v3";
name = "kosi-example-packagev3";
description = "kosi-example-package";
version = "0.1.0";
docs = "docs.tgz";
logo = "logo.png";

files =
{
  guestbook= "guestbook.tgz";
  gbValues= "gbValues.yaml";
  values2= "values2.yaml";
}

containers =
{
    example=["docker.io", "nginx", "latest"];
}

install
{
    cmd(command='"echo install helmchart."');
    helm(command='"install"';tgz='"guestbook.tgz"';values='["gbValues.yaml","values2.yaml"]';deploymentName='"guestbook"';namespace='"dev"');
}

helm upgrade:

This are the parameters for helm upgrade.

Key Default value Description
command Mandatory - This key have to be set to execute the wanted helm command.
tgz Mandatory - This key have to be set to handle the wanted helm-chart.
values optional - This key is optional. If this key is not set, there are no values.
flags optional - This key is optional. If this key is not set, there are no flags.
namespace optional default This key is optional. Set this key if you want to handle your command in a specific namespace.
deploymentName Mandatory - This key have to be set to handle the upgraded helm-chart of the deploymentName

Example upgrade

languageversion = "0.1.0";
apiversion = "kubernative/kubeops/sina/user/v3";
name = "kosi-example-packagev3";
description = "kosi-example-package";
version = "0.1.0";
docs = "docs.tgz";
logo = "logo.png";

files =
{
  guestbook= "guestbook.tgz";
  gbValues= "gbValues.yaml";
  values2= "values2.yaml";
}

containers =
{
    example=["docker.io", "nginx", "latest"];
}

install
{
    cmd(command='"echo install helmchart."');
    helm(command='"install"';tgz='"guestbook.tgz"';values='["gbValues.yaml","values2.yaml"]';deploymentName='"guestbook"';namespace='"dev"');
}
update
{
    cmd(command='"echo upgrade helmchart."');
    helm(command='"upgrade"';tgz='"guestbook.tgz"';values='["gbValues.yaml","values2.yaml"]';deploymentName='"guestbook"';namespace='"dev"'); 
    helm(command='"upgrade"';tgz='"guestbook2.tgz"';values='["gbValues.yaml","values2.yaml"]';deploymentName='"guestbook2"';namespace='"dev"';flags='["--create-namespace"]');
}

helm delete:

This are the parameters for helm upgrade.

Key Default value Description
command Mandatory - This key have to be set to execute the wanted helm command.
flags optional - This key is optional. If this key is not set, there are no flags.
namespace optional default This key is optional. Set this key if you want to handle your command in a specific namespace.
deploymentName Mandatory - This key have to be set to handle the upgraded helm-chart of the deploymentName

Example delete

languageversion = "0.1.0";
apiversion = "kubernative/kubeops/sina/user/v3";
name = "kosi-example-packagev3";
description = "kosi-example-package";
version = "0.1.0";
docs = "docs.tgz";
logo = "logo.png";

files =
{
  guestbook= "guestbook.tgz";
  guestbook2= "guestbook2.tgz";
  gbValues= "gbValues.yaml";
  values2= "values2.yaml";
}

containers =
{
    example=["docker.io", "nginx", "latest"];
}

install
{
    cmd(command='"echo install helm chart."');
    helm(command='"install"';tgz='"guestbook.tgz"';values='["gbValues.yaml","values2.yaml"]';deploymentName='"guestbook"';namespace='"dev"');
}
update
{
    cmd(command='"echo upgrade helm chart."');
    helm(command='"upgrade"';tgz='"guestbook.tgz"';values='["gbValues.yaml","values2.yaml"]';deploymentName='"guestbook"';namespace='"dev"');
    helm(command='"upgrade"';tgz='"guestbook2.tgz"';values='["gbValues.yaml","values2.yaml"]';deploymentName='"guestbook2"';namespace='"dev"';flags='["--create-namespace"]'); 
}
delete
{
   cmd(command='"echo delete helm chart."');
   helm(command='"delete"';deploymentName='"guestbook"';namespace='"dev"';flags='["--wait"]'); 
}