@gitpod/gitpod-protocol 0.1.5-procmount.0 → 0.1.5-protected-secrets.0
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.
- package/data/gitpod-schema.json +149 -29
- package/lib/accounting-protocol.d.ts +163 -0
- package/lib/accounting-protocol.d.ts.map +1 -0
- package/lib/accounting-protocol.js +111 -0
- package/lib/accounting-protocol.js.map +1 -0
- package/lib/admin-protocol.d.ts +39 -4
- package/lib/admin-protocol.d.ts.map +1 -1
- package/lib/admin-protocol.js +15 -0
- package/lib/admin-protocol.js.map +1 -1
- package/lib/analytics.d.ts +44 -0
- package/lib/analytics.d.ts.map +1 -0
- package/lib/analytics.js +10 -0
- package/lib/analytics.js.map +1 -0
- package/lib/attribution.d.ts +23 -0
- package/lib/attribution.d.ts.map +1 -0
- package/lib/attribution.js +50 -0
- package/lib/attribution.js.map +1 -0
- package/lib/auth.d.ts.map +1 -1
- package/lib/billing-mode.d.ts +43 -0
- package/lib/billing-mode.d.ts.map +1 -0
- package/lib/billing-mode.js +44 -0
- package/lib/billing-mode.js.map +1 -0
- package/lib/blocked-repositories-protocol.d.ts +13 -0
- package/lib/blocked-repositories-protocol.d.ts.map +1 -0
- package/lib/blocked-repositories-protocol.js +8 -0
- package/lib/blocked-repositories-protocol.js.map +1 -0
- package/lib/context-url.d.ts +31 -0
- package/lib/context-url.d.ts.map +1 -0
- package/lib/context-url.js +102 -0
- package/lib/context-url.js.map +1 -0
- package/lib/context-url.spec.d.ts +14 -0
- package/lib/context-url.spec.d.ts.map +1 -0
- package/lib/context-url.spec.js +109 -0
- package/lib/context-url.spec.js.map +1 -0
- package/lib/encryption/container-module.d.ts.map +1 -1
- package/lib/encryption/container-module.js +5 -4
- package/lib/encryption/container-module.js.map +1 -1
- package/lib/encryption/encryption-engine.d.ts.map +1 -1
- package/lib/encryption/encryption-engine.js +25 -26
- package/lib/encryption/encryption-engine.js.map +1 -1
- package/lib/encryption/encryption-engine.spec.d.ts.map +1 -1
- package/lib/encryption/encryption-engine.spec.js +29 -37
- package/lib/encryption/encryption-engine.spec.js.map +1 -1
- package/lib/encryption/encryption-service.d.ts.map +1 -1
- package/lib/encryption/encryption-service.js +30 -44
- package/lib/encryption/encryption-service.js.map +1 -1
- package/lib/encryption/key-provider.d.ts.map +1 -1
- package/lib/encryption/key-provider.js +31 -38
- package/lib/encryption/key-provider.js.map +1 -1
- package/lib/env.d.ts +0 -6
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +7 -27
- package/lib/env.js.map +1 -1
- package/lib/experiments/always-default.d.ts +8 -0
- package/lib/experiments/always-default.d.ts.map +1 -0
- package/lib/experiments/always-default.js +20 -0
- package/lib/experiments/always-default.js.map +1 -0
- package/lib/experiments/configcat-server.d.ts +10 -0
- package/lib/experiments/configcat-server.d.ts.map +1 -0
- package/lib/experiments/configcat-server.js +36 -0
- package/lib/experiments/configcat-server.js.map +1 -0
- package/lib/experiments/configcat.d.ts +21 -0
- package/lib/experiments/configcat.d.ts.map +1 -0
- package/lib/experiments/configcat.js +51 -0
- package/lib/experiments/configcat.js.map +1 -0
- package/lib/experiments/types.d.ts +22 -0
- package/lib/experiments/types.d.ts.map +1 -0
- package/lib/experiments/types.js +10 -0
- package/lib/experiments/types.js.map +1 -0
- package/lib/gitpod-file-parser.d.ts.map +1 -1
- package/lib/gitpod-file-parser.js +26 -42
- package/lib/gitpod-file-parser.js.map +1 -1
- package/lib/gitpod-file-parser.spec.js +145 -142
- package/lib/gitpod-file-parser.spec.js.map +1 -1
- package/lib/gitpod-service.d.ts +195 -39
- package/lib/gitpod-service.d.ts.map +1 -1
- package/lib/gitpod-service.js +204 -271
- package/lib/gitpod-service.js.map +1 -1
- package/lib/headless-workspace-log.d.ts +9 -11
- package/lib/headless-workspace-log.d.ts.map +1 -1
- package/lib/headless-workspace-log.js +6 -8
- package/lib/headless-workspace-log.js.map +1 -1
- package/lib/ide-frontend-service.d.ts +5 -1
- package/lib/ide-frontend-service.d.ts.map +1 -1
- package/lib/ide-protocol.d.ts +113 -0
- package/lib/ide-protocol.d.ts.map +1 -0
- package/lib/{util/without.js → ide-protocol.js} +2 -2
- package/lib/ide-protocol.js.map +1 -0
- package/lib/index.d.ts +16 -10
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -2
- package/lib/index.js.map +1 -1
- package/lib/installation-admin-protocol.d.ts +30 -0
- package/lib/installation-admin-protocol.d.ts.map +1 -0
- package/lib/installation-admin-protocol.js +31 -0
- package/lib/installation-admin-protocol.js.map +1 -0
- package/lib/license-protocol.d.ts +7 -0
- package/lib/license-protocol.d.ts.map +1 -1
- package/lib/license-protocol.js.map +1 -1
- package/lib/messaging/browser/connection.d.ts +5 -3
- package/lib/messaging/browser/connection.d.ts.map +1 -1
- package/lib/messaging/browser/connection.js +184 -34
- package/lib/messaging/browser/connection.js.map +1 -1
- package/lib/messaging/browser/window-connection.d.ts +4 -4
- package/lib/messaging/browser/window-connection.d.ts.map +1 -1
- package/lib/messaging/browser/window-connection.js +42 -59
- package/lib/messaging/browser/window-connection.js.map +1 -1
- package/lib/messaging/client-call-metrics.d.ts +19 -0
- package/lib/messaging/client-call-metrics.d.ts.map +1 -0
- package/lib/messaging/client-call-metrics.js +82 -0
- package/lib/messaging/client-call-metrics.js.map +1 -0
- package/lib/messaging/error.d.ts +11 -2
- package/lib/messaging/error.d.ts.map +1 -1
- package/lib/messaging/error.js +22 -4
- package/lib/messaging/error.js.map +1 -1
- package/lib/messaging/handler.d.ts +10 -0
- package/lib/messaging/handler.d.ts.map +1 -1
- package/lib/messaging/handler.js +1 -1
- package/lib/messaging/node/connection.d.ts +1 -17
- package/lib/messaging/node/connection.d.ts.map +1 -1
- package/lib/messaging/node/connection.js +24 -60
- package/lib/messaging/node/connection.js.map +1 -1
- package/lib/messaging/proxy-factory.d.ts +3 -1
- package/lib/messaging/proxy-factory.d.ts.map +1 -1
- package/lib/messaging/proxy-factory.js +75 -162
- package/lib/messaging/proxy-factory.js.map +1 -1
- package/lib/oss-allowlist.d.ts +14 -0
- package/lib/oss-allowlist.d.ts.map +1 -0
- package/lib/oss-allowlist.js +8 -0
- package/lib/oss-allowlist.js.map +1 -0
- package/lib/payment-protocol.d.ts +18 -0
- package/lib/payment-protocol.d.ts.map +1 -0
- package/lib/payment-protocol.js +13 -0
- package/lib/payment-protocol.js.map +1 -0
- package/lib/permission.d.ts +10 -3
- package/lib/permission.d.ts.map +1 -1
- package/lib/permission.js +41 -31
- package/lib/permission.js.map +1 -1
- package/lib/plans.d.ts +211 -0
- package/lib/plans.d.ts.map +1 -0
- package/lib/plans.js +609 -0
- package/lib/plans.js.map +1 -0
- package/lib/protocol.d.ts +285 -95
- package/lib/protocol.d.ts.map +1 -1
- package/lib/protocol.js +383 -206
- package/lib/protocol.js.map +1 -1
- package/{src/util/without.ts → lib/protocol.spec.d.ts} +2 -3
- package/lib/protocol.spec.d.ts.map +1 -0
- package/lib/protocol.spec.js +127 -0
- package/lib/protocol.spec.js.map +1 -0
- package/lib/snapshot-url.d.ts +14 -0
- package/lib/snapshot-url.d.ts.map +1 -0
- package/lib/snapshot-url.js +26 -0
- package/lib/snapshot-url.js.map +1 -0
- package/{src/theia-plugins.ts → lib/snapshot-url.spec.d.ts} +2 -6
- package/lib/snapshot-url.spec.d.ts.map +1 -0
- package/lib/snapshot-url.spec.js +41 -0
- package/lib/snapshot-url.spec.js.map +1 -0
- package/lib/team-subscription-protocol.d.ts +92 -0
- package/lib/team-subscription-protocol.d.ts.map +1 -0
- package/lib/team-subscription-protocol.js +78 -0
- package/lib/team-subscription-protocol.js.map +1 -0
- package/lib/teams-projects-protocol.d.ts +130 -0
- package/lib/teams-projects-protocol.d.ts.map +1 -0
- package/lib/teams-projects-protocol.js +30 -0
- package/lib/teams-projects-protocol.js.map +1 -0
- package/lib/typings/globals.d.ts +2 -2
- package/lib/typings/globals.d.ts.map +1 -1
- package/lib/usage.d.ts +61 -0
- package/lib/usage.d.ts.map +1 -0
- package/lib/usage.js +14 -0
- package/lib/usage.js.map +1 -0
- package/lib/util/analytics.d.ts +8 -0
- package/lib/util/analytics.d.ts.map +1 -0
- package/lib/util/analytics.js +88 -0
- package/lib/util/analytics.js.map +1 -0
- package/lib/util/async-iterator.d.ts.map +1 -1
- package/lib/util/async-iterator.js +57 -135
- package/lib/util/async-iterator.js.map +1 -1
- package/lib/util/cancelable.js +17 -59
- package/lib/util/cancelable.js.map +1 -1
- package/lib/util/date-time.js +11 -11
- package/lib/util/date-time.js.map +1 -1
- package/lib/util/debug-app.d.ts +25 -0
- package/lib/util/debug-app.d.ts.map +1 -0
- package/lib/util/debug-app.js +100 -0
- package/lib/util/debug-app.js.map +1 -0
- package/lib/util/deferred.js +10 -12
- package/lib/util/deferred.js.map +1 -1
- package/lib/util/disposable.d.ts.map +1 -1
- package/lib/util/disposable.js +27 -40
- package/lib/util/disposable.js.map +1 -1
- package/lib/util/event.d.ts.map +1 -1
- package/lib/util/event.js +63 -77
- package/lib/util/event.js.map +1 -1
- package/lib/util/garbage-collected-cache.d.ts +1 -0
- package/lib/util/garbage-collected-cache.d.ts.map +1 -1
- package/lib/util/garbage-collected-cache.js +32 -47
- package/lib/util/garbage-collected-cache.js.map +1 -1
- package/lib/util/generate-workspace-id.d.ts +6 -1
- package/lib/util/generate-workspace-id.d.ts.map +1 -1
- package/lib/util/generate-workspace-id.js +469 -502
- package/lib/util/generate-workspace-id.js.map +1 -1
- package/lib/util/generate-workspace-id.spec.js +68 -78
- package/lib/util/generate-workspace-id.spec.js.map +1 -1
- package/lib/util/gitpod-cookie.d.ts +20 -0
- package/lib/util/gitpod-cookie.d.ts.map +1 -0
- package/lib/util/gitpod-cookie.js +41 -0
- package/lib/util/gitpod-cookie.js.map +1 -0
- package/lib/util/gitpod-host-url.d.ts +4 -2
- package/lib/util/gitpod-host-url.d.ts.map +1 -1
- package/lib/util/gitpod-host-url.js +126 -109
- package/lib/util/gitpod-host-url.js.map +1 -1
- package/lib/util/gitpod-host-url.spec.d.ts +7 -1
- package/lib/util/gitpod-host-url.spec.d.ts.map +1 -1
- package/lib/util/gitpod-host-url.spec.js +113 -31
- package/lib/util/gitpod-host-url.spec.js.map +1 -1
- package/lib/util/grpc.d.ts +34 -0
- package/lib/util/grpc.d.ts.map +1 -0
- package/lib/util/grpc.js +90 -0
- package/lib/util/grpc.js.map +1 -0
- package/lib/util/jaeger-client-types.d.ts +68 -0
- package/lib/util/jaeger-client-types.d.ts.map +1 -0
- package/lib/{theia-plugins.js → util/jaeger-client-types.js} +1 -1
- package/lib/util/jaeger-client-types.js.map +1 -0
- package/lib/util/logging.d.ts +49 -33
- package/lib/util/logging.d.ts.map +1 -1
- package/lib/util/logging.js +132 -129
- package/lib/util/logging.js.map +1 -1
- package/lib/util/logging.spec.d.ts +7 -0
- package/lib/util/logging.spec.d.ts.map +1 -0
- package/lib/util/logging.spec.js +52 -0
- package/lib/util/logging.spec.js.map +1 -0
- package/lib/util/make-link.js +5 -5
- package/lib/util/make-link.js.map +1 -1
- package/lib/util/nice-grpc.d.ts +9 -0
- package/lib/util/nice-grpc.d.ts.map +1 -0
- package/lib/util/nice-grpc.js +119 -0
- package/lib/util/nice-grpc.js.map +1 -0
- package/lib/util/parse-workspace-id.d.ts +10 -0
- package/lib/util/parse-workspace-id.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.js +31 -7
- package/lib/util/parse-workspace-id.js.map +1 -1
- package/lib/util/parse-workspace-id.spec.d.ts +4 -0
- package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.spec.js +123 -84
- package/lib/util/parse-workspace-id.spec.js.map +1 -1
- package/lib/util/queue.js +16 -55
- package/lib/util/queue.js.map +1 -1
- package/lib/util/queue.spec.js +147 -288
- package/lib/util/queue.spec.js.map +1 -1
- package/lib/util/repeat.d.ts +15 -0
- package/lib/util/repeat.d.ts.map +1 -0
- package/lib/util/repeat.js +55 -0
- package/lib/util/repeat.js.map +1 -0
- package/lib/util/semaphore.d.ts.map +1 -1
- package/lib/util/semaphore.js +15 -46
- package/lib/util/semaphore.js.map +1 -1
- package/lib/util/skip-if.d.ts.map +1 -1
- package/lib/util/skip-if.js +6 -6
- package/lib/util/skip-if.js.map +1 -1
- package/lib/util/timeutil.d.ts +2 -0
- package/lib/util/timeutil.d.ts.map +1 -1
- package/lib/util/timeutil.js +41 -17
- package/lib/util/timeutil.js.map +1 -1
- package/lib/util/timeutil.spec.d.ts +2 -0
- package/lib/util/timeutil.spec.d.ts.map +1 -1
- package/lib/util/timeutil.spec.js +54 -23
- package/lib/util/timeutil.spec.js.map +1 -1
- package/lib/util/tracing.d.ts +52 -6
- package/lib/util/tracing.d.ts.map +1 -1
- package/lib/util/tracing.js +197 -64
- package/lib/util/tracing.js.map +1 -1
- package/lib/util/tracing.spec.d.ts +7 -0
- package/lib/util/tracing.spec.d.ts.map +1 -0
- package/lib/util/tracing.spec.js +121 -0
- package/lib/util/tracing.spec.js.map +1 -0
- package/lib/util/workspace-port-authentication.d.ts +7 -7
- package/lib/util/workspace-port-authentication.d.ts.map +1 -1
- package/lib/util/workspace-port-authentication.js +10 -12
- package/lib/util/workspace-port-authentication.js.map +1 -1
- package/lib/webhook-event.d.ts +44 -0
- package/lib/webhook-event.d.ts.map +1 -0
- package/lib/webhook-event.js +8 -0
- package/lib/webhook-event.js.map +1 -0
- package/lib/workspace-class.d.ts +14 -0
- package/lib/workspace-class.d.ts.map +1 -0
- package/lib/workspace-class.js +8 -0
- package/lib/workspace-class.js.map +1 -0
- package/lib/workspace-cluster.d.ts +75 -0
- package/lib/workspace-cluster.d.ts.map +1 -0
- package/lib/workspace-cluster.js +31 -0
- package/lib/workspace-cluster.js.map +1 -0
- package/lib/workspace-instance.d.ts +46 -5
- package/lib/workspace-instance.d.ts.map +1 -1
- package/lib/wsready.d.ts +1 -1
- package/lib/wsready.d.ts.map +1 -1
- package/lib/wsready.js +2 -2
- package/package.json +40 -18
- package/pkg-yarn.lock +23 -10
- package/provenance-bundle.jsonl +2 -0
- package/src/accounting-protocol.ts +244 -0
- package/src/admin-protocol.ts +80 -19
- package/src/analytics.ts +52 -0
- package/src/attribution.ts +59 -0
- package/src/auth.ts +2 -2
- package/src/billing-mode.ts +81 -0
- package/src/blocked-repositories-protocol.ts +13 -0
- package/src/context-url.spec.ts +67 -0
- package/src/context-url.ts +109 -0
- package/src/encryption/container-module.ts +2 -3
- package/src/encryption/encryption-engine.spec.ts +9 -8
- package/src/encryption/encryption-engine.ts +20 -16
- package/src/encryption/encryption-service.ts +4 -5
- package/src/encryption/key-provider.ts +16 -19
- package/src/env.ts +0 -22
- package/src/experiments/always-default.ts +24 -0
- package/src/experiments/configcat-server.ts +41 -0
- package/src/experiments/configcat.ts +56 -0
- package/src/experiments/types.ts +34 -0
- package/src/gitpod-file-parser.spec.ts +55 -61
- package/src/gitpod-file-parser.ts +16 -17
- package/src/gitpod-service.ts +385 -117
- package/src/headless-workspace-log.ts +12 -14
- package/src/ide-frontend-service.ts +6 -2
- package/src/ide-protocol.ts +129 -0
- package/src/index.ts +16 -10
- package/src/installation-admin-protocol.ts +45 -0
- package/src/license-protocol.ts +12 -6
- package/src/messaging/browser/connection.ts +197 -18
- package/src/messaging/browser/window-connection.ts +39 -29
- package/src/messaging/client-call-metrics.ts +77 -0
- package/src/messaging/error.ts +32 -7
- package/src/messaging/handler.ts +13 -1
- package/src/messaging/node/connection.ts +23 -70
- package/src/messaging/proxy-factory.ts +35 -34
- package/src/oss-allowlist.ts +15 -0
- package/src/payment-protocol.ts +20 -0
- package/src/permission.ts +42 -33
- package/src/plans.ts +683 -0
- package/src/protocol.spec.ts +97 -0
- package/src/protocol.ts +680 -282
- package/src/snapshot-url.spec.ts +27 -0
- package/src/snapshot-url.ts +27 -0
- package/src/team-subscription-protocol.ts +150 -0
- package/src/teams-projects-protocol.ts +166 -0
- package/src/typings/globals.ts +4 -4
- package/src/usage.ts +71 -0
- package/src/util/analytics.ts +109 -0
- package/src/util/async-iterator.ts +4 -5
- package/src/util/cancelable.ts +3 -3
- package/src/util/date-time.ts +8 -8
- package/src/util/debug-app.ts +81 -0
- package/src/util/deferred.ts +6 -6
- package/src/util/disposable.ts +3 -6
- package/src/util/event.ts +9 -11
- package/src/util/garbage-collected-cache.ts +16 -8
- package/src/util/generate-workspace-id.spec.ts +37 -10
- package/src/util/generate-workspace-id.ts +464 -438
- package/src/util/gitpod-cookie.ts +38 -0
- package/src/util/gitpod-host-url.spec.ts +59 -8
- package/src/util/gitpod-host-url.ts +72 -39
- package/src/util/grpc.ts +104 -0
- package/src/util/jaeger-client-types.ts +102 -0
- package/src/util/logging.spec.ts +23 -0
- package/src/util/logging.ts +156 -74
- package/src/util/make-link.ts +6 -7
- package/src/util/nice-grpc.ts +93 -0
- package/src/util/parse-workspace-id.spec.ts +37 -8
- package/src/util/parse-workspace-id.ts +32 -7
- package/src/util/queue.spec.ts +28 -26
- package/src/util/repeat.ts +45 -0
- package/src/util/semaphore.ts +6 -8
- package/src/util/skip-if.ts +10 -7
- package/src/util/timeutil.spec.ts +40 -14
- package/src/util/timeutil.ts +31 -15
- package/src/util/tracing.spec.ts +88 -0
- package/src/util/tracing.ts +200 -31
- package/src/util/workspace-port-authentication.ts +10 -13
- package/src/webhook-event.ts +55 -0
- package/src/workspace-class.ts +14 -0
- package/src/workspace-cluster.ts +109 -0
- package/src/workspace-instance.ts +105 -31
- package/src/wsready.ts +3 -3
- package/data/builtin-theia-plugins.json +0 -372
- package/lib/email-protocol.d.ts +0 -50
- package/lib/email-protocol.d.ts.map +0 -1
- package/lib/email-protocol.js +0 -28
- package/lib/email-protocol.js.map +0 -1
- package/lib/messaging/connection-error-handler.d.ts +0 -27
- package/lib/messaging/connection-error-handler.d.ts.map +0 -1
- package/lib/messaging/connection-error-handler.js +0 -46
- package/lib/messaging/connection-error-handler.js.map +0 -1
- package/lib/theia-plugins.d.ts +0 -11
- package/lib/theia-plugins.d.ts.map +0 -1
- package/lib/theia-plugins.js.map +0 -1
- package/lib/util/context-url.d.ts +0 -13
- package/lib/util/context-url.d.ts.map +0 -1
- package/lib/util/context-url.js +0 -26
- package/lib/util/context-url.js.map +0 -1
- package/lib/util/context-url.spec.d.ts +0 -10
- package/lib/util/context-url.spec.d.ts.map +0 -1
- package/lib/util/context-url.spec.js +0 -52
- package/lib/util/context-url.spec.js.map +0 -1
- package/lib/util/repeater.d.ts +0 -22
- package/lib/util/repeater.d.ts.map +0 -1
- package/lib/util/repeater.js +0 -118
- package/lib/util/repeater.js.map +0 -1
- package/lib/util/safe-promise.d.ts +0 -11
- package/lib/util/safe-promise.d.ts.map +0 -1
- package/lib/util/safe-promise.js +0 -34
- package/lib/util/safe-promise.js.map +0 -1
- package/lib/util/without.d.ts +0 -7
- package/lib/util/without.d.ts.map +0 -1
- package/lib/util/without.js.map +0 -1
- package/src/email-protocol.ts +0 -67
- package/src/messaging/connection-error-handler.ts +0 -62
- package/src/util/context-url.spec.ts +0 -25
- package/src/util/context-url.ts +0 -23
- package/src/util/jaeger-client.d.ts +0 -105
- package/src/util/repeater.ts +0 -49
- package/src/util/safe-promise.ts +0 -26
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) 2022 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.attributesToUser = exports.ConfigCatClient = exports.BILLING_TIER_ATTRIBUTE = exports.TEAM_NAME_ATTRIBUTE = exports.TEAM_ID_ATTRIBUTE = exports.PROJECT_ID_ATTRIBUTE = exports.USER_ID_ATTRIBUTE = void 0;
|
|
9
|
+
const RolloutEvaluator_1 = require("configcat-common/lib/RolloutEvaluator");
|
|
10
|
+
const protocol_1 = require("../protocol");
|
|
11
|
+
exports.USER_ID_ATTRIBUTE = "user_id";
|
|
12
|
+
exports.PROJECT_ID_ATTRIBUTE = "project_id";
|
|
13
|
+
exports.TEAM_ID_ATTRIBUTE = "team_id";
|
|
14
|
+
exports.TEAM_NAME_ATTRIBUTE = "team_name";
|
|
15
|
+
exports.BILLING_TIER_ATTRIBUTE = "billing_tier";
|
|
16
|
+
class ConfigCatClient {
|
|
17
|
+
constructor(cc) {
|
|
18
|
+
this.client = cc;
|
|
19
|
+
}
|
|
20
|
+
getValueAsync(experimentName, defaultValue, attributes) {
|
|
21
|
+
return this.client.getValueAsync(experimentName, defaultValue, attributesToUser(attributes));
|
|
22
|
+
}
|
|
23
|
+
dispose() {
|
|
24
|
+
return this.client.dispose();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.ConfigCatClient = ConfigCatClient;
|
|
28
|
+
function attributesToUser(attributes) {
|
|
29
|
+
var _a, _b;
|
|
30
|
+
const userId = ((_a = attributes.user) === null || _a === void 0 ? void 0 : _a.id) || "";
|
|
31
|
+
const email = protocol_1.User.is(attributes.user) ? protocol_1.User.getPrimaryEmail(attributes.user) : ((_b = attributes.user) === null || _b === void 0 ? void 0 : _b.email) || "";
|
|
32
|
+
const custom = {};
|
|
33
|
+
if (userId) {
|
|
34
|
+
custom[exports.USER_ID_ATTRIBUTE] = userId;
|
|
35
|
+
}
|
|
36
|
+
if (attributes.projectId) {
|
|
37
|
+
custom[exports.PROJECT_ID_ATTRIBUTE] = attributes.projectId;
|
|
38
|
+
}
|
|
39
|
+
if (attributes.teamId) {
|
|
40
|
+
custom[exports.TEAM_ID_ATTRIBUTE] = attributes.teamId;
|
|
41
|
+
}
|
|
42
|
+
if (attributes.teamName) {
|
|
43
|
+
custom[exports.TEAM_NAME_ATTRIBUTE] = attributes.teamName;
|
|
44
|
+
}
|
|
45
|
+
if (attributes.billingTier) {
|
|
46
|
+
custom[exports.BILLING_TIER_ATTRIBUTE] = attributes.billingTier;
|
|
47
|
+
}
|
|
48
|
+
return new RolloutEvaluator_1.User(userId, email, "", custom);
|
|
49
|
+
}
|
|
50
|
+
exports.attributesToUser = attributesToUser;
|
|
51
|
+
//# sourceMappingURL=configcat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configcat.js","sourceRoot":"","sources":["../../src/experiments/configcat.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,4EAA8E;AAE9E,0CAAmC;AAEtB,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAC9B,QAAA,oBAAoB,GAAG,YAAY,CAAC;AACpC,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAC9B,QAAA,mBAAmB,GAAG,WAAW,CAAC;AAClC,QAAA,sBAAsB,GAAG,cAAc,CAAC;AAErD,MAAa,eAAe;IAGxB,YAAY,EAAoB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,aAAa,CAAI,cAAsB,EAAE,YAAe,EAAE,UAAsB;QAC5E,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,EAAE,YAAY,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;IACjG,CAAC;IAED,OAAO;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;IACjC,CAAC;CACJ;AAdD,0CAcC;AAED,SAAgB,gBAAgB,CAAC,UAAsB;;IACnD,MAAM,MAAM,GAAG,CAAA,MAAA,UAAU,CAAC,IAAI,0CAAE,EAAE,KAAI,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,eAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAI,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA,MAAA,UAAU,CAAC,IAAI,0CAAE,KAAK,KAAI,EAAE,CAAC;IAE9G,MAAM,MAAM,GAA8B,EAAE,CAAC;IAC7C,IAAI,MAAM,EAAE;QACR,MAAM,CAAC,yBAAiB,CAAC,GAAG,MAAM,CAAC;KACtC;IACD,IAAI,UAAU,CAAC,SAAS,EAAE;QACtB,MAAM,CAAC,4BAAoB,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC;KACvD;IACD,IAAI,UAAU,CAAC,MAAM,EAAE;QACnB,MAAM,CAAC,yBAAiB,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;KACjD;IACD,IAAI,UAAU,CAAC,QAAQ,EAAE;QACrB,MAAM,CAAC,2BAAmB,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC;KACrD;IACD,IAAI,UAAU,CAAC,WAAW,EAAE;QACxB,MAAM,CAAC,8BAAsB,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC;KAC3D;IAED,OAAO,IAAI,uBAAa,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;AACxD,CAAC;AAtBD,4CAsBC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
import { BillingTier, User } from "../protocol";
|
|
7
|
+
export declare const Client: unique symbol;
|
|
8
|
+
export interface Attributes {
|
|
9
|
+
user?: User | {
|
|
10
|
+
id: string;
|
|
11
|
+
email?: string;
|
|
12
|
+
};
|
|
13
|
+
billingTier?: BillingTier;
|
|
14
|
+
projectId?: string;
|
|
15
|
+
teamId?: string;
|
|
16
|
+
teamName?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface Client {
|
|
19
|
+
getValueAsync<T>(experimentName: string, defaultValue: T, attributes: Attributes): Promise<T>;
|
|
20
|
+
dispose(): void;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/experiments/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEhD,eAAO,MAAM,MAAM,eAAmB,CAAC;AAIvC,MAAM,WAAW,UAAU;IAEvB,IAAI,CAAC,EAAE,IAAI,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAG7C,WAAW,CAAC,EAAE,WAAW,CAAC;IAG1B,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,MAAM;IACnB,aAAa,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAG9F,OAAO,IAAI,IAAI,CAAC;CACnB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) 2022 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.Client = void 0;
|
|
9
|
+
exports.Client = Symbol("Client");
|
|
10
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/experiments/types.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIU,QAAA,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitpod-file-parser.d.ts","sourceRoot":"","sources":["../src/gitpod-file-parser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,eAAe,EAAmB,MAAM,YAAY,CAAC;AAE9D,oBAAY,WAAW,GAAG,eAAe,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"gitpod-file-parser.d.ts","sourceRoot":"","sources":["../src/gitpod-file-parser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,eAAe,EAAmB,MAAM,YAAY,CAAC;AAE9D,oBAAY,WAAW,GAAG,eAAe,GAAG,SAAS,CAAC;AAQtD,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,qBACa,gBAAgB;IAClB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,KAAK,EAAE,aAAa,GAAE,eAAoB,GAAG,WAAW;CAoCrG"}
|
|
@@ -4,17 +4,6 @@
|
|
|
4
4
|
* Licensed under the GNU Affero General Public License (AGPL).
|
|
5
5
|
* See License-AGPL.txt in the project root for license information.
|
|
6
6
|
*/
|
|
7
|
-
var __assign = (this && this.__assign) || function () {
|
|
8
|
-
__assign = Object.assign || function(t) {
|
|
9
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
10
|
-
s = arguments[i];
|
|
11
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
12
|
-
t[p] = s[p];
|
|
13
|
-
}
|
|
14
|
-
return t;
|
|
15
|
-
};
|
|
16
|
-
return __assign.apply(this, arguments);
|
|
17
|
-
};
|
|
18
7
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
8
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
9
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -23,55 +12,50 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
23
12
|
};
|
|
24
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
14
|
exports.GitpodFileParser = void 0;
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
15
|
+
const inversify_1 = require("inversify");
|
|
16
|
+
const yaml = require("js-yaml");
|
|
17
|
+
const Ajv = require("ajv");
|
|
18
|
+
const logging_1 = require("./util/logging");
|
|
19
|
+
const protocol_1 = require("./protocol");
|
|
20
|
+
const schema = require("../data/gitpod-schema.json");
|
|
21
|
+
const validate = new Ajv().compile(schema);
|
|
22
|
+
const defaultParseOptions = {
|
|
34
23
|
acceptPortRanges: false,
|
|
35
24
|
};
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
GitpodFileParser.prototype.parse = function (content, parseOptions, defaultConfig) {
|
|
40
|
-
if (parseOptions === void 0) { parseOptions = {}; }
|
|
41
|
-
if (defaultConfig === void 0) { defaultConfig = {}; }
|
|
42
|
-
var options = __assign(__assign({}, defaultParseOptions), parseOptions);
|
|
25
|
+
let GitpodFileParser = class GitpodFileParser {
|
|
26
|
+
parse(content, parseOptions = {}, defaultConfig = {}) {
|
|
27
|
+
const options = Object.assign(Object.assign({}, defaultParseOptions), parseOptions);
|
|
43
28
|
try {
|
|
44
|
-
|
|
29
|
+
const parsedConfig = yaml.safeLoad(content);
|
|
45
30
|
validate(parsedConfig);
|
|
46
|
-
|
|
31
|
+
const validationErrors = validate.errors ? validate.errors.map((e) => e.message || e.keyword) : undefined;
|
|
47
32
|
if (validationErrors && validationErrors.length > 0) {
|
|
48
33
|
return {
|
|
49
34
|
config: defaultConfig,
|
|
50
|
-
parsedConfig
|
|
51
|
-
validationErrors
|
|
35
|
+
parsedConfig,
|
|
36
|
+
validationErrors,
|
|
52
37
|
};
|
|
53
38
|
}
|
|
54
|
-
|
|
39
|
+
const overrides = {};
|
|
55
40
|
if (!options.acceptPortRanges && Array.isArray(parsedConfig.ports)) {
|
|
56
|
-
overrides.ports = parsedConfig.ports.filter(
|
|
41
|
+
overrides.ports = parsedConfig.ports.filter((port) => !protocol_1.PortRangeConfig.is(port));
|
|
57
42
|
}
|
|
58
43
|
return {
|
|
59
|
-
config:
|
|
60
|
-
parsedConfig
|
|
44
|
+
config: Object.assign(Object.assign(Object.assign({}, defaultConfig), parsedConfig), overrides),
|
|
45
|
+
parsedConfig,
|
|
61
46
|
};
|
|
62
47
|
}
|
|
63
48
|
catch (err) {
|
|
64
|
-
logging_1.log.error(
|
|
49
|
+
logging_1.log.error("Unparsable Gitpod configuration", err, { content });
|
|
65
50
|
return {
|
|
66
51
|
config: defaultConfig,
|
|
67
|
-
validationErrors: [
|
|
52
|
+
validationErrors: ["Unparsable Gitpod configuration: " + err.toString()],
|
|
68
53
|
};
|
|
69
54
|
}
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
}());
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
GitpodFileParser = __decorate([
|
|
58
|
+
(0, inversify_1.injectable)()
|
|
59
|
+
], GitpodFileParser);
|
|
76
60
|
exports.GitpodFileParser = GitpodFileParser;
|
|
77
61
|
//# sourceMappingURL=gitpod-file-parser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitpod-file-parser.js","sourceRoot":"","sources":["../src/gitpod-file-parser.ts"],"names":[],"mappings":";AAAA;;;;GAIG
|
|
1
|
+
{"version":3,"file":"gitpod-file-parser.js","sourceRoot":"","sources":["../src/gitpod-file-parser.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;AAEH,yCAAuC;AACvC,gCAAgC;AAChC,2BAA2B;AAC3B,4CAAqC;AACrC,yCAA8D;AAI9D,MAAM,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AACrD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC3C,MAAM,mBAAmB,GAAG;IACxB,gBAAgB,EAAE,KAAK;CAC1B,CAAC;AASF,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAClB,KAAK,CAAC,OAAe,EAAE,YAAY,GAAG,EAAE,EAAE,gBAAiC,EAAE;QAChF,MAAM,OAAO,mCACN,mBAAmB,GACnB,YAAY,CAClB,CAAC;QACF,IAAI;YACA,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAQ,CAAC;YACnD,QAAQ,CAAC,YAAY,CAAC,CAAC;YACvB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1G,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;gBACjD,OAAO;oBACH,MAAM,EAAE,aAAa;oBACrB,YAAY;oBACZ,gBAAgB;iBACnB,CAAC;aACL;YACD,MAAM,SAAS,GAAG,EAAS,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;gBAChE,SAAS,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC,0BAAe,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;aACzF;YACD,OAAO;gBACH,MAAM,gDACC,aAAa,GACb,YAAY,GACZ,SAAS,CACf;gBACD,YAAY;aACf,CAAC;SACL;QAAC,OAAO,GAAG,EAAE;YACV,aAAG,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC/D,OAAO;gBACH,MAAM,EAAE,aAAa;gBACrB,gBAAgB,EAAE,CAAC,mCAAmC,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;aAC3E,CAAC;SACL;IACL,CAAC;CACJ,CAAA;AArCY,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;GACA,gBAAgB,CAqC5B;AArCY,4CAAgB"}
|
|
@@ -14,171 +14,174 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
14
14
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
TestGitpodFileParser.prototype.before = function () {
|
|
17
|
+
const mocha_typescript_1 = require("mocha-typescript");
|
|
18
|
+
const chai = require("chai");
|
|
19
|
+
const gitpod_file_parser_1 = require("./gitpod-file-parser");
|
|
20
|
+
const expect = chai.expect;
|
|
21
|
+
const DEFAULT_IMAGE = "default-image";
|
|
22
|
+
const DEFAULT_CONFIG = { image: DEFAULT_IMAGE };
|
|
23
|
+
let TestGitpodFileParser = class TestGitpodFileParser {
|
|
24
|
+
before() {
|
|
27
25
|
this.parser = new gitpod_file_parser_1.GitpodFileParser();
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
var result = this.parser.parse(content, {}, DEFAULT_CONFIG);
|
|
26
|
+
}
|
|
27
|
+
testOnlyOnePort() {
|
|
28
|
+
const content = `ports:\n` + ` - port: 5555`;
|
|
29
|
+
const result = this.parser.parse(content, {}, DEFAULT_CONFIG);
|
|
33
30
|
expect(result.config).to.deep.equal({
|
|
34
|
-
ports: [
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
31
|
+
ports: [
|
|
32
|
+
{
|
|
33
|
+
port: 5555,
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
image: DEFAULT_IMAGE,
|
|
38
37
|
});
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
" - port: 3000-3999"; // should be filtered out by default
|
|
44
|
-
var result = this.parser.parse(content, {}, DEFAULT_CONFIG);
|
|
38
|
+
}
|
|
39
|
+
testPortRange() {
|
|
40
|
+
const content = `ports:\n` + ` - port: 5555\n` + ` - port: 3000-3999`; // should be filtered out by default
|
|
41
|
+
const result = this.parser.parse(content, {}, DEFAULT_CONFIG);
|
|
45
42
|
expect(result.config).to.deep.equal({
|
|
46
|
-
ports: [
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
43
|
+
ports: [
|
|
44
|
+
{
|
|
45
|
+
port: 5555,
|
|
46
|
+
},
|
|
47
|
+
],
|
|
48
|
+
image: DEFAULT_IMAGE,
|
|
50
49
|
});
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
" - port: 3000-3999"; // should be included if explicitly supported
|
|
56
|
-
var result = this.parser.parse(content, { acceptPortRanges: true }, DEFAULT_CONFIG);
|
|
50
|
+
}
|
|
51
|
+
testPortRangeAccepted() {
|
|
52
|
+
const content = `ports:\n` + ` - port: 5555\n` + ` - port: 3000-3999`; // should be included if explicitly supported
|
|
53
|
+
const result = this.parser.parse(content, { acceptPortRanges: true }, DEFAULT_CONFIG);
|
|
57
54
|
expect(result.config).to.deep.equal({
|
|
58
|
-
ports: [
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
55
|
+
ports: [
|
|
56
|
+
{
|
|
57
|
+
port: 5555,
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
port: "3000-3999",
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
image: DEFAULT_IMAGE,
|
|
64
64
|
});
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
var result = this.parser.parse(content, {}, DEFAULT_CONFIG);
|
|
65
|
+
}
|
|
66
|
+
testSimpleTask() {
|
|
67
|
+
const content = `tasks:\n` + ` - command: yarn`;
|
|
68
|
+
const result = this.parser.parse(content, {}, DEFAULT_CONFIG);
|
|
70
69
|
expect(result.config).to.deep.equal({
|
|
71
|
-
tasks: [
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
70
|
+
tasks: [
|
|
71
|
+
{
|
|
72
|
+
command: "yarn",
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
image: DEFAULT_IMAGE,
|
|
75
76
|
});
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
77
|
+
}
|
|
78
|
+
testSimpleImage() {
|
|
79
|
+
const imageName = "my-test-org/my-test-image:some-tag";
|
|
80
|
+
const content = `image: "${imageName}"\n`;
|
|
81
|
+
const result = this.parser.parse(content);
|
|
81
82
|
expect(result.config).to.deep.equal({
|
|
82
|
-
image: imageName
|
|
83
|
+
image: imageName,
|
|
83
84
|
});
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
85
|
+
}
|
|
86
|
+
testComplexImageWithoutContext() {
|
|
87
|
+
const dockerFileName = "Dockerfile";
|
|
88
|
+
const content = `image:\n file: ${dockerFileName}\n`;
|
|
89
|
+
const result = this.parser.parse(content);
|
|
89
90
|
expect(result.config).to.deep.equal({
|
|
90
91
|
image: {
|
|
91
|
-
file: dockerFileName
|
|
92
|
-
}
|
|
92
|
+
file: dockerFileName,
|
|
93
|
+
},
|
|
93
94
|
});
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
95
|
+
}
|
|
96
|
+
testComplexImageWithContext() {
|
|
97
|
+
const dockerFileName = "Dockerfile";
|
|
98
|
+
const dockerContext = "docker";
|
|
99
|
+
const content = `image:\n file: ${dockerFileName}\n context: ${dockerContext}\n`;
|
|
100
|
+
const result = this.parser.parse(content);
|
|
100
101
|
expect(result.config).to.deep.equal({
|
|
101
102
|
image: {
|
|
102
103
|
file: dockerFileName,
|
|
103
|
-
context: dockerContext
|
|
104
|
-
}
|
|
104
|
+
context: dockerContext,
|
|
105
|
+
},
|
|
105
106
|
});
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
107
|
+
}
|
|
108
|
+
testGitconfig() {
|
|
109
|
+
const content = `
|
|
110
|
+
gitConfig:
|
|
111
|
+
core.autocrlf: input
|
|
112
|
+
`;
|
|
113
|
+
const result = this.parser.parse(content, {}, DEFAULT_CONFIG);
|
|
110
114
|
expect(result.config).to.deep.equal({
|
|
111
115
|
gitConfig: {
|
|
112
|
-
"core.autocrlf": "input"
|
|
116
|
+
"core.autocrlf": "input",
|
|
113
117
|
},
|
|
114
|
-
image: DEFAULT_IMAGE
|
|
118
|
+
image: DEFAULT_IMAGE,
|
|
115
119
|
});
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
+
}
|
|
121
|
+
testBrokenConfig() {
|
|
122
|
+
const content = `image: 42\n`;
|
|
123
|
+
const result = this.parser.parse(content, {}, DEFAULT_CONFIG);
|
|
120
124
|
expect(result.config).to.deep.equal({
|
|
121
|
-
image: DEFAULT_IMAGE
|
|
125
|
+
image: DEFAULT_IMAGE,
|
|
122
126
|
});
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
}());
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
__decorate([
|
|
130
|
+
mocha_typescript_1.test,
|
|
131
|
+
__metadata("design:type", Function),
|
|
132
|
+
__metadata("design:paramtypes", []),
|
|
133
|
+
__metadata("design:returntype", void 0)
|
|
134
|
+
], TestGitpodFileParser.prototype, "testOnlyOnePort", null);
|
|
135
|
+
__decorate([
|
|
136
|
+
mocha_typescript_1.test,
|
|
137
|
+
__metadata("design:type", Function),
|
|
138
|
+
__metadata("design:paramtypes", []),
|
|
139
|
+
__metadata("design:returntype", void 0)
|
|
140
|
+
], TestGitpodFileParser.prototype, "testPortRange", null);
|
|
141
|
+
__decorate([
|
|
142
|
+
mocha_typescript_1.test,
|
|
143
|
+
__metadata("design:type", Function),
|
|
144
|
+
__metadata("design:paramtypes", []),
|
|
145
|
+
__metadata("design:returntype", void 0)
|
|
146
|
+
], TestGitpodFileParser.prototype, "testPortRangeAccepted", null);
|
|
147
|
+
__decorate([
|
|
148
|
+
mocha_typescript_1.test,
|
|
149
|
+
__metadata("design:type", Function),
|
|
150
|
+
__metadata("design:paramtypes", []),
|
|
151
|
+
__metadata("design:returntype", void 0)
|
|
152
|
+
], TestGitpodFileParser.prototype, "testSimpleTask", null);
|
|
153
|
+
__decorate([
|
|
154
|
+
mocha_typescript_1.test,
|
|
155
|
+
__metadata("design:type", Function),
|
|
156
|
+
__metadata("design:paramtypes", []),
|
|
157
|
+
__metadata("design:returntype", void 0)
|
|
158
|
+
], TestGitpodFileParser.prototype, "testSimpleImage", null);
|
|
159
|
+
__decorate([
|
|
160
|
+
mocha_typescript_1.test,
|
|
161
|
+
__metadata("design:type", Function),
|
|
162
|
+
__metadata("design:paramtypes", []),
|
|
163
|
+
__metadata("design:returntype", void 0)
|
|
164
|
+
], TestGitpodFileParser.prototype, "testComplexImageWithoutContext", null);
|
|
165
|
+
__decorate([
|
|
166
|
+
mocha_typescript_1.test,
|
|
167
|
+
__metadata("design:type", Function),
|
|
168
|
+
__metadata("design:paramtypes", []),
|
|
169
|
+
__metadata("design:returntype", void 0)
|
|
170
|
+
], TestGitpodFileParser.prototype, "testComplexImageWithContext", null);
|
|
171
|
+
__decorate([
|
|
172
|
+
mocha_typescript_1.test,
|
|
173
|
+
__metadata("design:type", Function),
|
|
174
|
+
__metadata("design:paramtypes", []),
|
|
175
|
+
__metadata("design:returntype", void 0)
|
|
176
|
+
], TestGitpodFileParser.prototype, "testGitconfig", null);
|
|
177
|
+
__decorate([
|
|
178
|
+
mocha_typescript_1.test,
|
|
179
|
+
__metadata("design:type", Function),
|
|
180
|
+
__metadata("design:paramtypes", []),
|
|
181
|
+
__metadata("design:returntype", void 0)
|
|
182
|
+
], TestGitpodFileParser.prototype, "testBrokenConfig", null);
|
|
183
|
+
TestGitpodFileParser = __decorate([
|
|
184
|
+
mocha_typescript_1.suite
|
|
185
|
+
], TestGitpodFileParser);
|
|
183
186
|
module.exports = new TestGitpodFileParser(); // Only to circumvent no usage warning :-/
|
|
184
187
|
//# sourceMappingURL=gitpod-file-parser.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitpod-file-parser.spec.js","sourceRoot":"","sources":["../src/gitpod-file-parser.spec.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;AAEH,
|
|
1
|
+
{"version":3,"file":"gitpod-file-parser.spec.js","sourceRoot":"","sources":["../src/gitpod-file-parser.spec.ts"],"names":[],"mappings":"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"}
|