diff --git a/cmd/main.go b/cmd/main.go index ad0fe414c7f..1ec4d7b634c 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -39,6 +39,7 @@ func main() { ), cli.WithExtraCommands( newEditCmd(), + newUpdateCmd(), newCompletionCmd(), version.NewCmd(), ), diff --git a/internal/config/config.go b/internal/config/config.go index 48fdc0ecbff..c806b1a97ea 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -183,7 +183,6 @@ func (e saveError) Error() string { return fmt.Sprintf("unable to save the configuration: %v", e.err) } -// todo: check the best way we centralize it // CheckProjectVersionSupported returns true if the project is already configured and it is v2 func CheckProjectVersionSupported() error { cfg, err := Read() diff --git a/pkg/scaffold/api.go b/pkg/scaffold/api.go index c2573d05b59..1efd4166ae9 100644 --- a/pkg/scaffold/api.go +++ b/pkg/scaffold/api.go @@ -66,10 +66,13 @@ func NewAPIScaffolder( // Scaffold implements Scaffolder func (s *apiScaffolder) Scaffold() error { fmt.Println("Writing scaffold for you to edit...") - if err := internalconfig.CheckProjectVersionSupported(); err != nil { - return err + + switch { + case s.config.IsV2(), s.config.IsV3(): + return s.scaffold() + default: + return internalconfig.CheckProjectVersionSupported() } - return s.scaffold() } func (s *apiScaffolder) newUniverse() *model.Universe { diff --git a/pkg/scaffold/init.go b/pkg/scaffold/init.go index 2c6e00f08d5..415d09d1d6b 100644 --- a/pkg/scaffold/init.go +++ b/pkg/scaffold/init.go @@ -73,10 +73,12 @@ func (s *initScaffolder) newUniverse(boilerplate string) *model.Universe { // Scaffold implements Scaffolder func (s *initScaffolder) Scaffold() error { fmt.Println("Writing scaffold for you to edit...") - if err := internalconfig.CheckProjectVersionSupported(); err != nil { - return err + switch { + case s.config.IsV2(), s.config.IsV3(): + return s.scaffold() + default: + return internalconfig.CheckProjectVersionSupported() } - return s.scaffold() } func (s *initScaffolder) scaffold() error { diff --git a/pkg/scaffold/webhook.go b/pkg/scaffold/webhook.go index d0cc61fc9eb..e4f3389cbd1 100644 --- a/pkg/scaffold/webhook.go +++ b/pkg/scaffold/webhook.go @@ -61,10 +61,12 @@ func NewWebhookScaffolder( // Scaffold implements Scaffolder func (s *webhookScaffolder) Scaffold() error { fmt.Println("Writing scaffold for you to edit...") - if err := internalconfig.CheckProjectVersionSupported(); err != nil { - return err + switch { + case s.config.IsV2(), s.config.IsV3(): + return s.scaffold() + default: + return internalconfig.CheckProjectVersionSupported() } - return s.scaffold() } func (s *webhookScaffolder) newUniverse() *model.Universe {