Helm vs Replace Tokens in VSTS

8/27/2018

I have been asked to set up CI/CD for a new app using VSTS and Kubernetes.

It was suggested to me that we could use Helm (but it was made clear it was not mandatory).

The value I am seeing for this tool in our project is to define different values for different environments e.g. database connection string.

But for that we can also use the Replace Tokens VSTS task which is a lot simpler.

A definition explains that Helm is a chart manager and it sort of connections all resources of a system to deploy to Kubernetes.

Our system is just 1 web API (could grow later) so I feel deploying using Helm would be over-engineering the deployment process. Plus, we need this for yesterday.

Question

According to the current context, should I go with Replace Tokens VSTS task or Helm?

-- Fabio Milheiro
azure-devops
azure-pipelines-release-pipeline
kubernetes-helm

2 Answers

9/6/2018

Just based on your requirement, for example, which is easier to deploy, which is easier to manage, which you familiar or which is easier for requirement changes.

You also can custom build task to achieve it.

-- starian chen-MSFT
Source: StackOverflow

11/13/2018

I would go for helm because it gives you more flexibility and it's more cross-platform; moreover, when adding more API's/components or microservices it will be easier to control configuration (a single or multiple values.yaml, using git submodules for helm charts and so on).

Surely it requires a slightly bigger time investment than simple value substitution in your CI/CD tools, but has a potential payback that far outweighs the effort (again, based on my experience and the limited information about your environment).

I'm curious, what did you end up using?

-- Alessandro Vozza
Source: StackOverflow