Commit graph

407 commits

Author SHA1 Message Date
Mislav Marohnić
d853ce5bc9 Avoid resolving executable() until requested at runtime
This is to avoid hitting the filesystem and resolving symlinks
unnecessarily. The value of executable is just used conditionally by a
handful of commands.
2021-09-24 14:42:41 +02:00
Mislav Marohnić
75c1dfdf49 Fetch codespace by name directly if name argument given 2021-09-23 18:57:22 +02:00
Jose Garcia
f4396e8f1a Inline go-liveshare with history 2021-09-23 11:28:04 -04:00
Mislav Marohnić
e8212a80a9 Print delete failures as they occur 2021-09-23 17:14:25 +02:00
Mislav Marohnić
1232dba684 Merge remote-tracking branch 'origin' into raffo/delete-codespaces 2021-09-23 16:43:22 +02:00
Jose Garcia
fb12f4108f Merge pull request #181 from github/jg/poll-on-async-creation
ghcs create: poll for codespaces that are being retried by the server
2021-09-23 10:10:57 -04:00
Jose Garcia
4e0ac15fe0 Add buffer to channels to avoid goroutine leak 2021-09-22 15:10:47 -04:00
Jose Garcia
9a558bc58c Early return if polling is not required
- Add context to errors in poller
2021-09-22 15:03:12 -04:00
Mislav Marohnić
7a91ba5942 Print usage help when args given to "NoArgs" commands 2021-09-22 19:51:12 +02:00
Mislav Marohnić
a55f7af92c Correct wrong args constraints 2021-09-22 19:36:25 +02:00
Jose Garcia
208f1721b5 Rename ProvisionCodespaceParams 2021-09-22 13:21:02 -04:00
Jose Garcia
70a2ea2e6a PR Feedback
- Rename ProvisionCodespace -> CreateCodespace
- Rename createCodespace -> startCreate
- Additional docs/comments
- Simplify ProvisionCodespaceParams
2021-09-22 13:19:26 -04:00
Jose Garcia
d2d21996bc Move ProvisionCodespace to API client
- Make CreateCodespace private along with its errors
2021-09-22 11:49:41 -04: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
Jose Garcia
86717f14a1 Implement codespaces.Provision
- Move polling logic into the Provision function
- Document the behavior expected of callers when an ErrCreateAsyncRetry
  is returned
2021-09-22 09:09:09 -04:00
Jose Garcia
48e3473a95 PR Feedback
- Bring context.Timeout into the poller
- Accept duration and interval
- Other tidy up
2021-09-21 18:18:30 -04: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
Jose Garcia
861811baf0 Upgrade pkg name after merge 2021-09-21 14:02:05 -04:00
Jose Garcia
d5b03df406 Merge branch 'main' of github.com:github/ghcs into jg/poll-on-async-creation 2021-09-21 14:01:37 -04:00
Jose Garcia
323462ca5c Poll codespace on ErrCreateAsyncRetry error
- Introduce tests for the poller
- Attempt to fetch codespace for 2 mins
2021-09-21 12:37:11 -04:00
Mislav Marohnić
683d847dd2 Merge remote-tracking branch 'origin' into cli-migration 2021-09-21 17:38:41 +02:00
Jose Garcia
8a53c4369e Merge pull request #179 from github/jg/close-session
liveshare: close sessions
2021-09-21 10:14:22 -04:00
Jose Garcia
e8e914c220 PR Feedback
- Upgrade to go-liveshare v0.19.0
- Remove export helper method
- Use local implementation
2021-09-21 10:05:48 -04:00
Alan Donovan
0f88081bfa Merge pull request #178 from github/check-authorized-keys
ghcs ssh: check user has authorised SSH keys
2021-09-21 10:03:45 -04:00
Alan Donovan
d3d1ce726d do logs too 2021-09-21 10:02:55 -04:00
Jose Garcia
0b68aaab7e Return error on 202 responses
- Start implementing the retry/poll flow
2021-09-21 09:59:16 -04:00
Alan Donovan
f33d430500 Merge pull request #177 from github/delete-surplus-args
delete: reject positional arguments
2021-09-21 09:26:22 -04:00
Jose Garcia
7f682f9c39 Close Live Share sessions
- New helper method codespaces.CloseSession to be used using defer
- Upgrade to go-liveshare v0.17.0
2021-09-20 16:56:57 -04:00
Alan Donovan
dbb80d8b1e check for authorised SSH keys 2021-09-20 16:01:43 -04: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
Jose Garcia
85f79ed8e8 Merge pull request #159 from github/jg/ssh-cmd-flags
ghcs ssh: ssh flags and command support
2021-09-20 07:43:16 -04: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
Jose Garcia
82c19729d3 Wrap -- with optional argument brackets 2021-09-17 15:17:38 -04:00
Jose Garcia
47c6a5fce8 Update usage 2021-09-17 15:13:09 -04: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
Alan Donovan
1271e20b9b Merge pull request #169 from github/delete-no-list
delete -r: don't perform "list" operation
2021-09-17 11:28:53 -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
Alan Donovan
ce4bbe5bd8 list: show branch (not name) in branch column 2021-09-17 10:13:35 -04: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