This PR is dependent of
https://github.com/kairos-io/kairos-sdk/pull/546, and it adds the
possibility to deploy k0s instead of k3s.
refactored `oneTimeBootstrap()` to handle k0s and k3s.
Added `K0s` type to bootstrap `config` package
added k0s to provider `package`` InteractiveInstall()` and check for
mutual exclusivity
CC: @mauromorales
---------
Signed-off-by: William Rizzo <william.rizzo@gmail.com>
Signed-off-by: Mauro Morales <contact@mauromorales.com>
Co-authored-by: Mauro Morales <contact@mauromorales.com>
just use the one that was created by the k3s installer script
Fixes: https://github.com/kairos-io/kairos/issues/2125
Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>
Co-authored-by: Mauro Morales <mauro.morales@spectrocloud.com>
No longer used, move to kairos-agent
Also drop sha iso calculation as its done by the iso builder
automatically
Fixes https://github.com/kairos-io/kairos/issues/1798
Signed-off-by: Itxaka <itxaka@kairos.io>
Tests are green and did a manual QA and it's working properly. I do have
two questions which I put as comments
---------
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
The path in `go.mod` should be ended in `/v2` suffix, as per [go.mod
module version numbers](https://go.dev/doc/modules/version-numbers).
---------
Signed-off-by: Mateusz Urbanek <mateusz.urbanek.98@gmail.com>
First time bumping the provider, be gentle
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
---------
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
p2p block is optional, thus we might panic otherwise here
Signed-off-by: Ettore Di Giacinto <mudler@users.noreply.github.com>
Signed-off-by: Ettore Di Giacinto <mudler@users.noreply.github.com>
If we keep the API started, we want to keep streaming roles in case of completely disconnection between the nodes.
This guarantees that we keep streaming out our roles nevertheless of what happens
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
This doesn't change the documented flow, but makes sure that if someone did defined a network token and also enables k3s manually it still tries to co-ordinate over p2p.
Optionally, a `skip_auto` is introduced to manually bootstrap the node
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>
In this way, the p2p API will just run the co-ordination to setup KubeVIP automatically
to the new cluster.
Signed-off-by: Ettore Di Giacinto <mudler@mocaccino.org>