1
0
mirror of synced 2026-02-13 13:06:56 +00:00

Add contextual error code for flux diff kustomization

If implemented, calling the diff command on kustomization will return 0,
1(if changes are identified), >1 for errors.

Signed-off-by: Soule BA <soule@weave.works>
This commit is contained in:
Soule BA
2022-02-03 10:23:19 +01:00
parent edf15894f8
commit b86b195450
5 changed files with 58 additions and 18 deletions

View File

@@ -105,6 +105,16 @@ type rootFlags struct {
defaults install.Options
}
// RequestError is a custom error type that wraps an error returned by the flux api.
type RequestError struct {
StatusCode int
Err error
}
func (r *RequestError) Error() string {
return r.Err.Error()
}
var rootArgs = NewRootFlags()
var kubeconfigArgs = genericclioptions.NewConfigFlags(false)
@@ -144,6 +154,11 @@ func main() {
log.SetFlags(0)
if err := rootCmd.Execute(); err != nil {
logger.Failuref("%v", err)
if err, ok := err.(*RequestError); ok {
os.Exit(err.StatusCode)
}
os.Exit(1)
}
}