()
| 12 | ) |
| 13 | |
| 14 | func NewRootCommand() *cobra.Command { |
| 15 | var dataDir string |
| 16 | var daemonURL string |
| 17 | root := &cobra.Command{ |
| 18 | Use: "agentprov", |
| 19 | Short: "AgentProvenance control CLI", |
| 20 | } |
| 21 | root.PersistentFlags().StringVar(&dataDir, "data-dir", store.DefaultDataDir, "local AgentProvenance data directory") |
| 22 | root.PersistentFlags().StringVar(&daemonURL, "daemon-url", firstEnv("AGENTPROV_DAEMON_URL"), "local daemon URL; also read from AGENTPROV_DAEMON_URL") |
| 23 | |
| 24 | root.AddCommand(launchCmd(&dataDir)) |
| 25 | root.AddCommand(doctorCmd(&dataDir)) |
| 26 | root.AddCommand(internalCmd()) |
| 27 | root.AddCommand(intentCmd(&dataDir)) |
| 28 | root.AddCommand(initCmd(&dataDir)) |
| 29 | root.AddCommand(daemonCmd(&dataDir)) |
| 30 | root.AddCommand(leaseCmd(&dataDir, &daemonURL)) |
| 31 | root.AddCommand(sessionCmd(&dataDir, &daemonURL)) |
| 32 | root.AddCommand(execCmd(&dataDir, &daemonURL)) |
| 33 | root.AddCommand(processCmd(&dataDir)) |
| 34 | root.AddCommand(portCmd(&dataDir)) |
| 35 | root.AddCommand(adapterCmd()) |
| 36 | root.AddCommand(runtimeCmd(&dataDir)) |
| 37 | root.AddCommand(templateCmd(&dataDir)) |
| 38 | root.AddCommand(apiCmd(&dataDir)) |
| 39 | root.AddCommand(recordCmd(&dataDir)) |
| 40 | root.AddCommand(sensorCmd(&dataDir)) |
| 41 | root.AddCommand(observeCmd(&dataDir, &daemonURL)) |
| 42 | root.AddCommand(telemetryCmd(&dataDir, &daemonURL)) |
| 43 | root.AddCommand(timelineCmd(&dataDir, &daemonURL)) |
| 44 | root.AddCommand(effectCmd(&dataDir)) |
| 45 | root.AddCommand(graphCmd(&dataDir, &daemonURL)) |
| 46 | root.AddCommand(forensicsCmd(&dataDir, &daemonURL)) |
| 47 | root.AddCommand(evidenceCmd(&dataDir, &daemonURL)) |
| 48 | root.AddCommand(securityCmd(&dataDir, &daemonURL)) |
| 49 | root.AddCommand(signalCmd(&dataDir, &daemonURL)) |
| 50 | root.AddCommand(signalsCmd(&dataDir)) |
| 51 | root.AddCommand(aiCmd(&dataDir)) |
| 52 | root.AddCommand(hooksCmd(&dataDir)) |
| 53 | root.AddCommand(dashboardCmd(&dataDir)) |
| 54 | root.AddCommand(complianceCmd(&dataDir)) |
| 55 | root.AddCommand(gcCmd(&dataDir)) |
| 56 | root.AddCommand(baselineCmd(&dataDir)) |
| 57 | root.AddCommand(poolCmd(&dataDir)) |
| 58 | root.AddCommand(egressCmd(&dataDir)) |
| 59 | root.AddCommand(credentialCmd(&dataDir)) |
| 60 | root.AddCommand(nodeCmd(&dataDir)) |
| 61 | root.AddCommand(schedulerCmd(&dataDir, &daemonURL)) |
| 62 | root.AddCommand(snapshotCmd(&dataDir, &daemonURL)) |
| 63 | root.AddCommand(forkCmd(&dataDir)) |
| 64 | root.AddCommand(policyCmd(&dataDir)) |
| 65 | root.AddCommand(costCmd(&dataDir)) |
| 66 | root.AddCommand(benchCmd()) |
| 67 | return root |
| 68 | } |
| 69 | |
| 70 | func daemonClient(daemonURL string) (daemon.Client, bool) { |
| 71 | if daemonURL == "" { |
no test coverage detected