MCPcopy Create free account
hub / github.com/auth0/auth0-cli / showDeliveryCmd

Function showDeliveryCmd

internal/cli/event_streams.go:612–673  ·  view source on GitHub ↗
(cli *cli)

Source from the content-addressed store, hash-verified

610}
611
612func showDeliveryCmd(cli *cli) *cobra.Command {
613 var inputs struct {
614 StreamID string
615 DeliveryID string
616 }
617
618 cmd := &cobra.Command{
619 Use: "show [stream-id] [delivery-id]",
620 Args: cobra.MaximumNArgs(2),
621 Short: "Show details for a specific delivery",
622 Long: "Displays metadata, attempts, and event payload for a specific \n" +
623 "delivery associated with an event stream. \n" +
624 "If stream ID or delivery ID is not provided, you will be " +
625 "prompted to select them interactively.",
626 Example: ` auth0 event-streams deliveries show
627 auth0 event-streams deliveries show <stream-id>
628 auth0 event-streams deliveries show <stream-id> <delivery-id>`,
629 RunE: func(cmd *cobra.Command, args []string) error {
630 if len(args) >= 1 {
631 inputs.StreamID = args[0]
632 }
633 if len(args) == 2 {
634 inputs.DeliveryID = args[1]
635 }
636
637 if inputs.StreamID == "" {
638 if err := eventStreamID.Pick(cmd, &inputs.StreamID, cli.eventStreamPickerOptions); err != nil {
639 return err
640 }
641 }
642
643 if inputs.DeliveryID == "" {
644 deliveries, err := fetchRecentDeliveries(cmd, cli, inputs.StreamID)
645 if err != nil {
646 return fmt.Errorf("failed to retrieve deliveries: %w", err)
647 }
648 if len(deliveries) == 0 {
649 return fmt.Errorf("no deliveries found for stream %q", inputs.StreamID)
650 }
651
652 currentIndex := auth0.Int(0)
653 selectedDelivery := cli.renderer.EventDeliveryPrompt(deliveries, currentIndex)
654 inputs.DeliveryID = selectedDelivery.GetID()
655 }
656
657 var delivery *management.EventDelivery
658 if err := ansi.Waiting(func() (err error) {
659 delivery, err = cli.api.EventStream.ReadDelivery(cmd.Context(), inputs.StreamID, inputs.DeliveryID)
660 return err
661 }); err != nil {
662 return fmt.Errorf("failed to fetch delivery %q for stream %q: %w", inputs.DeliveryID, inputs.StreamID, err)
663 }
664
665 cli.renderer.ShowDelivery(delivery)
666 return nil
667 },
668 }
669

Callers 1

deliveriesEventStreamCmdFunction · 0.85

Calls 7

WaitingFunction · 0.92
fetchRecentDeliveriesFunction · 0.85
ErrorfMethod · 0.80
EventDeliveryPromptMethod · 0.80
ShowDeliveryMethod · 0.80
ReadDeliveryMethod · 0.65
PickMethod · 0.45

Tested by

no test coverage detected