@gitpod/gitpod-protocol 0.1.5-me-test04251.1 → 0.1.5-me-fixheader.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (319) hide show
  1. package/data/gitpod-schema.json +73 -115
  2. package/lib/accounting-protocol.d.ts +9 -1
  3. package/lib/accounting-protocol.d.ts.map +1 -1
  4. package/lib/accounting-protocol.js +13 -2
  5. package/lib/accounting-protocol.js.map +1 -1
  6. package/lib/admin-protocol.d.ts +8 -1
  7. package/lib/admin-protocol.d.ts.map +1 -1
  8. package/lib/admin-protocol.js +1 -1
  9. package/lib/admin-protocol.js.map +1 -1
  10. package/lib/analytics.d.ts +1 -1
  11. package/lib/analytics.js +1 -1
  12. package/lib/attribution.d.ts +23 -0
  13. package/lib/attribution.d.ts.map +1 -0
  14. package/lib/attribution.js +50 -0
  15. package/lib/attribution.js.map +1 -0
  16. package/lib/auth.d.ts +1 -1
  17. package/lib/auth.js +1 -1
  18. package/lib/billing-mode.d.ts +41 -0
  19. package/lib/billing-mode.d.ts.map +1 -0
  20. package/lib/billing-mode.js +44 -0
  21. package/lib/billing-mode.js.map +1 -0
  22. package/lib/blocked-repositories-protocol.d.ts +13 -0
  23. package/lib/blocked-repositories-protocol.d.ts.map +1 -0
  24. package/lib/blocked-repositories-protocol.js +8 -0
  25. package/lib/blocked-repositories-protocol.js.map +1 -0
  26. package/lib/context-url.d.ts +1 -1
  27. package/lib/context-url.js +2 -2
  28. package/lib/context-url.js.map +1 -1
  29. package/lib/context-url.spec.d.ts +1 -1
  30. package/lib/context-url.spec.js +1 -1
  31. package/lib/encryption/container-module.d.ts +1 -1
  32. package/lib/encryption/container-module.js +1 -1
  33. package/lib/encryption/encryption-engine.d.ts +1 -1
  34. package/lib/encryption/encryption-engine.d.ts.map +1 -1
  35. package/lib/encryption/encryption-engine.js +4 -4
  36. package/lib/encryption/encryption-engine.js.map +1 -1
  37. package/lib/encryption/encryption-engine.spec.d.ts +1 -1
  38. package/lib/encryption/encryption-engine.spec.js +2 -2
  39. package/lib/encryption/encryption-engine.spec.js.map +1 -1
  40. package/lib/encryption/encryption-service.d.ts +1 -1
  41. package/lib/encryption/encryption-service.js +1 -1
  42. package/lib/encryption/key-provider.d.ts +1 -1
  43. package/lib/encryption/key-provider.js +2 -2
  44. package/lib/encryption/key-provider.js.map +1 -1
  45. package/lib/env.d.ts +1 -1
  46. package/lib/env.js +1 -1
  47. package/lib/experiments/always-default.d.ts +8 -0
  48. package/lib/experiments/always-default.d.ts.map +1 -0
  49. package/lib/experiments/always-default.js +20 -0
  50. package/lib/experiments/always-default.js.map +1 -0
  51. package/lib/experiments/configcat-server.d.ts +10 -0
  52. package/lib/experiments/configcat-server.d.ts.map +1 -0
  53. package/lib/experiments/configcat-server.js +36 -0
  54. package/lib/experiments/configcat-server.js.map +1 -0
  55. package/lib/experiments/configcat.d.ts +21 -0
  56. package/lib/experiments/configcat.d.ts.map +1 -0
  57. package/lib/experiments/configcat.js +51 -0
  58. package/lib/experiments/configcat.js.map +1 -0
  59. package/lib/experiments/types.d.ts +22 -0
  60. package/lib/experiments/types.d.ts.map +1 -0
  61. package/lib/experiments/types.js +10 -0
  62. package/lib/experiments/types.js.map +1 -0
  63. package/lib/gitpod-file-parser.d.ts +1 -1
  64. package/lib/gitpod-file-parser.js +1 -1
  65. package/lib/gitpod-file-parser.spec.d.ts +1 -1
  66. package/lib/gitpod-file-parser.spec.js +1 -1
  67. package/lib/gitpod-service.d.ts +40 -22
  68. package/lib/gitpod-service.d.ts.map +1 -1
  69. package/lib/gitpod-service.js +22 -9
  70. package/lib/gitpod-service.js.map +1 -1
  71. package/lib/headless-workspace-log.d.ts +1 -1
  72. package/lib/headless-workspace-log.js +1 -1
  73. package/lib/ide-frontend-service.d.ts +1 -1
  74. package/lib/ide-frontend-service.js +1 -1
  75. package/lib/ide-protocol.d.ts +9 -1
  76. package/lib/ide-protocol.d.ts.map +1 -1
  77. package/lib/ide-protocol.js +1 -1
  78. package/lib/index.d.ts +2 -2
  79. package/lib/index.d.ts.map +1 -1
  80. package/lib/index.js +2 -2
  81. package/lib/index.js.map +1 -1
  82. package/lib/installation-admin-protocol.d.ts +4 -1
  83. package/lib/installation-admin-protocol.d.ts.map +1 -1
  84. package/lib/installation-admin-protocol.js +2 -1
  85. package/lib/installation-admin-protocol.js.map +1 -1
  86. package/lib/license-protocol.d.ts +8 -1
  87. package/lib/license-protocol.d.ts.map +1 -1
  88. package/lib/license-protocol.js +1 -1
  89. package/lib/license-protocol.js.map +1 -1
  90. package/lib/messaging/browser/window-connection.d.ts +1 -1
  91. package/lib/messaging/browser/window-connection.js +1 -1
  92. package/lib/messaging/client-call-metrics.d.ts +2 -18
  93. package/lib/messaging/client-call-metrics.d.ts.map +1 -1
  94. package/lib/messaging/client-call-metrics.js +2 -3
  95. package/lib/messaging/client-call-metrics.js.map +1 -1
  96. package/lib/messaging/error.d.ts +7 -2
  97. package/lib/messaging/error.d.ts.map +1 -1
  98. package/lib/messaging/error.js +14 -4
  99. package/lib/messaging/error.js.map +1 -1
  100. package/lib/oss-allowlist.d.ts +1 -1
  101. package/lib/oss-allowlist.js +1 -1
  102. package/lib/payment-protocol.d.ts +1 -1
  103. package/lib/payment-protocol.js +1 -1
  104. package/lib/permission.d.ts +1 -1
  105. package/lib/permission.js +1 -1
  106. package/lib/plans.d.ts +2 -1
  107. package/lib/plans.d.ts.map +1 -1
  108. package/lib/plans.js +7 -3
  109. package/lib/plans.js.map +1 -1
  110. package/lib/protocol.d.ts +112 -21
  111. package/lib/protocol.d.ts.map +1 -1
  112. package/lib/protocol.js +175 -12
  113. package/lib/protocol.js.map +1 -1
  114. package/lib/protocol.spec.d.ts +7 -0
  115. package/lib/protocol.spec.d.ts.map +1 -0
  116. package/lib/protocol.spec.js +127 -0
  117. package/lib/protocol.spec.js.map +1 -0
  118. package/lib/snapshot-url.d.ts +1 -1
  119. package/lib/snapshot-url.js +1 -1
  120. package/lib/snapshot-url.spec.d.ts +1 -1
  121. package/lib/snapshot-url.spec.js +1 -1
  122. package/lib/team-subscription-protocol.d.ts +18 -1
  123. package/lib/team-subscription-protocol.d.ts.map +1 -1
  124. package/lib/team-subscription-protocol.js +17 -2
  125. package/lib/team-subscription-protocol.js.map +1 -1
  126. package/lib/teams-projects-protocol.d.ts +15 -2
  127. package/lib/teams-projects-protocol.d.ts.map +1 -1
  128. package/lib/teams-projects-protocol.js +1 -1
  129. package/lib/teams-projects-protocol.js.map +1 -1
  130. package/lib/typings/globals.d.ts +1 -1
  131. package/lib/typings/globals.js +1 -1
  132. package/lib/usage.d.ts +61 -0
  133. package/lib/usage.d.ts.map +1 -0
  134. package/lib/usage.js +14 -0
  135. package/lib/usage.js.map +1 -0
  136. package/lib/util/analytics.d.ts +1 -1
  137. package/lib/util/analytics.js +1 -1
  138. package/lib/util/async-iterator.d.ts +1 -1
  139. package/lib/util/async-iterator.js +1 -1
  140. package/lib/util/cancelable.d.ts +1 -1
  141. package/lib/util/cancelable.js +1 -1
  142. package/lib/util/date-time.d.ts +1 -1
  143. package/lib/util/date-time.js +1 -1
  144. package/lib/util/debug-app.d.ts +25 -0
  145. package/lib/util/debug-app.d.ts.map +1 -0
  146. package/lib/util/debug-app.js +100 -0
  147. package/lib/util/debug-app.js.map +1 -0
  148. package/lib/util/deep-partial.d.ts +1 -1
  149. package/lib/util/deep-partial.js +1 -1
  150. package/lib/util/deferred.d.ts +1 -1
  151. package/lib/util/deferred.js +1 -1
  152. package/lib/util/garbage-collected-cache.d.ts +1 -1
  153. package/lib/util/garbage-collected-cache.d.ts.map +1 -1
  154. package/lib/util/garbage-collected-cache.js +6 -1
  155. package/lib/util/garbage-collected-cache.js.map +1 -1
  156. package/lib/util/generate-workspace-id.d.ts +1 -1
  157. package/lib/util/generate-workspace-id.js +1 -1
  158. package/lib/util/generate-workspace-id.spec.d.ts +1 -1
  159. package/lib/util/generate-workspace-id.spec.js +1 -1
  160. package/lib/util/gitpod-cookie.d.ts +1 -1
  161. package/lib/util/gitpod-cookie.js +1 -1
  162. package/lib/util/gitpod-host-url.d.ts +4 -1
  163. package/lib/util/gitpod-host-url.d.ts.map +1 -1
  164. package/lib/util/gitpod-host-url.js +19 -1
  165. package/lib/util/gitpod-host-url.js.map +1 -1
  166. package/lib/util/gitpod-host-url.spec.d.ts +1 -1
  167. package/lib/util/gitpod-host-url.spec.js +1 -1
  168. package/lib/util/grpc.d.ts +20 -1
  169. package/lib/util/grpc.d.ts.map +1 -1
  170. package/lib/util/grpc.js +74 -2
  171. package/lib/util/grpc.js.map +1 -1
  172. package/lib/util/jaeger-client-types.d.ts +1 -1
  173. package/lib/util/jaeger-client-types.js +1 -1
  174. package/lib/util/logging.d.ts +1 -1
  175. package/lib/util/logging.d.ts.map +1 -1
  176. package/lib/util/logging.js +9 -2
  177. package/lib/util/logging.js.map +1 -1
  178. package/lib/util/logging.spec.d.ts +7 -0
  179. package/lib/util/logging.spec.d.ts.map +1 -0
  180. package/lib/util/logging.spec.js +52 -0
  181. package/lib/util/logging.spec.js.map +1 -0
  182. package/lib/util/make-link.d.ts +1 -1
  183. package/lib/util/make-link.js +1 -1
  184. package/lib/util/nice-grpc.d.ts +9 -0
  185. package/lib/util/nice-grpc.d.ts.map +1 -0
  186. package/lib/util/nice-grpc.js +119 -0
  187. package/lib/util/nice-grpc.js.map +1 -0
  188. package/lib/util/parse-workspace-id.d.ts +1 -1
  189. package/lib/util/parse-workspace-id.js +1 -1
  190. package/lib/util/parse-workspace-id.spec.d.ts +1 -1
  191. package/lib/util/parse-workspace-id.spec.js +1 -1
  192. package/lib/util/queue.d.ts +1 -1
  193. package/lib/util/queue.js +1 -1
  194. package/lib/util/queue.spec.d.ts +1 -1
  195. package/lib/util/queue.spec.js +1 -1
  196. package/lib/util/repeat.d.ts +1 -1
  197. package/lib/util/repeat.js +1 -1
  198. package/lib/util/semaphore.d.ts +1 -1
  199. package/lib/util/semaphore.js +1 -1
  200. package/lib/util/skip-if.d.ts +1 -1
  201. package/lib/util/skip-if.js +1 -1
  202. package/lib/util/timeutil.d.ts +3 -1
  203. package/lib/util/timeutil.d.ts.map +1 -1
  204. package/lib/util/timeutil.js +14 -2
  205. package/lib/util/timeutil.js.map +1 -1
  206. package/lib/util/timeutil.spec.d.ts +3 -1
  207. package/lib/util/timeutil.spec.d.ts.map +1 -1
  208. package/lib/util/timeutil.spec.js +35 -1
  209. package/lib/util/timeutil.spec.js.map +1 -1
  210. package/lib/util/tracing.d.ts +1 -1
  211. package/lib/util/tracing.js +1 -1
  212. package/lib/util/tracing.spec.d.ts +1 -1
  213. package/lib/util/tracing.spec.js +1 -1
  214. package/lib/util/workspace-port-authentication.d.ts +1 -1
  215. package/lib/util/workspace-port-authentication.js +1 -1
  216. package/lib/webhook-event.d.ts +44 -0
  217. package/lib/webhook-event.d.ts.map +1 -0
  218. package/lib/webhook-event.js +8 -0
  219. package/lib/webhook-event.js.map +1 -0
  220. package/lib/workspace-class.d.ts +14 -0
  221. package/lib/workspace-class.d.ts.map +1 -0
  222. package/lib/workspace-class.js +8 -0
  223. package/lib/workspace-class.js.map +1 -0
  224. package/lib/workspace-cluster.d.ts +7 -8
  225. package/lib/workspace-cluster.d.ts.map +1 -1
  226. package/lib/workspace-cluster.js +1 -1
  227. package/lib/workspace-cluster.js.map +1 -1
  228. package/lib/workspace-instance.d.ts +14 -2
  229. package/lib/workspace-instance.d.ts.map +1 -1
  230. package/lib/workspace-instance.js +1 -1
  231. package/lib/wsready.d.ts +1 -1
  232. package/lib/wsready.js +2 -2
  233. package/package.json +14 -6
  234. package/pkg-yarn.lock +10 -5
  235. package/provenance-bundle.jsonl +1 -1
  236. package/src/accounting-protocol.ts +14 -1
  237. package/src/admin-protocol.ts +11 -1
  238. package/src/analytics.ts +1 -1
  239. package/src/attribution.ts +59 -0
  240. package/src/auth.ts +1 -1
  241. package/src/billing-mode.ts +77 -0
  242. package/src/blocked-repositories-protocol.ts +13 -0
  243. package/src/context-url.spec.ts +1 -1
  244. package/src/context-url.ts +2 -2
  245. package/src/encryption/container-module.ts +1 -1
  246. package/src/encryption/encryption-engine.spec.ts +2 -2
  247. package/src/encryption/encryption-engine.ts +8 -4
  248. package/src/encryption/encryption-service.ts +1 -1
  249. package/src/encryption/key-provider.ts +2 -2
  250. package/src/env.ts +1 -1
  251. package/src/experiments/always-default.ts +24 -0
  252. package/src/experiments/configcat-server.ts +41 -0
  253. package/src/experiments/configcat.ts +56 -0
  254. package/src/experiments/types.ts +34 -0
  255. package/src/gitpod-file-parser.spec.ts +1 -1
  256. package/src/gitpod-file-parser.ts +1 -1
  257. package/src/gitpod-service.ts +76 -30
  258. package/src/headless-workspace-log.ts +1 -1
  259. package/src/ide-frontend-service.ts +1 -1
  260. package/src/ide-protocol.ts +11 -1
  261. package/src/index.ts +2 -2
  262. package/src/installation-admin-protocol.ts +4 -1
  263. package/src/license-protocol.ts +8 -1
  264. package/src/messaging/browser/window-connection.ts +1 -1
  265. package/src/messaging/client-call-metrics.ts +2 -21
  266. package/src/messaging/error.ts +20 -5
  267. package/src/oss-allowlist.ts +1 -1
  268. package/src/payment-protocol.ts +1 -1
  269. package/src/permission.ts +1 -1
  270. package/src/plans.ts +7 -3
  271. package/src/protocol.spec.ts +97 -0
  272. package/src/protocol.ts +270 -27
  273. package/src/snapshot-url.spec.ts +1 -1
  274. package/src/snapshot-url.ts +1 -1
  275. package/src/team-subscription-protocol.ts +28 -1
  276. package/src/teams-projects-protocol.ts +16 -2
  277. package/src/typings/globals.ts +1 -1
  278. package/src/usage.ts +71 -0
  279. package/src/util/analytics.ts +1 -1
  280. package/src/util/async-iterator.ts +1 -1
  281. package/src/util/cancelable.ts +1 -1
  282. package/src/util/date-time.ts +1 -1
  283. package/src/util/debug-app.ts +81 -0
  284. package/src/util/deep-partial.ts +1 -1
  285. package/src/util/deferred.ts +1 -1
  286. package/src/util/garbage-collected-cache.ts +6 -1
  287. package/src/util/generate-workspace-id.spec.ts +1 -1
  288. package/src/util/generate-workspace-id.ts +1 -1
  289. package/src/util/gitpod-cookie.ts +1 -1
  290. package/src/util/gitpod-host-url.spec.ts +1 -1
  291. package/src/util/gitpod-host-url.ts +22 -1
  292. package/src/util/grpc.ts +90 -1
  293. package/src/util/jaeger-client-types.ts +1 -1
  294. package/src/util/logging.spec.ts +23 -0
  295. package/src/util/logging.ts +12 -3
  296. package/src/util/make-link.ts +1 -1
  297. package/src/util/nice-grpc.ts +93 -0
  298. package/src/util/parse-workspace-id.spec.ts +1 -1
  299. package/src/util/parse-workspace-id.ts +1 -1
  300. package/src/util/queue.spec.ts +1 -1
  301. package/src/util/queue.ts +1 -1
  302. package/src/util/repeat.ts +1 -1
  303. package/src/util/semaphore.ts +1 -1
  304. package/src/util/skip-if.ts +1 -1
  305. package/src/util/timeutil.spec.ts +29 -2
  306. package/src/util/timeutil.ts +13 -1
  307. package/src/util/tracing.spec.ts +1 -1
  308. package/src/util/tracing.ts +1 -1
  309. package/src/util/workspace-port-authentication.ts +1 -1
  310. package/src/webhook-event.ts +55 -0
  311. package/src/workspace-class.ts +14 -0
  312. package/src/workspace-cluster.ts +7 -5
  313. package/src/workspace-instance.ts +26 -2
  314. package/src/wsready.ts +2 -2
  315. package/lib/email-protocol.d.ts +0 -49
  316. package/lib/email-protocol.d.ts.map +0 -1
  317. package/lib/email-protocol.js +0 -28
  318. package/lib/email-protocol.js.map +0 -1
  319. package/src/email-protocol.ts +0 -65
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Copyright (c) 2021 Gitpod GmbH. All rights reserved.
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
4
+ * See License.AGPL.txt in the project root for license information.
5
5
  */
