(deps commandDeps)
| 2043 | } |
| 2044 | |
| 2045 | func newTaskResumeCommand(deps commandDeps) *cobra.Command { |
| 2046 | var metadataRaw string |
| 2047 | |
| 2048 | cmd := &cobra.Command{ |
| 2049 | Use: "resume <task-id>", |
| 2050 | Short: "Resume new runs for one paused task", |
| 2051 | Args: cobra.ExactArgs(1), |
| 2052 | Example: ` # Re-enable scheduler claims for a task |
| 2053 | agh task resume task-123`, |
| 2054 | RunE: func(cmd *cobra.Command, args []string) error { |
| 2055 | taskID, err := requiredTaskID(args[0]) |
| 2056 | if err != nil { |
| 2057 | return err |
| 2058 | } |
| 2059 | request := ResumeTaskRequest{} |
| 2060 | if cmd.Flags().Changed("metadata") { |
| 2061 | request.Metadata, err = parseAgentTaskJSONFlag("metadata", metadataRaw) |
| 2062 | if err != nil { |
| 2063 | return err |
| 2064 | } |
| 2065 | } |
| 2066 | client, err := clientFromDeps(deps) |
| 2067 | if err != nil { |
| 2068 | return err |
| 2069 | } |
| 2070 | record, err := client.ResumeTask(cmd.Context(), taskID, request) |
| 2071 | if err != nil { |
| 2072 | return err |
| 2073 | } |
| 2074 | return writeCommandOutput(cmd, taskBundle(&record)) |
| 2075 | }, |
| 2076 | } |
| 2077 | cmd.Flags().StringVar(&metadataRaw, "metadata", "", "Optional task-resume metadata JSON") |
| 2078 | return cmd |
| 2079 | } |
| 2080 | |
| 2081 | func newTaskPromoteCommand(deps commandDeps) *cobra.Command { |
| 2082 | var input taskPromoteInput |
no test coverage detected