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

Function runForceTaskFailCommand

internal/cli/task.go:1830–1869  ·  view source on GitHub ↗
(
	cmd *cobra.Command,
	deps commandDeps,
	runIDs []string,
	flags taskFailCommandFlags,
)

Source from the content-addressed store, hash-verified

1828}
1829
1830func runForceTaskFailCommand(
1831 cmd *cobra.Command,
1832 deps commandDeps,
1833 runIDs []string,
1834 flags taskFailCommandFlags,
1835) error {
1836 request := ForceFailTaskRunRequest{
1837 Reason: strings.TrimSpace(flags.reason),
1838 }
1839 if request.Reason == "" {
1840 return errors.New("cli: --reason is required")
1841 }
1842 if cmd.Flags().Changed("metadata") {
1843 metadata, err := parseAgentTaskJSONFlag("metadata", flags.metadataRaw)
1844 if err != nil {
1845 return err
1846 }
1847 request.Metadata = metadata
1848 }
1849 client, err := clientFromDeps(deps)
1850 if err != nil {
1851 return err
1852 }
1853 if len(runIDs) == 1 {
1854 record, err := client.ForceFailTaskRun(cmd.Context(), runIDs[0], request)
1855 if err != nil {
1856 return err
1857 }
1858 return writeCommandOutput(cmd, taskRunBundle(record))
1859 }
1860 record, err := client.BulkForceFailTaskRuns(cmd.Context(), BulkForceTaskRunRequest{
1861 RunIDs: runIDs,
1862 Reason: request.Reason,
1863 Metadata: request.Metadata,
1864 })
1865 if err != nil {
1866 return err
1867 }
1868 return writeCommandOutput(cmd, bulkForceTaskRunBundle(record))
1869}
1870
1871func newTaskReleaseCommand(deps commandDeps) *cobra.Command {
1872 var reason string

Callers 1

runTaskFailCommandFunction · 0.85

Calls 7

parseAgentTaskJSONFlagFunction · 0.85
clientFromDepsFunction · 0.85
writeCommandOutputFunction · 0.85
taskRunBundleFunction · 0.85
bulkForceTaskRunBundleFunction · 0.85
ForceFailTaskRunMethod · 0.65
BulkForceFailTaskRunsMethod · 0.65

Tested by

no test coverage detected