(deps commandDeps, workspaceRef *string)
| 305 | } |
| 306 | |
| 307 | func 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 | |
| 354 | func networkChannelUpdateRequest( |
| 355 | cmd *cobra.Command, |
no test coverage detected