Commit graph

59 commits

Author SHA1 Message Date
Mislav Marohnić
f749590e87 Replace old "github/ghcs" import statements 2021-09-28 16:57:56 +02:00
Mislav Marohnić
ca0f89d3bc Introduce an App struct that executes core business logic
The Cobra commands are now a light wrapper around the App struct.

Co-authored-by: Jose Garcia <josebalius@github.com>
2021-09-24 17:20:34 +02:00
Mislav Marohnić
8807b3a73a Merge pull request #184 from github/args-constraint
Consistently institute constraints for position arguments and improve error message
2021-09-24 16:02:36 +02:00
Mislav Marohnić
3d017b2824 Fix stderr output on delete errors 2021-09-24 15:09:41 +02:00
Mislav Marohnić
75c1dfdf49 Fetch codespace by name directly if name argument given 2021-09-23 18:57:22 +02:00
Mislav Marohnić
e8212a80a9 Print delete failures as they occur 2021-09-23 17:14:25 +02:00
Mislav Marohnić
7a91ba5942 Print usage help when args given to "NoArgs" commands 2021-09-22 19:51:12 +02:00
Mislav Marohnić
32d3a38465 Name of the codespace 2021-09-22 16:39:50 +02:00
Mislav Marohnić
cb7b535b91 Add tests for delete 2021-09-22 16:11:34 +02:00
Mislav Marohnić
678da44c28 Simplify delete further 2021-09-21 21:09:26 +02:00
Mislav Marohnić
ab86739b6b Merge remote-tracking branch 'origin' into mislav/delete-codespaces 2021-09-21 20:35:58 +02:00
Mislav Marohnić
683d847dd2 Merge remote-tracking branch 'origin' into cli-migration 2021-09-21 17:38:41 +02:00
Alan Donovan
9e08b7477d delete: reject position args 2021-09-20 13:40:45 -04:00
Mislav Marohnić
b894d3e134 Simplify delete implementation 2021-09-20 18:37:00 +02:00
Mislav Marohnić
836075215d Merge remote-tracking branch 'origin' into cli-migration 2021-09-20 13:59:32 +02:00
Raffaele Di Fazio
c4f0eda96d force was actually needed by a next commit
Signed-off-by: Raffaele Di Fazio <raffo@github.com>
2021-09-20 11:54:30 +02:00
Raffaele Di Fazio
eca3ecb43b Merge branch 'main' into raffo/delete-codespaces 2021-09-20 11:53:35 +02:00
Raffaele Di Fazio
4721e7004b add threshold to delete by repo
Signed-off-by: Raffaele Di Fazio <raffo@github.com>
2021-09-20 11:10:44 +02:00
Raffaele Di Fazio
11024f71fa force is not used in delete by repo
Signed-off-by: Raffaele Di Fazio <raffo@github.com>
2021-09-20 10:27:29 +02:00
Alan Donovan
67a6f0a85d Merge pull request #168 from github/restore-delete-r-confirm
Restore confirmation to delete -r, lost in botched merge
2021-09-17 11:48:02 -04:00
Mislav Marohnić
8c0c7a8e19 Make GITHUB_TOKEN configurable through Go member
Co-authored-by: Jose Garcia <josebalius@github.com>
2021-09-17 16:29:35 +02:00
Mislav Marohnić
c2f3537a32 Separate "main" package from "ghcs" package
To make "ghcs" importable, this separates out the `main()` function into
its own package that lives under "cmd/ghcs/main". Typically the main
package would be called "cmd/ghcs", but we wanted to leave the current
ghcs implementation where it is to avoid causing conflicts with current
work in progress.

