add run with args for running as sub command
This commit is contained in:
@@ -1,23 +1,42 @@
|
|||||||
package cli
|
package cli
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
"github.com/LazyBachelor/LazyPM/internal/service"
|
"github.com/LazyBachelor/LazyPM/internal/service"
|
||||||
"github.com/LazyBachelor/LazyPM/pkg/cli/commands"
|
"github.com/LazyBachelor/LazyPM/pkg/cli/commands"
|
||||||
"context"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type CLIConfig = service.Config
|
type CLIConfig = service.Config
|
||||||
|
|
||||||
func Run(ctx context.Context, config CLIConfig) error {
|
func Run(ctx context.Context, config CLIConfig) error {
|
||||||
svc, cleanup, err := service.NewServices(ctx, config)
|
svc, cleanup, err := service.NewServices(ctx, config)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
defer cleanup()
|
defer cleanup()
|
||||||
|
|
||||||
if err := commands.Execute(svc); err != nil {
|
commands.SetServices(svc)
|
||||||
|
|
||||||
|
if err := commands.Execute(); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func RunWithArgs(ctx context.Context, config CLIConfig, args []string) error {
|
||||||
|
svc, cleanup, err := service.NewServices(ctx, config)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
defer cleanup()
|
||||||
|
|
||||||
|
commands.SetServices(svc)
|
||||||
|
|
||||||
|
if err := commands.ExecuteArgs(args); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user