terminology: rename route -> deployment
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
This commit is contained in:
committed by
Solomon Hykes
parent
e503e12cff
commit
f901918266
@@ -10,35 +10,35 @@ import (
|
||||
"github.com/spf13/viper"
|
||||
)
|
||||
|
||||
// getCurrentRoute returns the current selected route based on its abs path
|
||||
func GetCurrentRoute(ctx context.Context, store *dagger.Store) *dagger.Route {
|
||||
// GetCurrentDeployment returns the current selected deployment based on its abs path
|
||||
func GetCurrentDeployment(ctx context.Context, store *dagger.Store) *dagger.Deployment {
|
||||
lg := log.Ctx(ctx)
|
||||
st := GetCurrentRouteState(ctx, store)
|
||||
st := GetCurrentDeploymentState(ctx, store)
|
||||
|
||||
route, err := dagger.NewRoute(st)
|
||||
deployment, err := dagger.NewDeployment(st)
|
||||
if err != nil {
|
||||
lg.
|
||||
Fatal().
|
||||
Err(err).
|
||||
Interface("routeState", st).
|
||||
Msg("failed to init route")
|
||||
Interface("deploymentState", st).
|
||||
Msg("failed to init deployment")
|
||||
}
|
||||
|
||||
return route
|
||||
return deployment
|
||||
}
|
||||
|
||||
func GetCurrentRouteState(ctx context.Context, store *dagger.Store) *dagger.RouteState {
|
||||
func GetCurrentDeploymentState(ctx context.Context, store *dagger.Store) *dagger.DeploymentState {
|
||||
lg := log.Ctx(ctx)
|
||||
|
||||
routeName := viper.GetString("route")
|
||||
if routeName != "" {
|
||||
st, err := store.LookupRouteByName(ctx, routeName)
|
||||
deploymentName := viper.GetString("deployment")
|
||||
if deploymentName != "" {
|
||||
st, err := store.LookupDeploymentByName(ctx, deploymentName)
|
||||
if err != nil {
|
||||
lg.
|
||||
Fatal().
|
||||
Err(err).
|
||||
Str("routeName", routeName).
|
||||
Msg("failed to lookup route by name")
|
||||
Str("deploymentName", deploymentName).
|
||||
Msg("failed to lookup deployment by name")
|
||||
}
|
||||
return st
|
||||
}
|
||||
@@ -47,25 +47,25 @@ func GetCurrentRouteState(ctx context.Context, store *dagger.Store) *dagger.Rout
|
||||
if err != nil {
|
||||
lg.Fatal().Err(err).Msg("cannot get current working directory")
|
||||
}
|
||||
st, err := store.LookupRouteByPath(ctx, wd)
|
||||
st, err := store.LookupDeploymentByPath(ctx, wd)
|
||||
if err != nil {
|
||||
lg.
|
||||
Fatal().
|
||||
Err(err).
|
||||
Str("routePath", wd).
|
||||
Msg("failed to lookup route by path")
|
||||
Str("deploymentPath", wd).
|
||||
Msg("failed to lookup deployment by path")
|
||||
}
|
||||
return st
|
||||
}
|
||||
|
||||
func RouteUp(ctx context.Context, route *dagger.Route) {
|
||||
func DeploymentUp(ctx context.Context, deployment *dagger.Deployment) {
|
||||
lg := log.Ctx(ctx)
|
||||
|
||||
c, err := dagger.NewClient(ctx, "")
|
||||
if err != nil {
|
||||
lg.Fatal().Err(err).Msg("unable to create client")
|
||||
}
|
||||
output, err := c.Up(ctx, route)
|
||||
output, err := c.Up(ctx, deployment)
|
||||
if err != nil {
|
||||
lg.Fatal().Err(err).Msg("failed to compute")
|
||||
}
|
||||
|
@@ -32,7 +32,7 @@ var computeCmd = &cobra.Command{
|
||||
lg := logger.New()
|
||||
ctx := lg.WithContext(cmd.Context())
|
||||
|
||||
st := &dagger.RouteState{
|
||||
st := &dagger.DeploymentState{
|
||||
ID: uuid.New().String(),
|
||||
Name: "FIXME",
|
||||
LayoutSource: dagger.DirInput(args[0], []string{"*.cue", "cue.mod"}),
|
||||
@@ -127,12 +127,12 @@ var computeCmd = &cobra.Command{
|
||||
}
|
||||
}
|
||||
|
||||
route, err := dagger.NewRoute(st)
|
||||
deployment, err := dagger.NewDeployment(st)
|
||||
if err != nil {
|
||||
lg.Fatal().Err(err).Msg("unable to initialize route")
|
||||
lg.Fatal().Err(err).Msg("unable to initialize deployment")
|
||||
}
|
||||
|
||||
common.RouteUp(ctx, route)
|
||||
common.DeploymentUp(ctx, deployment)
|
||||
},
|
||||
}
|
||||
|
||||
|
@@ -7,7 +7,7 @@ import (
|
||||
|
||||
var deleteCmd = &cobra.Command{
|
||||
Use: "delete",
|
||||
Short: "Delete a route after taking it offline (WARNING: may destroy infrastructure)",
|
||||
Short: "Delete a deployment after taking it offline (WARNING: may destroy infrastructure)",
|
||||
Args: cobra.NoArgs,
|
||||
PreRun: func(cmd *cobra.Command, args []string) {
|
||||
// Fix Viper bug for duplicate flags:
|
||||
|
@@ -11,7 +11,7 @@ import (
|
||||
|
||||
var downCmd = &cobra.Command{
|
||||
Use: "down",
|
||||
Short: "Take a route offline (WARNING: may destroy infrastructure)",
|
||||
Short: "Take a deployment offline (WARNING: may destroy infrastructure)",
|
||||
Args: cobra.NoArgs,
|
||||
PreRun: func(cmd *cobra.Command, args []string) {
|
||||
// Fix Viper bug for duplicate flags:
|
||||
@@ -29,16 +29,16 @@ var downCmd = &cobra.Command{
|
||||
lg.Fatal().Err(err).Msg("failed to load store")
|
||||
}
|
||||
|
||||
route := common.GetCurrentRoute(ctx, store)
|
||||
deployment := common.GetCurrentDeployment(ctx, store)
|
||||
|
||||
// TODO: Implement options: --no-cache
|
||||
if err := route.Down(ctx, nil); err != nil {
|
||||
if err := deployment.Down(ctx, nil); err != nil {
|
||||
lg.
|
||||
Fatal().
|
||||
Err(err).
|
||||
Str("routeName", route.Name()).
|
||||
Str("routeId", route.ID()).
|
||||
Msg("failed to up the route")
|
||||
Str("deploymentName", deployment.Name()).
|
||||
Str("deploymentId", deployment.ID()).
|
||||
Msg("failed to up the deployment")
|
||||
}
|
||||
},
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@ import (
|
||||
|
||||
var historyCmd = &cobra.Command{
|
||||
Use: "history",
|
||||
Short: "List past changes to a route",
|
||||
Short: "List past changes to a deployment",
|
||||
Args: cobra.NoArgs,
|
||||
PreRun: func(cmd *cobra.Command, args []string) {
|
||||
// Fix Viper bug for duplicate flags:
|
||||
|
@@ -22,7 +22,7 @@ var containerCmd = &cobra.Command{
|
||||
lg := logger.New()
|
||||
ctx := lg.WithContext(cmd.Context())
|
||||
|
||||
updateRouteInput(ctx, args[0], dagger.DockerInput(args[1]))
|
||||
updateDeploymentInput(ctx, args[0], dagger.DockerInput(args[1]))
|
||||
},
|
||||
}
|
||||
|
||||
|
@@ -22,7 +22,7 @@ var dirCmd = &cobra.Command{
|
||||
lg := logger.New()
|
||||
ctx := lg.WithContext(cmd.Context())
|
||||
|
||||
updateRouteInput(ctx, args[0], dagger.DirInput(args[1], []string{}))
|
||||
updateDeploymentInput(ctx, args[0], dagger.DirInput(args[1], []string{}))
|
||||
},
|
||||
}
|
||||
|
||||
|
@@ -27,7 +27,7 @@ var gitCmd = &cobra.Command{
|
||||
subDir = args[3]
|
||||
}
|
||||
|
||||
updateRouteInput(ctx, args[0], dagger.GitInput(args[1], args[2], subDir))
|
||||
updateDeploymentInput(ctx, args[0], dagger.GitInput(args[1], args[2], subDir))
|
||||
},
|
||||
}
|
||||
|
||||
|
@@ -12,7 +12,7 @@ import (
|
||||
// Cmd exposes the top-level command
|
||||
var Cmd = &cobra.Command{
|
||||
Use: "input",
|
||||
Short: "Manage a route's inputs",
|
||||
Short: "Manage a deployment's inputs",
|
||||
}
|
||||
|
||||
func init() {
|
||||
@@ -25,7 +25,7 @@ func init() {
|
||||
)
|
||||
}
|
||||
|
||||
func updateRouteInput(ctx context.Context, target string, input dagger.Input) {
|
||||
func updateDeploymentInput(ctx context.Context, target string, input dagger.Input) {
|
||||
lg := log.Ctx(ctx)
|
||||
|
||||
store, err := dagger.DefaultStore()
|
||||
@@ -33,11 +33,11 @@ func updateRouteInput(ctx context.Context, target string, input dagger.Input) {
|
||||
lg.Fatal().Err(err).Msg("failed to load store")
|
||||
}
|
||||
|
||||
st := common.GetCurrentRouteState(ctx, store)
|
||||
st := common.GetCurrentDeploymentState(ctx, store)
|
||||
st.AddInput(target, input)
|
||||
|
||||
if err := store.UpdateRoute(ctx, st, nil); err != nil {
|
||||
lg.Fatal().Err(err).Str("routeId", st.ID).Str("routeName", st.Name).Msg("cannot update route")
|
||||
if err := store.UpdateDeployment(ctx, st, nil); err != nil {
|
||||
lg.Fatal().Err(err).Str("deploymentId", st.ID).Str("deploymentName", st.Name).Msg("cannot update deployment")
|
||||
}
|
||||
lg.Info().Str("routeId", st.ID).Str("routeName", st.Name).Msg("updated route")
|
||||
lg.Info().Str("deploymentId", st.ID).Str("deploymentName", st.Name).Msg("updated deployment")
|
||||
}
|
||||
|
@@ -22,7 +22,7 @@ var textCmd = &cobra.Command{
|
||||
lg := logger.New()
|
||||
ctx := lg.WithContext(cmd.Context())
|
||||
|
||||
updateRouteInput(ctx, args[0], dagger.TextInput(args[1]))
|
||||
updateDeploymentInput(ctx, args[0], dagger.TextInput(args[1]))
|
||||
},
|
||||
}
|
||||
|
||||
|
@@ -5,7 +5,7 @@ import "github.com/spf13/cobra"
|
||||
// Cmd exposes the top-level command
|
||||
var Cmd = &cobra.Command{
|
||||
Use: "layout",
|
||||
Short: "Manage a route's layout",
|
||||
Short: "Manage a deployment's layout",
|
||||
}
|
||||
|
||||
func init() {
|
||||
|
@@ -11,7 +11,7 @@ import (
|
||||
|
||||
var listCmd = &cobra.Command{
|
||||
Use: "list",
|
||||
Short: "List available routes",
|
||||
Short: "List available deployments",
|
||||
Args: cobra.NoArgs,
|
||||
PreRun: func(cmd *cobra.Command, args []string) {
|
||||
// Fix Viper bug for duplicate flags:
|
||||
@@ -28,15 +28,15 @@ var listCmd = &cobra.Command{
|
||||
lg.Fatal().Err(err).Msg("failed to load store")
|
||||
}
|
||||
|
||||
routes, err := store.ListRoutes(ctx)
|
||||
deployments, err := store.ListDeployments(ctx)
|
||||
if err != nil {
|
||||
lg.
|
||||
Fatal().
|
||||
Err(err).
|
||||
Msg("cannot list routes")
|
||||
Msg("cannot list deployments")
|
||||
}
|
||||
|
||||
for _, r := range routes {
|
||||
for _, r := range deployments {
|
||||
fmt.Println(r.Name)
|
||||
}
|
||||
},
|
||||
|
@@ -16,7 +16,7 @@ import (
|
||||
|
||||
var newCmd = &cobra.Command{
|
||||
Use: "new",
|
||||
Short: "Create a new route",
|
||||
Short: "Create a new deployment",
|
||||
Args: cobra.NoArgs,
|
||||
PreRun: func(cmd *cobra.Command, args []string) {
|
||||
// Fix Viper bug for duplicate flags:
|
||||
@@ -33,41 +33,41 @@ var newCmd = &cobra.Command{
|
||||
lg.Fatal().Err(err).Msg("failed to load store")
|
||||
}
|
||||
|
||||
st := &dagger.RouteState{
|
||||
Name: getNewRouteName(ctx),
|
||||
st := &dagger.DeploymentState{
|
||||
Name: getNewDeploymentName(ctx),
|
||||
LayoutSource: getLayoutSource(ctx),
|
||||
}
|
||||
|
||||
err = store.CreateRoute(ctx, st)
|
||||
err = store.CreateDeployment(ctx, st)
|
||||
if err != nil {
|
||||
lg.Fatal().Err(err).Msg("failed to create route")
|
||||
lg.Fatal().Err(err).Msg("failed to create deployment")
|
||||
}
|
||||
lg.
|
||||
Info().
|
||||
Str("routeId", st.ID).
|
||||
Str("routeName", st.Name).
|
||||
Msg("route created")
|
||||
Str("deploymentId", st.ID).
|
||||
Str("deploymentName", st.Name).
|
||||
Msg("deployment created")
|
||||
|
||||
route, err := dagger.NewRoute(st)
|
||||
deployment, err := dagger.NewDeployment(st)
|
||||
if err != nil {
|
||||
lg.
|
||||
Fatal().
|
||||
Err(err).
|
||||
Msg("failed to initialize route")
|
||||
Msg("failed to initialize deployment")
|
||||
}
|
||||
|
||||
if viper.GetBool("up") {
|
||||
common.RouteUp(ctx, route)
|
||||
common.DeploymentUp(ctx, deployment)
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
func getNewRouteName(ctx context.Context) string {
|
||||
func getNewDeploymentName(ctx context.Context) string {
|
||||
lg := log.Ctx(ctx)
|
||||
|
||||
routeName := viper.GetString("route")
|
||||
if routeName != "" {
|
||||
return routeName
|
||||
deploymentName := viper.GetString("deployment")
|
||||
if deploymentName != "" {
|
||||
return deploymentName
|
||||
}
|
||||
|
||||
workDir, err := os.Getwd()
|
||||
@@ -99,8 +99,8 @@ func getLayoutSource(ctx context.Context) dagger.Input {
|
||||
}
|
||||
|
||||
func init() {
|
||||
newCmd.Flags().StringP("name", "n", "", "Specify a route name")
|
||||
newCmd.Flags().BoolP("up", "u", false, "Bring the route online")
|
||||
newCmd.Flags().StringP("name", "n", "", "Specify a deployment name")
|
||||
newCmd.Flags().BoolP("up", "u", false, "Bring the deployment online")
|
||||
|
||||
newCmd.Flags().String("layout-dir", "", "Load layout from a local directory")
|
||||
newCmd.Flags().String("layout-git", "", "Load layout from a git repository")
|
||||
|
@@ -5,7 +5,7 @@ import "github.com/spf13/cobra"
|
||||
// Cmd exposes the top-level command
|
||||
var Cmd = &cobra.Command{
|
||||
Use: "output",
|
||||
Short: "Manage a route's outputs",
|
||||
Short: "Manage a deployment's outputs",
|
||||
}
|
||||
|
||||
func init() {
|
||||
|
@@ -13,7 +13,7 @@ import (
|
||||
|
||||
var queryCmd = &cobra.Command{
|
||||
Use: "query [EXPR] [flags]",
|
||||
Short: "Query the contents of a route",
|
||||
Short: "Query the contents of a deployment",
|
||||
Args: cobra.ExactArgs(1),
|
||||
PreRun: func(cmd *cobra.Command, args []string) {
|
||||
// Fix Viper bug for duplicate flags:
|
||||
@@ -31,18 +31,18 @@ var queryCmd = &cobra.Command{
|
||||
lg.Fatal().Err(err).Msg("failed to load store")
|
||||
}
|
||||
|
||||
route := common.GetCurrentRoute(ctx, store)
|
||||
deployment := common.GetCurrentDeployment(ctx, store)
|
||||
|
||||
expr := args[0]
|
||||
|
||||
out, err := route.Query(ctx, expr, nil)
|
||||
out, err := deployment.Query(ctx, expr, nil)
|
||||
if err != nil {
|
||||
lg.
|
||||
Fatal().
|
||||
Err(err).
|
||||
Str("routeName", route.Name()).
|
||||
Str("routeId", route.ID()).
|
||||
Msg("failed to query route")
|
||||
Str("deploymentName", deployment.Name()).
|
||||
Str("deploymentId", deployment.ID()).
|
||||
Msg("failed to query deployment")
|
||||
}
|
||||
|
||||
fmt.Println(out)
|
||||
@@ -52,7 +52,7 @@ var queryCmd = &cobra.Command{
|
||||
}
|
||||
|
||||
func init() {
|
||||
queryCmd.Flags().String("revision", "latest", "Query a specific version of the route")
|
||||
queryCmd.Flags().String("revision", "latest", "Query a specific version of the deployment")
|
||||
queryCmd.Flags().StringP("format", "f", "", "Output format (json|yaml|cue|text|env)")
|
||||
|
||||
queryCmd.Flags().BoolP("--no-input", "I", false, "Exclude inputs from query")
|
||||
|
@@ -23,7 +23,7 @@ var rootCmd = &cobra.Command{
|
||||
func init() {
|
||||
rootCmd.PersistentFlags().String("log-format", "", "Log format (json, pretty). Defaults to json if the terminal is not a tty")
|
||||
rootCmd.PersistentFlags().StringP("log-level", "l", "debug", "Log level")
|
||||
rootCmd.PersistentFlags().StringP("route", "r", "", "Select a route")
|
||||
rootCmd.PersistentFlags().StringP("deployment", "d", "", "Select a deployment")
|
||||
|
||||
rootCmd.AddCommand(
|
||||
computeCmd,
|
||||
|
@@ -11,7 +11,7 @@ import (
|
||||
|
||||
var upCmd = &cobra.Command{
|
||||
Use: "up",
|
||||
Short: "Bring a route online with latest layout and inputs",
|
||||
Short: "Bring a deployment online with latest layout and inputs",
|
||||
Args: cobra.NoArgs,
|
||||
PreRun: func(cmd *cobra.Command, args []string) {
|
||||
// Fix Viper bug for duplicate flags:
|
||||
@@ -28,10 +28,10 @@ var upCmd = &cobra.Command{
|
||||
lg.Fatal().Err(err).Msg("failed to load store")
|
||||
}
|
||||
|
||||
route := common.GetCurrentRoute(ctx, store)
|
||||
deployment := common.GetCurrentDeployment(ctx, store)
|
||||
|
||||
// TODO: Implement options: --no-cache
|
||||
common.RouteUp(ctx, route)
|
||||
common.DeploymentUp(ctx, deployment)
|
||||
},
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user