Co-authored-by: Jose Garcia <josebalius@github.com>
2021-09-17 16:26:20 +02:00
Raffaele Di Fazio
23c9026f58 Merge branch 'main' into raffo/delete-codespaces 2021-09-17 16:13:12 +02:00
Alan Donovan
d23eca8c5f remove "list" operation from "delete -r" command 2021-09-17 09:51:11 -04:00
Alan Donovan
747d7e7173 Restore confirmation to delete -r, lost in botched merge 2021-09-17 09:49:46 -04:00
Alan Donovan
610ab89c3d Merge branch 'main' into delete-parallel 2021-09-17 09:32:56 -04:00
Alan Donovan
4de4572813 add comment 2021-09-17 09:31:05 -04:00
Alan Donovan
fb197c8e75 Merge branch 'main' into delete-parallel 2021-09-17 09:30:48 -04:00
Raffaele Di Fazio
054fec0ba1 address code comments
Signed-off-by: Raffaele Di Fazio <raffo@github.com>
2021-09-17 14:45:08 +02:00
Max Beizer
a4f1fa076b Fix up all the static-check warnings (#162) 2021-09-17 13:10:37 +02:00
Raffaele Di Fazio
29c2a17866 Update cmd/ghcs/delete.go
Co-authored-by: Jose Garcia <josebalius@github.com>
2021-09-17 08:55:54 +02:00
Alan Donovan
bc74c4aafa make delete --repo parallel 2021-09-16 18:29:19 -04:00
Raffaele Di Fazio
35e0f95243 Update cmd/ghcs/delete.go
Co-authored-by: CamiloGarciaLaRotta <camilogarcialarotta@github.com>
2021-09-16 18:42:41 +02:00
Raffaele Di Fazio
5cd90fea88 fix linter
Signed-off-by: Raffaele Di Fazio <raffo@github.com>
2021-09-16 16:45:07 +02:00
Raffaele Di Fazio
68f4cad1af implement delete all with thresold
Signed-off-by: Raffaele Di Fazio <raffo@github.com>
2021-09-16 16:42:53 +02:00
Christian Gregg
cc1b86461e Confirm deletion of codespaces with unpushed/uncommited changes (#129)
Adds a confirmation dialog on `ghcs delete` if the codespace in question
has unpushed or uncommited changes.

This confirmation can be skipped using the `--force` or `-f` flag.

Closes: #84
Closes: #10
2021-09-16 13:47:15 +01:00
Mislav Marohnić
dbb4e0c177 Merge remote-tracking branch 'origin' into ruleguard 2021-09-16 11:46:50 +02:00
Alan Donovan
06719866c9 move api to internal/ 2021-09-15 13:13:10 -04:00
Mislav Marohnić
fb5a35568c Ensure original errors are wrapped with "%w" instead of "%v" 2021-09-15 13:58:41 +02:00
Jose Garcia
f5adc9e3a7 remove all deprecation messages and deprecated functionality 2021-09-13 10:58:00 -04:00
Jose Garcia
34e52ba24a deprecate subcommands 2021-09-10 14:11:50 -04:00
Alan Donovan
cbb8253544 consolidate survey functions 2021-09-09 11:57:37 -04:00
Alan Donovan
49ccdd3d21 use correct correct spelling of codespace 2021-09-01 17:26:26 -04:00
Alan Donovan
bbcf2dd321 spell product names (Codespaces, Live Share) correctly 2021-08-31 11:15:26 -04:00
Alan Donovan
38ff786a7d cmd/ghcs: style tweaks 2021-08-27 12:03:20 -04:00
Issy Long
28a3644a07 cmd/ghcs/delete: I learnt about strings.EqualFold - thanks, linter! 2021-08-18 18:15:15 +01:00
Issy Long
5af1cccb73 cmd/ghcs/delete: When matching repos to delete, standardize casing
- It was possible to delete Codespaces for repo `SomePerson/foo` but not
  `someperson/foo`, despite the fact that the GitHub APIs don't actually
  care about casing - `SomePerson` and `someperson` is the same account.
- This fixes that by lowercasing both the user-provided repo name, and
  the repository that is attached to the Codespace for a match.
- Fixes #76.
2021-08-18 18:11:11 +01:00
Mislav Marohnić
517aae2805 Merge remote-tracking branch 'origin' into docs 2021-08-17 14:42:09 +02:00
Mislav Marohnić
5e472bc0e5 Improve command descriptions and argument assertions 2021-08-16 23:24:11 +02:00
Mislav Marohnić
20d75f0ff9 Normalize logging, output, and error reporting
- Return errors as errors, not print to stdout and return nil
- Ensure errors and warnings are always written to stderr, not stout
- Do not print progress to stdout unless stdout is a terminal
2021-08-12 14:37:23 +02:00