Skip to content

Commit

Permalink
prepend convenience flags with data-
Browse files Browse the repository at this point in the history
  • Loading branch information
svix-frank committed Jun 2, 2021
1 parent 8cfd2d2 commit 486e1d6
Show file tree
Hide file tree
Showing 5 changed files with 68 additions and 50 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ svix application create '{ "name": "demo" }'
# or pipe in some json
echo '{ "name": "demo" }' | svix application create
# or use the convinence cli flags
svix application create --name demo
svix application create --data-name demo

# List Applications
svix application list --limit 2 --iterator some_iterator
Expand Down
36 changes: 23 additions & 13 deletions cmd/application.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,8 @@ func newApplicationCmd() *applicationCmd {
ac.cmd.AddCommand(list)

// create
nameFlagName := "data-name"
uidFlagName := "data-uid"
create := &cobra.Command{
Use: "create [JSON_PAYLOAD]",
Short: "Create a new application",
Expand Down Expand Up @@ -71,13 +73,13 @@ Example Schema:
}

// get flags
if cmd.Flags().Changed("name") {
nameFlag, err := cmd.Flags().GetString("name")
if cmd.Flags().Changed(nameFlagName) {
nameFlag, err := cmd.Flags().GetString(nameFlagName)
cobra.CheckErr(err)
app.Name = nameFlag
}
if cmd.Flags().Changed("uid") {
uidFlag, err := cmd.Flags().GetString("uid")
if cmd.Flags().Changed(uidFlagName) {
uidFlag, err := cmd.Flags().GetString(uidFlagName)
cobra.CheckErr(err)
app.Uid = &uidFlag
}
Expand All @@ -96,8 +98,8 @@ Example Schema:
return nil
},
}
create.Flags().String("name", "", "Name of the Application")
create.Flags().String("uid", "", "UID of the application (optional)")
create.Flags().String(nameFlagName, "", "Name of the Application")
create.Flags().String(uidFlagName, "", "UID of the application (optional)")
ac.cmd.AddCommand(create)

// get
Expand All @@ -124,7 +126,15 @@ Example Schema:
update := &cobra.Command{
Use: "update APP_ID [JSON_PAYLOAD]",
Short: "Update an application by id",
Args: validators.RangeArgs(0, 1),
Long: `Update an application by id
Example Schema:
{
"uid": "string",
"name": "string"
}
`,
Args: validators.RangeArgs(0, 1),
RunE: func(cmd *cobra.Command, args []string) error {
// parse positional args
appID := args[0]
Expand All @@ -144,13 +154,13 @@ Example Schema:
}

// get flags
if cmd.Flags().Changed("name") {
nameFlag, err := cmd.Flags().GetString("name")
if cmd.Flags().Changed(nameFlagName) {
nameFlag, err := cmd.Flags().GetString(nameFlagName)
cobra.CheckErr(err)
app.Name = nameFlag
}
if cmd.Flags().Changed("uid") {
uidFlag, err := cmd.Flags().GetString("uid")
if cmd.Flags().Changed(uidFlagName) {
uidFlag, err := cmd.Flags().GetString(uidFlagName)
cobra.CheckErr(err)
app.Uid = &uidFlag
}
Expand All @@ -165,8 +175,8 @@ Example Schema:
return nil
},
}
update.Flags().String("name", "", "Name of the Application")
update.Flags().String("uid", "", "UID of the application (optional)")
update.Flags().String(nameFlagName, "", "Name of the Application")
update.Flags().String(uidFlagName, "", "UID of the application (optional)")
ac.cmd.AddCommand(update)

delete := &cobra.Command{
Expand Down
39 changes: 21 additions & 18 deletions cmd/endpoint.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,9 @@ func newEndpointCmd() *endpointCmd {
ec.cmd.AddCommand(list)

// create
urlFlagName := "data-url"
versionFlagName := "data-version"
filterTypesFlagName := "data-filterTypes"
create := &cobra.Command{
Use: "create APP_ID [JSON_PAYLOAD]",
Short: "Create a new endpoint",
Expand Down Expand Up @@ -79,18 +82,18 @@ Example Schema:
}

// get flags
if cmd.Flags().Changed("url") {
urlFlag, err := cmd.Flags().GetString("url")
if cmd.Flags().Changed(urlFlagName) {
urlFlag, err := cmd.Flags().GetString(urlFlagName)
cobra.CheckErr(err)
ep.Url = urlFlag
}
if cmd.Flags().Changed("version") {
versionFlag, err := cmd.Flags().GetInt32("version")
if cmd.Flags().Changed(versionFlagName) {
versionFlag, err := cmd.Flags().GetInt32(versionFlagName)
cobra.CheckErr(err)
ep.Version = versionFlag
}
if cmd.Flags().Changed("filterTypes") {
filterTypesFlag, err := cmd.Flags().GetStringArray("filterTypes")
if cmd.Flags().Changed(filterTypesFlagName) {
filterTypesFlag, err := cmd.Flags().GetStringArray(filterTypesFlagName)
cobra.CheckErr(err)
ep.FilterTypes = &filterTypesFlag
}
Expand All @@ -104,9 +107,9 @@ Example Schema:
return nil
},
}
create.Flags().String("url", "", "")
create.Flags().Int32("version", 0, "")
create.Flags().StringArray("filterTypes", []string{}, "")
create.Flags().String(urlFlagName, "", "")
create.Flags().Int32(versionFlagName, 0, "")
create.Flags().StringArray(filterTypesFlagName, []string{}, "")
ec.cmd.AddCommand(create)

// get
Expand Down Expand Up @@ -166,18 +169,18 @@ Example Schema:
}

// get flags
if cmd.Flags().Changed("url") {
urlFlag, err := cmd.Flags().GetString("url")
if cmd.Flags().Changed(urlFlagName) {
urlFlag, err := cmd.Flags().GetString(urlFlagName)
cobra.CheckErr(err)
ep.Url = urlFlag
}
if cmd.Flags().Changed("version") {
versionFlag, err := cmd.Flags().GetInt32("version")
if cmd.Flags().Changed(versionFlagName) {
versionFlag, err := cmd.Flags().GetInt32(versionFlagName)
cobra.CheckErr(err)
ep.Version = versionFlag
}
if cmd.Flags().Changed("filterTypes") {
filterTypesFlag, err := cmd.Flags().GetStringArray("filterTypes")
if cmd.Flags().Changed(filterTypesFlagName) {
filterTypesFlag, err := cmd.Flags().GetStringArray(filterTypesFlagName)
cobra.CheckErr(err)
ep.FilterTypes = &filterTypesFlag
}
Expand All @@ -191,9 +194,9 @@ Example Schema:
return nil
},
}
update.Flags().String("url", "", "")
update.Flags().Int32("version", 0, "")
update.Flags().StringArray("filterTypes", []string{}, "")
update.Flags().String(urlFlagName, "", "")
update.Flags().Int32(versionFlagName, 0, "")
update.Flags().StringArray(filterTypesFlagName, []string{}, "")
ec.cmd.AddCommand(update)

delete := &cobra.Command{
Expand Down
20 changes: 11 additions & 9 deletions cmd/event.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ func newEventTypeCmd() *eventTypeCmd {
etc.cmd.AddCommand(list)

// create
nameFlagName := "data-name"
descriptionFlagName := "data-description"
create := &cobra.Command{
Use: "create [JSON_PAYLOAD]",
Short: "Create a new event type",
Expand Down Expand Up @@ -70,13 +72,13 @@ Example Schema:
}

// get flags
if cmd.Flags().Changed("name") {
nameFlag, err := cmd.Flags().GetString("name")
if cmd.Flags().Changed(nameFlagName) {
nameFlag, err := cmd.Flags().GetString(nameFlagName)
cobra.CheckErr(err)
et.Name = nameFlag
}
if cmd.Flags().Changed("description") {
descFlag, err := cmd.Flags().GetString("description")
if cmd.Flags().Changed(descriptionFlagName) {
descFlag, err := cmd.Flags().GetString(descriptionFlagName)
cobra.CheckErr(err)
et.Description = descFlag
}
Expand All @@ -90,8 +92,8 @@ Example Schema:
return nil
},
}
create.Flags().String("name", "", "")
create.Flags().String("description", "", "")
create.Flags().String(nameFlagName, "", "")
create.Flags().String(descriptionFlagName, "", "")
etc.cmd.AddCommand(create)

update := &cobra.Command{
Expand Down Expand Up @@ -124,8 +126,8 @@ Example Schema:
}

// get flags
if cmd.Flags().Changed("description") {
descFlag, err := cmd.Flags().GetString("description")
if cmd.Flags().Changed(descriptionFlagName) {
descFlag, err := cmd.Flags().GetString(descriptionFlagName)
cobra.CheckErr(err)
et.Description = descFlag
}
Expand All @@ -139,7 +141,7 @@ Example Schema:
return nil
},
}
update.Flags().String("description", "", "")
update.Flags().String(descriptionFlagName, "", "")
etc.cmd.AddCommand(update)

delete := &cobra.Command{
Expand Down
21 changes: 12 additions & 9 deletions cmd/message.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,9 @@ func newMessageCmd() *messageCmd {
mc.cmd.AddCommand(list)

// create
eventTypeFlagName := "data-eventType"
eventIdFlagName := "data-eventId"
payloadFlagName := "data-payload"
create := &cobra.Command{
Use: "create APP_ID [JSON_PAYLOAD]",
Short: "Create a new messsage",
Expand Down Expand Up @@ -78,18 +81,18 @@ Example Schema:
}

// get flags
if cmd.Flags().Changed("eventType") {
eventTypeFlag, err := cmd.Flags().GetString("eventType")
if cmd.Flags().Changed(eventTypeFlagName) {
eventTypeFlag, err := cmd.Flags().GetString(eventTypeFlagName)
cobra.CheckErr(err)
msg.EventType = eventTypeFlag
}
if cmd.Flags().Changed("eventId") {
eventIdFlag, err := cmd.Flags().GetString("eventId")
if cmd.Flags().Changed(eventIdFlagName) {
eventIdFlag, err := cmd.Flags().GetString(eventIdFlagName)
cobra.CheckErr(err)
msg.EventId = &eventIdFlag
}
if cmd.Flags().Changed("payload") {
payloadFlag, err := cmd.Flags().GetString("payload")
if cmd.Flags().Changed(payloadFlagName) {
payloadFlag, err := cmd.Flags().GetString(payloadFlagName)
cobra.CheckErr(err)
// unmarshal payload
var payload map[string]interface{}
Expand All @@ -109,9 +112,9 @@ Example Schema:
return nil
},
}
create.Flags().String("eventType", "", "")
create.Flags().String("eventId", "", "")
create.Flags().String("payload", "", "json message payload")
create.Flags().String(eventTypeFlagName, "", "")
create.Flags().String(eventIdFlagName, "", "")
create.Flags().String(payloadFlagName, "", "json message payload")
mc.cmd.AddCommand(create)

get := &cobra.Command{
Expand Down

0 comments on commit 486e1d6

Please sign in to comment.