6
6
 
7
7
  import { suite, test } from "mocha-typescript";
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
4
+ * See License.AGPL.txt in the project root for license information.
5
5
  */
6
6
 
7
7
  import * as opentracing from "opentracing";
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
4
+ * See License.AGPL.txt in the project root for license information.
5
5
  */
6
6
 
7
7
  /**
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Copyright (c) 2022 Gitpod GmbH. All rights reserved.
3
+ * Licensed under the GNU Affero General Public License (AGPL).
4
+ * See License.AGPL.txt in the project root for license information.
5
+ */
6
+
7
+ export interface WebhookEvent {
8
+ id: string;
9
+ creationTime: string;
10
+ type: "push" | string;
11
+
12
+ /**
13
+ * Typically the webhook installer is referenced here.
14
+ */
15
+ authorizedUserId?: string;
16
+
17
+ /**
18
+ * webhook event's payload
19
+ */
20
+ rawEvent: string;
21
+
22
+ /**
23
+ * The general status of the received webhook event.
24
+ */
25
+ status: WebhookEvent.Status;
26
+
27
+ /**
28
+ * Optional message to help understand errors with handling events.
29
+ */
30
+ message?: string;
31
+
32
+ /**
33
+ * If the webhook event is considered to trigger a prebuild, the `prebuildStatus`
34
+ * contains a more specific status.
35
+ */
36
+ prebuildStatus?: WebhookEvent.PrebuildStatus;
37
+
38
+ /**
39
+ * If `prebuildStatus` is `prebuild_triggered` this points to a prebuild.
40
+ */
41
+ prebuildId?: string;
42
+
43
+ projectId?: string;
44
+
45
+ cloneUrl?: string;
46
+
47
+ branch?: string;
48
+
49
+ commit?: string;
50
+ }
51
+
52
+ export namespace WebhookEvent {
53
+ export type Status = "received" | "dismissed_unauthorized" | "ignored" | "processed";
54
+ export type PrebuildStatus = "ignored_unconfigured" | "prebuild_trigger_failed" | "prebuild_triggered";
55
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright (c) 2022 Gitpod GmbH. All rights reserved.
3
+ * Licensed under the GNU Affero General Public License (AGPL).
4
+ * See License.AGPL.txt in the project root for license information.
5
+ */
6
+
7
+ export interface SupportedWorkspaceClass {
8
+ id: string;
9
+ category: string;
10
+ displayName: string;
11
+ description: string;
12
+ powerups: number;
13
+ isSelected: boolean;
14
+ }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
4
+ * See License.AGPL.txt in the project root for license information.
5
5
  */
6
6
 
7
7
  import * as fs from "fs";
@@ -15,6 +15,10 @@ export interface WorkspaceCluster {
15
15
  // Must be identical to the installationShortname of the cluster it represents!
16
16
  name: string;
17
17
 
18
+ // The name of the application cluster to which this cluster should be registered.
19
+ // The name can be at most 60 characters.
20
+ applicationCluster: string;
21
+
18
22
  // URL of the cluster's ws-manager API
19
23
  url: string;
20
24
 
@@ -56,12 +60,10 @@ export type WorkspaceManagerConnectionInfo = Pick<WorkspaceCluster, "name" | "ur
56
60
  export type AdmissionConstraint =
57
61
  | AdmissionConstraintFeaturePreview
58
62
  | AdmissionConstraintHasPermission
59
- | AdmissionConstraintHasUserLevel
60
- | AdmissionConstraintHasMoreResources;
63
+ | AdmissionConstraintHasClass;
61
64
  export type AdmissionConstraintFeaturePreview = { type: "has-feature-preview" };
62
65
  export type AdmissionConstraintHasPermission = { type: "has-permission"; permission: PermissionName };
63
- export type AdmissionConstraintHasUserLevel = { type: "has-user-level"; level: string };
64
- export type AdmissionConstraintHasMoreResources = { type: "has-more-resources" };
66
+ export type AdmissionConstraintHasClass = { type: "has-class"; id: string; displayName: string };
65
67
 
66
68
  export namespace AdmissionConstraint {
67
69
  export function is(o: any): o is AdmissionConstraint {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
4
+ * See License.AGPL.txt in the project root for license information.
5
5
  */
6
6
 
7
7
  import { NamedWorkspaceFeatureFlag } from "./protocol";
@@ -56,10 +56,27 @@ export interface WorkspaceInstance {
56
56
  * Contains information about the image build, if there was any
57
57
  */
58
58
  imageBuildInfo?: ImageBuildInfo;
59
+
60
+ /**
61
+ * workspace class, also known as workspace size, determines the type of
62
+ * resources that are provided to the workspace.
63
+ */
64
+ workspaceClass?: string;
65
+
66
+ /**
67
+ * Identifies the team or user to which this instance's runtime should be attributed to
68
+ * (e.g. for usage analytics or billing purposes).
69
+ */
70
+ usageAttributionId?: string;
59
71
  }
60
72
 
61
73
  // WorkspaceInstanceStatus describes the current state of a workspace instance
62
74
  export interface WorkspaceInstanceStatus {
75
+ // version is the current version of the workspace instance status
76
+ // Note: consider this value opague. The only guarantee given is that it imposes
77
+ // a partial order on status updates, i.e. a.version > b.version -> a newer than b.
78
+ version?: number;
79
+
63
80
  // phase describes a high-level state of the workspace instance
64
81
  phase: WorkspaceInstancePhase;
65
82
 
@@ -98,9 +115,13 @@ export type WorkspaceInstancePhase =
98
115
  | "unknown"
99
116
 
100
117
  // Preparing means that we haven't actually started the workspace instance just yet, but rather
101
- // are still preparing for launch. This means we're building the Docker image for the workspace.
118
+ // are still preparing for launch.
102
119
  | "preparing"
103
120
 
121
+ // Building means that we are building the Docker image for the workspace. A workspace will enter this phase only
122
+ // if an image build is required for that workspace.
123
+ | "building"
124
+
104
125
  // Pending means the workspace does not yet consume resources in the cluster, but rather is looking for
105
126
  // some space within the cluster. If for example the cluster needs to scale up to accomodate the
106
127
  // workspace, the workspace will be in Pending state until that happened.
@@ -225,6 +246,9 @@ export interface WorkspaceInstanceConfiguration {
225
246
  // desktopIdeImage is the ref of the desktop IDE image this instance uses.
226
247
  desktopIdeImage?: string;
227
248
 
249
+ // desktopIdePluginImage is the ref of the desktop IDE plugin image this instance uses.
250
+ desktopIdePluginImage?: string;
251
+
228
252
  // supervisorImage is the ref of the supervisor image this instance uses.
229
253
  supervisorImage?: string;
230
254
 
package/src/wsready.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Copyright (c) 2022 Gitpod GmbH. All rights reserved.
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
4
+ * See License.AGPL.txt in the project root for license information.
5
5
  */
6
6
 
7
- // generated using github.com/32leaves/bel on 2022-03-29 17:08:06.113873917 +0000 UTC m=+0.010035965
7
+ // generated using github.com/32leaves/bel on 2022-10-10 21:41:56.018177383 +0000 UTC m=+0.010324839
8
8
  // DO NOT MODIFY
9
9
 
10
10
  export enum WorkspaceInitSource {
@@ -1,49 +0,0 @@
1
- /**
2
- * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
3
- * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
5
- */
6
- export declare type EMailState = "scheduledInternal" | "scheduledSendgrid";
7
- export interface EMailStatus {
8
- /** The time the email entry was inserted into the DB */
9
- scheduledInternalTime: string;
10
- /** The time the email state transitioned to "scheduledSendgrid" */
11
- scheduledSendgridTime?: string;
12
- /** In case of any errors during sending with Sendgrid it gets noted here */
13
- error?: string;
14
- }
15
- export declare namespace EMailStatus {
16
- function getState(status: EMailStatus): EMailState;
17
- }
18
- export interface EmailAddress {
19
- name?: string;
20
- email: string;
21
- }
22
- export interface EMailParameters {
23
- /** undefined means default from template */
24
- subject?: string;
25
- /** The sender address */
26
- senderAddress: string | EmailAddress;
27
- /** The replyTo address */
28
- replyToAddress?: string | EmailAddress;
29
- /** The SendGrid template id */
30
- templateId: string;
31
- /** The parameters for the SendGrid template */
32
- templateParams: {};
33
- }
34
- export declare type EMail = {
35
- /** The unique id of this email (uuid/v4 for now) */
36
- uid: string;
37
- /** The id of the user this email was sent to */
38
- userId: string;
39
- /** The address this email was sent to */
40
- recipientAddress: string;
41
- /** Which campaign scheduled this email */
42
- campaignId: string;
43
- /** The parameters this email was sent with (template id, template params, etc) */
44
- params: EMailParameters;
45
- } & EMailStatus;
46
- export declare namespace EMail {
47
- const create: (ts: Omit<EMail, "uid">) => EMail;
48
- }
49
- //# sourceMappingURL=email-protocol.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"email-protocol.d.ts","sourceRoot":"","sources":["../src/email-protocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,oBAAY,UAAU,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAEnE,MAAM,WAAW,WAAW;IACxB,wDAAwD;IACxD,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mEAAmE;IACnE,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AACD,yBAAiB,WAAW,CAAC;IACzB,SAAgB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,UAAU,CAKxD;CACJ;AAED,MAAM,WAAW,YAAY;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC5B,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,aAAa,EAAE,MAAM,GAAG,YAAY,CAAC;IACrC,0BAA0B;IAC1B,cAAc,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IACvC,+BAA+B;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,cAAc,EAAE,EAAE,CAAC;CACtB;AAED,oBAAY,KAAK,GAAG;IAChB,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAC;IACZ,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,gBAAgB,EAAE,MAAM,CAAC;IACzB,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,MAAM,EAAE,eAAe,CAAC;CAC3B,GAAG,WAAW,CAAC;AAEhB,yBAAiB,KAAK,CAAC;IACZ,MAAM,MAAM,OAAQ,KAAK,KAAK,EAAE,KAAK,CAAC,KAAG,KAI/C,CAAC;CACL"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- /**
3
- * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
4
- * Licensed under the GNU Affero General Public License (AGPL).
5
- * See License-AGPL.txt in the project root for license information.
6
- */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.EMail = exports.EMailStatus = void 0;
9
- const uuid_1 = require("uuid");
10
- var EMailStatus;
11
- (function (EMailStatus) {
12
- function getState(status) {
13
- if (status.scheduledSendgridTime) {
14
- return "scheduledSendgrid";
15
- }
16
- return "scheduledInternal";
17
- }
18
- EMailStatus.getState = getState;
19
- })(EMailStatus = exports.EMailStatus || (exports.EMailStatus = {}));
20
- var EMail;
21
- (function (EMail) {
22
- EMail.create = (ts) => {
23
- const withId = ts;
24
- withId.uid = (0, uuid_1.v4)();
25
- return withId;
26
- };
27
- })(EMail = exports.EMail || (exports.EMail = {}));
28
- //# sourceMappingURL=email-protocol.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"email-protocol.js","sourceRoot":"","sources":["../src/email-protocol.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,+BAAoC;AAYpC,IAAiB,WAAW,CAO3B;AAPD,WAAiB,WAAW;IACxB,SAAgB,QAAQ,CAAC,MAAmB;QACxC,IAAI,MAAM,CAAC,qBAAqB,EAAE;YAC9B,OAAO,mBAAmB,CAAC;SAC9B;QACD,OAAO,mBAAmB,CAAC;IAC/B,CAAC;IALe,oBAAQ,WAKvB,CAAA;AACL,CAAC,EAPgB,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAO3B;AAiCD,IAAiB,KAAK,CAMrB;AAND,WAAiB,KAAK;IACL,YAAM,GAAG,CAAC,EAAsB,EAAS,EAAE;QACpD,MAAM,MAAM,GAAG,EAAW,CAAC;QAC3B,MAAM,CAAC,GAAG,GAAG,IAAA,SAAM,GAAE,CAAC;QACtB,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;AACN,CAAC,EANgB,KAAK,GAAL,aAAK,KAAL,aAAK,QAMrB"}
@@ -1,65 +0,0 @@
1
- /**
2
- * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
3
- * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
5
- */
6
-
7
- import { v4 as uuidv4 } from "uuid";
8
-
9
- export type EMailState = "scheduledInternal" | "scheduledSendgrid";
10
-
11
- export interface EMailStatus {
12
- /** The time the email entry was inserted into the DB */
13
- scheduledInternalTime: string;
14
- /** The time the email state transitioned to "scheduledSendgrid" */
15
- scheduledSendgridTime?: string;
16
- /** In case of any errors during sending with Sendgrid it gets noted here */
17
- error?: string;
18
- }
19
- export namespace EMailStatus {
20
- export function getState(status: EMailStatus): EMailState {
21
- if (status.scheduledSendgridTime) {
22
- return "scheduledSendgrid";
23
- }
24
- return "scheduledInternal";
25
- }
26
- }
27
-
28
- export interface EmailAddress {
29
- name?: string;
30
- email: string;
31
- }
32
-
33
- export interface EMailParameters {
34
- /** undefined means default from template */
35
- subject?: string;
36
- /** The sender address */
37
- senderAddress: string | EmailAddress;
38
- /** The replyTo address */
39
- replyToAddress?: string | EmailAddress;
40
- /** The SendGrid template id */
41
- templateId: string;
42
- /** The parameters for the SendGrid template */
43
- templateParams: {};
44
- }
45
-
46
- export type EMail = {
47
- /** The unique id of this email (uuid/v4 for now) */
48
- uid: string;
49
- /** The id of the user this email was sent to */
50
- userId: string;
51
- /** The address this email was sent to */
52
- recipientAddress: string;
53
- /** Which campaign scheduled this email */
54
- campaignId: string;
55
- /** The parameters this email was sent with (template id, template params, etc) */
56
- params: EMailParameters;
57
- } & EMailStatus;
58
-
59
- export namespace EMail {
60
- export const create = (ts: Omit<EMail, "uid">): EMail => {
61
- const withId = ts as EMail;
62
- withId.uid = uuidv4();
63
- return withId;
64
- };
65
- }