(client: ArtifactClient, args: string[])
| 316 | // --------------------------------------------------------------- |
| 317 | |
| 318 | async function runRepo(client: ArtifactClient, args: string[]): Promise<ArtifactsCLIResult> { |
| 319 | if (args.length === 0) { |
| 320 | return { stdout: repoHelp(), stderr: "", exitCode: 1 }; |
| 321 | } |
| 322 | const [sub, ...rest] = args; |
| 323 | switch (sub) { |
| 324 | case "help": |
| 325 | case "--help": |
| 326 | case "-h": |
| 327 | return ok(repoHelp()); |
| 328 | case "create": |
| 329 | return await runRepoCreate(client, rest); |
| 330 | case "get": |
| 331 | return await runRepoGet(client, rest); |
| 332 | case "list": |
| 333 | return await runRepoList(client, rest); |
| 334 | case "delete": |
| 335 | return await runRepoDelete(client, rest); |
| 336 | case "import": |
| 337 | return await runRepoImport(client, rest); |
| 338 | default: |
| 339 | return fail( |
| 340 | `artifacts repo: '${sub}' is not a repo subcommand. See 'artifacts repo --help'.`, |
| 341 | ); |
| 342 | } |
| 343 | } |
| 344 | |
| 345 | async function runRepoCreate(client: ArtifactClient, args: string[]): Promise<ArtifactsCLIResult> { |
| 346 | const parsed = parseFlags(args, { |
no test coverage detected