diff --git a/pkg/constants/constants.go b/pkg/constants/constants.go index abde570..3bf611c 100644 --- a/pkg/constants/constants.go +++ b/pkg/constants/constants.go @@ -120,6 +120,9 @@ const ( PassiveBootSuffix = " (fallback)" RecoveryBootSuffix = " recovery" StateResetBootSuffix = " state reset (auto)" + + // Error + UpgradeNoSourceError = "Could not find a proper source for the upgrade.\nThis can be configured in the cloud config files under the 'upgrade.system.uri' key or via cmdline using the '--source' flag." ) func UkiDefaultMenuEntries() []string { diff --git a/pkg/types/v1/config.go b/pkg/types/v1/config.go index e1c6eb5..d16bf89 100644 --- a/pkg/types/v1/config.go +++ b/pkg/types/v1/config.go @@ -187,14 +187,14 @@ type UpgradeSpec struct { func (u *UpgradeSpec) Sanitize() error { if u.RecoveryUpgrade { if u.Recovery.Source.IsEmpty() { - return fmt.Errorf("undefined upgrade source") + return fmt.Errorf(constants.UpgradeNoSourceError) } if u.Partitions.Recovery == nil || u.Partitions.Recovery.MountPoint == "" { return fmt.Errorf("undefined recovery partition") } } else { if u.Active.Source.IsEmpty() { - return fmt.Errorf("undefined upgrade source") + return fmt.Errorf(constants.UpgradeNoSourceError) } if u.Partitions.State == nil || u.Partitions.State.MountPoint == "" { return fmt.Errorf("undefined state partition") diff --git a/pkg/types/v1/config_test.go b/pkg/types/v1/config_test.go index 80916f0..877e7c1 100644 --- a/pkg/types/v1/config_test.go +++ b/pkg/types/v1/config_test.go @@ -425,7 +425,7 @@ var _ = Describe("Types", Label("types", "config"), func() { It("fails with empty source", func() { err := spec.Sanitize() Expect(err).To(HaveOccurred()) - Expect(err.Error()).To(ContainSubstring("undefined upgrade source")) + Expect(err.Error()).To(ContainSubstring(constants.UpgradeNoSourceError)) }) It("fails with missing state partition", func() { spec.Active.Source = v1.NewFileSrc("/tmp") @@ -449,7 +449,7 @@ var _ = Describe("Types", Label("types", "config"), func() { It("fails with empty source", func() { err := spec.Sanitize() Expect(err).To(HaveOccurred()) - Expect(err.Error()).To(ContainSubstring("undefined upgrade source")) + Expect(err.Error()).To(ContainSubstring(constants.UpgradeNoSourceError)) }) It("fails with missing recovery partition", func() { spec.Recovery.Source = v1.NewFileSrc("/tmp")