MCPcopy Create free account
hub / github.com/compozy/agh / newNetworkChannelsUpdateCommand

Function newNetworkChannelsUpdateCommand

internal/cli/network.go:307–352  ·  view source on GitHub ↗
(deps commandDeps, workspaceRef *string)

Source from the content-addressed store, hash-verified

305}
306
307func newNetworkChannelsUpdateCommand(deps commandDeps, workspaceRef *string) *cobra.Command {
308 var flags networkUpdateChannelFlags
309 cmd := &cobra.Command{
310 Use: "update [channel]",
311 Short: "Update a runtime channel delivery policy",
312 Args: cobra.MaximumNArgs(1),
313 RunE: func(cmd *cobra.Command, args []string) error {
314 client, err := clientFromDeps(deps)
315 if err != nil {
316 return err
317 }
318 workspace, err := resolveNetworkWorkspaceRef(cmd, deps, client, workspaceRef)
319 if err != nil {
320 return err
321 }
322 channel, err := resolveNetworkCreateChannelName(args, flags.channel)
323 if err != nil {
324 return err
325 }
326 request, err := networkChannelUpdateRequest(cmd, flags)
327 if err != nil {
328 return err
329 }
330 updated, err := client.UpdateNetworkChannel(cmd.Context(), workspace, channel, request)
331 if err != nil {
332 return err
333 }
334 return writeCommandOutput(cmd, networkChannelBundle(updated))
335 },
336 }
337 cmd.Flags().StringVar(&flags.channel, networkChannelKey, "", "Channel name when not passed as an argument")
338 cmd.Flags().StringVar(&flags.purpose, "purpose", "", "Human-readable channel purpose")
339 cmd.Flags().StringVar(
340 &flags.fanoutPolicy,
341 "fanout-policy",
342 "",
343 "Delivery activation policy: capability_match, coordinator, or all_members",
344 )
345 cmd.Flags().StringVar(
346 &flags.coordinatorPeerID,
347 "coordinator-peer-id",
348 "",
349 "Coordinator peer id; pass empty to clear",
350 )
351 return cmd
352}
353
354func networkChannelUpdateRequest(
355 cmd *cobra.Command,

Callers 1

Calls 7

clientFromDepsFunction · 0.85
writeCommandOutputFunction · 0.85
networkChannelBundleFunction · 0.85
UpdateNetworkChannelMethod · 0.65

Tested by

no test coverage detected