KOTS auto deployment


#1

Is there an option for enabling auto-deployment in KOTS?
I can see that there is an option to configure auto-check for a new version which just checks for a new version and doesn’t deploy automatically.

Previously when we use to create customers there was an option to Enable/Disable Update Policy. is there any way to enable auto deployment?
Also, it seems we can’t enable multiple channels to a customer.


#2

Hey there, okay so there are 2 questions here.

  1. Auto updates. Currently auto updates are not supported out of the box. That being said, when deploying a new update you can pass the --deploy flag to it will deploy the release as soon as it sees an update. But this has to be run via the CLI, perhaps this can be automated with a cronjob. https://kots.io/kots-cli/upstream/#usage

  2. At the moment KOTS only supports adding one channel per license, although there is an internal feature request to support multiple channels per license. The workaround for this is to create multiple licenses with different channels for the same customer, this would not count against your license quota. In other words, if one customer has 2 license yaml it will sill be considered 1 license as far as Replicated is concerned.

Thanks.


#3

thanks for the reply. Yup, I’ve checked the --deploy flag. We currently decided to run it as part of CD. As suggested, a cronjob can also be also configured.

I didn’t get the 2nd answer specifying creating multiple licenses with the different channels for the same customer. Did you mean application by customer? Or ain’t I aware of how to assign multiple licenses for same customer? My understanding is that for each channel you need to create a customer. Creating customer refers to creating a license and assigning a channel to it. Could you clarify this please?


#4

Please share the usecase if possible, specifically how many instances of applications are running.

  1. For ex., let us say application is deployed say channel_v1 on say VM_1, and now want to switch to a different channel, say channel_v2 on the same VM ie VM_1

  2. A different instance need to run based on channel_v2 release on a different VM, say VM_2 and channel_v1 has to run on VM_1

In case 1, same license can be used. During periodic sync, it will switch to a different channel

In case 2, it is not advisable to use the same license, rather create two different customers and use two different licenses one per instance. One instance runs on channel_v1 and another instance runs on channel_v2.

Hope this clarifies. Please let us know what is the usecase you are trying to solve.