This will allow us to fix the broken test in master and also allow
people to downgrade to older releases.
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
because empty source caused an error, because of Sanitize() failing.
handleEmptySource was never called.
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
because it's actually configuration and it's better than using viper to
pass things around.
The `upgrade:` block seems to be ignored early in the process so even if
the user specifies an image there, the latest release will be looked up.
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
We were ignoring the values in the /etc/elemental/config.yaml file that
we loaded into viper by not reading those values and their keys into the
final spec.
This meant that for example the defautl entry name was being lost as we
generated a new install spec from scratch and ignored those values that
we read on the config
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
By default get 30 releases and skip any pre-releases found.
Allow toggling showing pre-releases both for upgrade and for listing
them
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* 🐛 Fix version list
First version in the list is the latest one.
Alos moves the check for same version above the current place, so it can
check before asking if you want to update to the same version
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* 🌱 Rework versioning for upgrade
Use the semver lib to parse the versions into a proper collection where
it can be parsed and versions compared and sorted properly
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* 🤖 lint
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
---------
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
https://go.dev/doc/modules/major-version
This way we can bump the kairos dependency on the provider-kairos repo
which otherwise produced the error:
```
~/workspace/kairos/provider-kairos (main)*$ go get -u github.com/kairos-io/kairos@v2.0.0-alpha3
go: github.com/kairos-io/kairos@v2.0.0-alpha3: invalid version: module contains a go.mod file, so module path must match major version ("github.com/kairos-io/kairos/v2")
```
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
Co-authored-by: Itxaka <itxaka.garcia@spectrocloud.com>