Some checks failed
SonarQube / SonarQube (push) Failing after 5m28s
E2e test on main branch push / server and client test (map[name:admin port:8080]) (push) Failing after 3m33s
Server and lib tests / Library test (js) (push) Failing after 1m36s
Server and lib tests / Library test (vue) (push) Successful in 2m24s
Server and lib tests / Web client test (admin) (push) Successful in 2m52s
Server and lib tests / Web client test (compose) (push) Successful in 3m23s
Server and lib tests / Web client test (discovery) (push) Successful in 2m49s
Server and lib tests / Web client test (one) (push) Successful in 2m52s
Server and lib tests / Web client test (privacy) (push) Successful in 2m44s
Server and lib tests / Web client test (reporter) (push) Successful in 2m56s
Server and lib tests / Web client test (workflow) (push) Successful in 3m0s
Server and lib tests / Server tests (push) Failing after 4m55s
E2e test on main branch push / notify-failure (push) Failing after 9s
Server and lib tests / Send matrix testing notification (push) Successful in 2s
Mark stale issues and pull requests / stale (push) Successful in 40s
52 lines
941 B
Go
52 lines
941 B
Go
package commands
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/spf13/cobra"
|
|
)
|
|
|
|
type (
|
|
serviceInitializer interface {
|
|
InitServices(ctx context.Context) error
|
|
}
|
|
)
|
|
|
|
func Sync(ctx context.Context, app serviceInitializer) *cobra.Command {
|
|
// Sync commands.
|
|
cmd := &cobra.Command{
|
|
Use: "sync",
|
|
Short: "Sync commands",
|
|
}
|
|
|
|
// Sync structure.
|
|
syncStructureCmd := &cobra.Command{
|
|
Use: "structure",
|
|
Short: "Sync structure",
|
|
|
|
PreRunE: commandPreRunInitService(ctx, app),
|
|
Run: commandSyncStructure(ctx),
|
|
}
|
|
|
|
syncDataCmd := &cobra.Command{
|
|
Use: "data",
|
|
Short: "Sync data",
|
|
|
|
PreRunE: commandPreRunInitService(ctx, app),
|
|
Run: commandSyncData(ctx),
|
|
}
|
|
|
|
cmd.AddCommand(
|
|
syncStructureCmd,
|
|
syncDataCmd,
|
|
)
|
|
|
|
return cmd
|
|
}
|
|
|
|
func commandPreRunInitService(ctx context.Context, app serviceInitializer) func(*cobra.Command, []string) error {
|
|
return func(_ *cobra.Command, _ []string) error {
|
|
return app.InitServices(ctx)
|
|
}
|
|
}
|