DeleteCodespace deletes the given codespace.
(ctx context.Context, codespaceName string, orgName string, userName string)
| 1049 | |
| 1050 | // DeleteCodespace deletes the given codespace. |
| 1051 | func (a *API) DeleteCodespace(ctx context.Context, codespaceName string, orgName string, userName string) error { |
| 1052 | var deleteURL *safeurl.MutableSafeURL |
| 1053 | var spanName string |
| 1054 | var err error |
| 1055 | |
| 1056 | if orgName != "" && userName != "" { |
| 1057 | deleteURL, err = safeurl.JoinPathWithHostPrefix(a.githubAPI, "orgs", orgName, "members", userName, "codespaces", codespaceName) |
| 1058 | spanName = "/orgs/*/members/*/codespaces/*" |
| 1059 | } else { |
| 1060 | deleteURL, err = safeurl.JoinPathWithHostPrefix(a.githubAPI, "user", "codespaces", codespaceName) |
| 1061 | spanName = "/user/codespaces/*" |
| 1062 | } |
| 1063 | if err != nil { |
| 1064 | return err |
| 1065 | } |
| 1066 | |
| 1067 | req, err := http.NewRequest(http.MethodDelete, deleteURL.String(), nil) |
| 1068 | if err != nil { |
| 1069 | return fmt.Errorf("error creating request: %w", err) |
| 1070 | } |
| 1071 | |
| 1072 | a.setHeaders(req) |
| 1073 | resp, err := a.do(ctx, req, spanName) |
| 1074 | if err != nil { |
| 1075 | return fmt.Errorf("error making request: %w", err) |
| 1076 | } |
| 1077 | defer resp.Body.Close() |
| 1078 | |
| 1079 | if resp.StatusCode != http.StatusOK && resp.StatusCode != http.StatusAccepted { |
| 1080 | return api.HandleHTTPError(resp) |
| 1081 | } |
| 1082 | |
| 1083 | return nil |
| 1084 | } |
| 1085 | |
| 1086 | type DevContainerEntry struct { |
| 1087 | Path string `json:"path"` |
nothing calls this directly
no test coverage detected