-
Notifications
You must be signed in to change notification settings - Fork 5
/
dependency_manager.go
34 lines (27 loc) · 1.49 KB
/
dependency_manager.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package cmd
import (
"github.com/terrariumcloud/terrarium/internal/module/services/dependency_manager"
"github.com/terrariumcloud/terrarium/internal/storage"
"github.com/spf13/cobra"
)
var dependencyManagerCmd = &cobra.Command{
Use: "dependency-manager",
Short: "Starts the Terrarium GRPC Dependency Manager service",
Long: "Runs the Terrarium GRPC Dependency Manager server.",
Run: runDependencyManager,
}
func init() {
rootCmd.AddCommand(dependencyManagerCmd)
dependencyManagerCmd.Flags().StringVarP(&dependency_manager.ModuleDependenciesTableName, "module-table", "m", dependency_manager.DefaultModuleDependenciesTableName, "Module dependencies table name")
dependencyManagerCmd.Flags().StringVarP(&dependency_manager.ContainerDependenciesTableName, "container-table", "c", dependency_manager.DefaultContainerDependenciesTableName, "Module dependencies table name")
}
func runDependencyManager(cmd *cobra.Command, args []string) {
dependencyServiceServer := &dependency_manager.DependencyManagerService{
Db: storage.NewDynamoDbClient(awsSessionConfig),
ModuleTable: dependency_manager.ModuleDependenciesTableName,
ModuleSchema: dependency_manager.GetDependenciesSchema(dependency_manager.ModuleDependenciesTableName),
ContainerTable: dependency_manager.ContainerDependenciesTableName,
ContainerSchema: dependency_manager.GetDependenciesSchema(dependency_manager.ContainerDependenciesTableName),
}
startGRPCService("dependency-manager", dependencyServiceServer)
}