Return a proper error if phase document was not found
Change-Id: I0b3b7a819b6c76fdc2e20ee2f6f8ece047fac858 Relates-To: #257 Closes: #257 Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
This commit is contained in:
parent
901c314f02
commit
0314c5c848
@ -732,11 +732,11 @@ func (c *Config) CurrentContextEntryPoint(phase string) (string, error) {
|
||||
if !exists {
|
||||
return "", ErrMissingPrimaryRepo{}
|
||||
}
|
||||
return path.Join(
|
||||
ccm.TargetPath,
|
||||
ccm.SubPath,
|
||||
clusterType,
|
||||
phase), nil
|
||||
epp := path.Join(ccm.TargetPath, ccm.SubPath, clusterType, phase)
|
||||
if _, err := os.Stat(epp); err != nil {
|
||||
return "", ErrMissingPhaseDocument{PhaseName: phase}
|
||||
}
|
||||
return epp, nil
|
||||
}
|
||||
|
||||
// CurrentContextTargetPath returns target path from current context's manifest
|
||||
|
@ -511,7 +511,7 @@ func TestCurrentContextEntryPoint(t *testing.T) {
|
||||
conf.Contexts[currentContextName].KubeContext().Cluster = clusterName
|
||||
|
||||
entryPoint, err = conf.CurrentContextEntryPoint(defaultString)
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, config.ErrMissingPhaseDocument{PhaseName: defaultString}, err)
|
||||
assert.Nil(t, nil, entryPoint)
|
||||
}
|
||||
|
||||
|
@ -179,6 +179,16 @@ func (e ErrMissingPrimaryRepo) Error() string {
|
||||
return "Current context manifest must have a primary repository set."
|
||||
}
|
||||
|
||||
// ErrMissingPhaseDocument returned when appropriate Phase document was not found in the filesystem
|
||||
type ErrMissingPhaseDocument struct {
|
||||
PhaseName string
|
||||
}
|
||||
|
||||
func (e ErrMissingPhaseDocument) Error() string {
|
||||
return fmt.Sprintf("Phase document '%s' was not found. "+
|
||||
"You can initialize it using 'airshipctl document init %s' command.", e.PhaseName, e.PhaseName)
|
||||
}
|
||||
|
||||
// ErrConflictingAuthOptions returned in case both token and username/password is set at same time
|
||||
type ErrConflictingAuthOptions struct {
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user