@toa.io/definitions 1.0.0-alpha.288
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/digest/extensions.cadence.json +1 -0
- package/digest/extensions.configuration.json +1 -0
- package/digest/extensions.exposition.json +1 -0
- package/digest/extensions.introspection.json +1 -0
- package/digest/extensions.realtime.json +1 -0
- package/package.json +42 -0
- package/readme.md +75 -0
- package/schemas/extensions.cadence/annotation.cos.yaml +9 -0
- package/schemas/extensions.cadence/declaration.cos.yaml +20 -0
- package/schemas/extensions.configuration/annotation.cos.yaml +29 -0
- package/schemas/extensions.configuration/manifest.cos.yaml +9 -0
- package/schemas/extensions.exposition/annotation.cos.yaml +125 -0
- package/schemas/extensions.exposition/call.cos.yaml +18 -0
- package/schemas/extensions.exposition/directive.cos.yaml +7 -0
- package/schemas/extensions.exposition/method.cos.yaml +23 -0
- package/schemas/extensions.exposition/node.cos.yaml +22 -0
- package/schemas/extensions.exposition/query.cos.yaml +31 -0
- package/schemas/extensions.exposition/querystring.cos.yaml +19 -0
- package/schemas/extensions.exposition/range.cos.yaml +10 -0
- package/schemas/extensions.exposition/route.cos.yaml +6 -0
- package/schemas/extensions.introspection/annotation.cos.yaml +31 -0
- package/schemas/extensions.introspection/declaration.cos.yaml +5 -0
- package/schemas/extensions.storages/annotation.cos.yaml +11 -0
- package/schemas/extensions.storages/cloudinary.cos.yaml +38 -0
- package/schemas/extensions.storages/fs.cos.yaml +13 -0
- package/schemas/extensions.storages/s3.cos.yaml +17 -0
- package/schemas/extensions.storages/spaces.cos.yaml +16 -0
- package/schemas/extensions.storages/test.cos.yaml +10 -0
- package/schemas/extensions.storages/tmp.cos.yaml +10 -0
- package/source/bindings.amqp/annotation.ts +26 -0
- package/source/bindings.amqp/context.ts +68 -0
- package/source/bindings.amqp/deployment.ts +14 -0
- package/source/bindings.amqp/index.ts +9 -0
- package/source/bindings.amqp/instance.ts +3 -0
- package/source/bindings.amqp/sources.ts +39 -0
- package/source/bindings.loop/index.ts +3 -0
- package/source/bridges.bash/const.ts +2 -0
- package/source/bridges.bash/define.ts +38 -0
- package/source/bridges.bash/index.ts +2 -0
- package/source/bridges.node/define.ts +69 -0
- package/source/bridges.node/exports.ts +175 -0
- package/source/bridges.node/index.ts +6 -0
- package/source/bridges.node/operations.ts +127 -0
- package/source/bridges.node/sources.ts +44 -0
- package/source/definition.ts +38 -0
- package/source/digest/generate.ts +77 -0
- package/source/digest/read.ts +39 -0
- package/source/extensions.cadence/components.ts +6 -0
- package/source/extensions.cadence/const.ts +31 -0
- package/source/extensions.cadence/context.ts +10 -0
- package/source/extensions.cadence/deployment.ts +37 -0
- package/source/extensions.cadence/index.ts +8 -0
- package/source/extensions.cadence/manifest.ts +64 -0
- package/source/extensions.cadence/schemas.ts +10 -0
- package/source/extensions.cadence/types.ts +41 -0
- package/source/extensions.configuration/components.ts +6 -0
- package/source/extensions.configuration/const.ts +30 -0
- package/source/extensions.configuration/context.ts +13 -0
- package/source/extensions.configuration/deployment.ts +159 -0
- package/source/extensions.configuration/epoch.ts +22 -0
- package/source/extensions.configuration/index.ts +10 -0
- package/source/extensions.configuration/manifest.ts +12 -0
- package/source/extensions.configuration/schemas.ts +9 -0
- package/source/extensions.exposition/Annotation.ts +91 -0
- package/source/extensions.exposition/components.ts +6 -0
- package/source/extensions.exposition/const.ts +45 -0
- package/source/extensions.exposition/deployment.ts +95 -0
- package/source/extensions.exposition/index.ts +16 -0
- package/source/extensions.exposition/manifest.ts +56 -0
- package/source/extensions.exposition/schemas.ts +16 -0
- package/source/extensions.exposition/shortcuts.ts +14 -0
- package/source/extensions.exposition/syntax/index.ts +2 -0
- package/source/extensions.exposition/syntax/parse.ts +171 -0
- package/source/extensions.exposition/syntax/types.ts +69 -0
- package/source/extensions.fetch/context.ts +10 -0
- package/source/extensions.fetch/index.ts +1 -0
- package/source/extensions.introspection/annotation.ts +87 -0
- package/source/extensions.introspection/components.ts +13 -0
- package/source/extensions.introspection/const.ts +46 -0
- package/source/extensions.introspection/deployment.ts +48 -0
- package/source/extensions.introspection/index.ts +6 -0
- package/source/extensions.introspection/manifest.ts +18 -0
- package/source/extensions.introspection/schemas.ts +12 -0
- package/source/extensions.realtime/components.ts +5 -0
- package/source/extensions.realtime/deployment.ts +89 -0
- package/source/extensions.realtime/index.ts +4 -0
- package/source/extensions.stash/context.ts +10 -0
- package/source/extensions.stash/deployment.ts +22 -0
- package/source/extensions.stash/index.ts +2 -0
- package/source/extensions.state/context.ts +9 -0
- package/source/extensions.state/index.ts +1 -0
- package/source/extensions.storages/Annotation.ts +57 -0
- package/source/extensions.storages/context.ts +14 -0
- package/source/extensions.storages/deployment.ts +91 -0
- package/source/extensions.storages/index.ts +9 -0
- package/source/extensions.storages/manifest.ts +7 -0
- package/source/extensions.storages/schemas.ts +15 -0
- package/source/extensions.storages/secrets.ts +22 -0
- package/source/extensions.telemetry/const.ts +6 -0
- package/source/extensions.telemetry/context.ts +11 -0
- package/source/extensions.telemetry/deployment.ts +91 -0
- package/source/extensions.telemetry/index.ts +5 -0
- package/source/extensions.telemetry/ready.ts +33 -0
- package/source/index.ts +2 -0
- package/source/storages.mongodb/deployment.ts +22 -0
- package/source/storages.mongodb/index.ts +1 -0
- package/source/version.ts +10 -0
- package/transpiled/bindings.amqp/annotation.d.ts +10 -0
- package/transpiled/bindings.amqp/annotation.js +16 -0
- package/transpiled/bindings.amqp/annotation.js.map +1 -0
- package/transpiled/bindings.amqp/annotation.test.d.ts +1 -0
- package/transpiled/bindings.amqp/annotation.test.js +36 -0
- package/transpiled/bindings.amqp/annotation.test.js.map +1 -0
- package/transpiled/bindings.amqp/context.d.ts +7 -0
- package/transpiled/bindings.amqp/context.js +47 -0
- package/transpiled/bindings.amqp/context.js.map +1 -0
- package/transpiled/bindings.amqp/deployment.d.ts +4 -0
- package/transpiled/bindings.amqp/deployment.js +11 -0
- package/transpiled/bindings.amqp/deployment.js.map +1 -0
- package/transpiled/bindings.amqp/index.d.ts +6 -0
- package/transpiled/bindings.amqp/index.js +5 -0
- package/transpiled/bindings.amqp/index.js.map +1 -0
- package/transpiled/bindings.amqp/instance.d.ts +2 -0
- package/transpiled/bindings.amqp/instance.js +2 -0
- package/transpiled/bindings.amqp/instance.js.map +1 -0
- package/transpiled/bindings.amqp/properties.test.d.ts +1 -0
- package/transpiled/bindings.amqp/properties.test.js +7 -0
- package/transpiled/bindings.amqp/properties.test.js.map +1 -0
- package/transpiled/bindings.amqp/sources.d.ts +7 -0
- package/transpiled/bindings.amqp/sources.js +27 -0
- package/transpiled/bindings.amqp/sources.js.map +1 -0
- package/transpiled/bindings.loop/index.d.ts +2 -0
- package/transpiled/bindings.loop/index.js +2 -0
- package/transpiled/bindings.loop/index.js.map +1 -0
- package/transpiled/bindings.loop/properties.test.d.ts +1 -0
- package/transpiled/bindings.loop/properties.test.js +7 -0
- package/transpiled/bindings.loop/properties.test.js.map +1 -0
- package/transpiled/bridges.bash/const.d.ts +2 -0
- package/transpiled/bridges.bash/const.js +3 -0
- package/transpiled/bridges.bash/const.js.map +1 -0
- package/transpiled/bridges.bash/define.d.ts +3 -0
- package/transpiled/bridges.bash/define.js +25 -0
- package/transpiled/bridges.bash/define.js.map +1 -0
- package/transpiled/bridges.bash/index.d.ts +2 -0
- package/transpiled/bridges.bash/index.js +3 -0
- package/transpiled/bridges.bash/index.js.map +1 -0
- package/transpiled/bridges.node/define.d.ts +18 -0
- package/transpiled/bridges.node/define.js +46 -0
- package/transpiled/bridges.node/define.js.map +1 -0
- package/transpiled/bridges.node/exports.d.ts +16 -0
- package/transpiled/bridges.node/exports.js +134 -0
- package/transpiled/bridges.node/exports.js.map +1 -0
- package/transpiled/bridges.node/exports.test.d.ts +1 -0
- package/transpiled/bridges.node/exports.test.js +88 -0
- package/transpiled/bridges.node/exports.test.js.map +1 -0
- package/transpiled/bridges.node/index.d.ts +5 -0
- package/transpiled/bridges.node/index.js +4 -0
- package/transpiled/bridges.node/index.js.map +1 -0
- package/transpiled/bridges.node/operations.d.ts +13 -0
- package/transpiled/bridges.node/operations.js +96 -0
- package/transpiled/bridges.node/operations.js.map +1 -0
- package/transpiled/bridges.node/operations.test.d.ts +1 -0
- package/transpiled/bridges.node/operations.test.js +108 -0
- package/transpiled/bridges.node/operations.test.js.map +1 -0
- package/transpiled/bridges.node/sources.d.ts +7 -0
- package/transpiled/bridges.node/sources.js +36 -0
- package/transpiled/bridges.node/sources.js.map +1 -0
- package/transpiled/definition.d.ts +7 -0
- package/transpiled/definition.js +34 -0
- package/transpiled/definition.js.map +1 -0
- package/transpiled/digest/generate.d.ts +1 -0
- package/transpiled/digest/generate.js +60 -0
- package/transpiled/digest/generate.js.map +1 -0
- package/transpiled/digest/read.d.ts +16 -0
- package/transpiled/digest/read.js +22 -0
- package/transpiled/digest/read.js.map +1 -0
- package/transpiled/extensions.cadence/components.d.ts +3 -0
- package/transpiled/extensions.cadence/components.js +6 -0
- package/transpiled/extensions.cadence/components.js.map +1 -0
- package/transpiled/extensions.cadence/const.d.ts +21 -0
- package/transpiled/extensions.cadence/const.js +26 -0
- package/transpiled/extensions.cadence/const.js.map +1 -0
- package/transpiled/extensions.cadence/context.d.ts +3 -0
- package/transpiled/extensions.cadence/context.js +9 -0
- package/transpiled/extensions.cadence/context.js.map +1 -0
- package/transpiled/extensions.cadence/deployment.d.ts +9 -0
- package/transpiled/extensions.cadence/deployment.js +28 -0
- package/transpiled/extensions.cadence/deployment.js.map +1 -0
- package/transpiled/extensions.cadence/index.d.ts +7 -0
- package/transpiled/extensions.cadence/index.js +7 -0
- package/transpiled/extensions.cadence/index.js.map +1 -0
- package/transpiled/extensions.cadence/manifest.d.ts +11 -0
- package/transpiled/extensions.cadence/manifest.js +42 -0
- package/transpiled/extensions.cadence/manifest.js.map +1 -0
- package/transpiled/extensions.cadence/manifest.test.d.ts +1 -0
- package/transpiled/extensions.cadence/manifest.test.js +41 -0
- package/transpiled/extensions.cadence/manifest.test.js.map +1 -0
- package/transpiled/extensions.cadence/schemas.d.ts +4 -0
- package/transpiled/extensions.cadence/schemas.js +7 -0
- package/transpiled/extensions.cadence/schemas.js.map +1 -0
- package/transpiled/extensions.cadence/types.d.ts +34 -0
- package/transpiled/extensions.cadence/types.js +2 -0
- package/transpiled/extensions.cadence/types.js.map +1 -0
- package/transpiled/extensions.configuration/components.d.ts +3 -0
- package/transpiled/extensions.configuration/components.js +6 -0
- package/transpiled/extensions.configuration/components.js.map +1 -0
- package/transpiled/extensions.configuration/const.d.ts +18 -0
- package/transpiled/extensions.configuration/const.js +22 -0
- package/transpiled/extensions.configuration/const.js.map +1 -0
- package/transpiled/extensions.configuration/context.d.ts +4 -0
- package/transpiled/extensions.configuration/context.js +9 -0
- package/transpiled/extensions.configuration/context.js.map +1 -0
- package/transpiled/extensions.configuration/deployment.d.ts +17 -0
- package/transpiled/extensions.configuration/deployment.js +106 -0
- package/transpiled/extensions.configuration/deployment.js.map +1 -0
- package/transpiled/extensions.configuration/deployment.test.d.ts +1 -0
- package/transpiled/extensions.configuration/deployment.test.js +74 -0
- package/transpiled/extensions.configuration/deployment.test.js.map +1 -0
- package/transpiled/extensions.configuration/epoch.d.ts +2 -0
- package/transpiled/extensions.configuration/epoch.js +19 -0
- package/transpiled/extensions.configuration/epoch.js.map +1 -0
- package/transpiled/extensions.configuration/index.d.ts +9 -0
- package/transpiled/extensions.configuration/index.js +8 -0
- package/transpiled/extensions.configuration/index.js.map +1 -0
- package/transpiled/extensions.configuration/manifest.d.ts +5 -0
- package/transpiled/extensions.configuration/manifest.js +6 -0
- package/transpiled/extensions.configuration/manifest.js.map +1 -0
- package/transpiled/extensions.configuration/manifest.test.d.ts +1 -0
- package/transpiled/extensions.configuration/manifest.test.js +14 -0
- package/transpiled/extensions.configuration/manifest.test.js.map +1 -0
- package/transpiled/extensions.configuration/schemas.d.ts +3 -0
- package/transpiled/extensions.configuration/schemas.js +7 -0
- package/transpiled/extensions.configuration/schemas.js.map +1 -0
- package/transpiled/extensions.exposition/Annotation.d.ts +71 -0
- package/transpiled/extensions.exposition/Annotation.js +2 -0
- package/transpiled/extensions.exposition/Annotation.js.map +1 -0
- package/transpiled/extensions.exposition/components.d.ts +3 -0
- package/transpiled/extensions.exposition/components.js +6 -0
- package/transpiled/extensions.exposition/components.js.map +1 -0
- package/transpiled/extensions.exposition/const.d.ts +36 -0
- package/transpiled/extensions.exposition/const.js +37 -0
- package/transpiled/extensions.exposition/const.js.map +1 -0
- package/transpiled/extensions.exposition/deployment.d.ts +6 -0
- package/transpiled/extensions.exposition/deployment.js +75 -0
- package/transpiled/extensions.exposition/deployment.js.map +1 -0
- package/transpiled/extensions.exposition/index.d.ts +8 -0
- package/transpiled/extensions.exposition/index.js +8 -0
- package/transpiled/extensions.exposition/index.js.map +1 -0
- package/transpiled/extensions.exposition/manifest.d.ts +3 -0
- package/transpiled/extensions.exposition/manifest.js +39 -0
- package/transpiled/extensions.exposition/manifest.js.map +1 -0
- package/transpiled/extensions.exposition/manifest.test.d.ts +1 -0
- package/transpiled/extensions.exposition/manifest.test.js +38 -0
- package/transpiled/extensions.exposition/manifest.test.js.map +1 -0
- package/transpiled/extensions.exposition/schemas.d.ts +7 -0
- package/transpiled/extensions.exposition/schemas.js +10 -0
- package/transpiled/extensions.exposition/schemas.js.map +1 -0
- package/transpiled/extensions.exposition/schemas.test.d.ts +1 -0
- package/transpiled/extensions.exposition/schemas.test.js +22 -0
- package/transpiled/extensions.exposition/schemas.test.js.map +1 -0
- package/transpiled/extensions.exposition/shortcuts.d.ts +3 -0
- package/transpiled/extensions.exposition/shortcuts.js +13 -0
- package/transpiled/extensions.exposition/shortcuts.js.map +1 -0
- package/transpiled/extensions.exposition/syntax/index.d.ts +2 -0
- package/transpiled/extensions.exposition/syntax/index.js +3 -0
- package/transpiled/extensions.exposition/syntax/index.js.map +1 -0
- package/transpiled/extensions.exposition/syntax/parse.d.ts +4 -0
- package/transpiled/extensions.exposition/syntax/parse.js +112 -0
- package/transpiled/extensions.exposition/syntax/parse.js.map +1 -0
- package/transpiled/extensions.exposition/syntax/parse.test.d.ts +1 -0
- package/transpiled/extensions.exposition/syntax/parse.test.js +156 -0
- package/transpiled/extensions.exposition/syntax/parse.test.js.map +1 -0
- package/transpiled/extensions.exposition/syntax/types.d.ts +52 -0
- package/transpiled/extensions.exposition/syntax/types.js +11 -0
- package/transpiled/extensions.exposition/syntax/types.js.map +1 -0
- package/transpiled/extensions.fetch/context.d.ts +3 -0
- package/transpiled/extensions.fetch/context.js +9 -0
- package/transpiled/extensions.fetch/context.js.map +1 -0
- package/transpiled/extensions.fetch/index.d.ts +1 -0
- package/transpiled/extensions.fetch/index.js +2 -0
- package/transpiled/extensions.fetch/index.js.map +1 -0
- package/transpiled/extensions.introspection/annotation.d.ts +40 -0
- package/transpiled/extensions.introspection/annotation.js +39 -0
- package/transpiled/extensions.introspection/annotation.js.map +1 -0
- package/transpiled/extensions.introspection/components.d.ts +8 -0
- package/transpiled/extensions.introspection/components.js +12 -0
- package/transpiled/extensions.introspection/components.js.map +1 -0
- package/transpiled/extensions.introspection/const.d.ts +30 -0
- package/transpiled/extensions.introspection/const.js +35 -0
- package/transpiled/extensions.introspection/const.js.map +1 -0
- package/transpiled/extensions.introspection/deployment.d.ts +14 -0
- package/transpiled/extensions.introspection/deployment.js +41 -0
- package/transpiled/extensions.introspection/deployment.js.map +1 -0
- package/transpiled/extensions.introspection/index.d.ts +6 -0
- package/transpiled/extensions.introspection/index.js +7 -0
- package/transpiled/extensions.introspection/index.js.map +1 -0
- package/transpiled/extensions.introspection/manifest.d.ts +9 -0
- package/transpiled/extensions.introspection/manifest.js +16 -0
- package/transpiled/extensions.introspection/manifest.js.map +1 -0
- package/transpiled/extensions.introspection/schemas.d.ts +4 -0
- package/transpiled/extensions.introspection/schemas.js +7 -0
- package/transpiled/extensions.introspection/schemas.js.map +1 -0
- package/transpiled/extensions.realtime/components.d.ts +2 -0
- package/transpiled/extensions.realtime/components.js +5 -0
- package/transpiled/extensions.realtime/components.js.map +1 -0
- package/transpiled/extensions.realtime/deployment.d.ts +22 -0
- package/transpiled/extensions.realtime/deployment.js +53 -0
- package/transpiled/extensions.realtime/deployment.js.map +1 -0
- package/transpiled/extensions.realtime/index.d.ts +3 -0
- package/transpiled/extensions.realtime/index.js +3 -0
- package/transpiled/extensions.realtime/index.js.map +1 -0
- package/transpiled/extensions.stash/context.d.ts +3 -0
- package/transpiled/extensions.stash/context.js +9 -0
- package/transpiled/extensions.stash/context.js.map +1 -0
- package/transpiled/extensions.stash/deployment.d.ts +5 -0
- package/transpiled/extensions.stash/deployment.js +14 -0
- package/transpiled/extensions.stash/deployment.js.map +1 -0
- package/transpiled/extensions.stash/index.d.ts +2 -0
- package/transpiled/extensions.stash/index.js +3 -0
- package/transpiled/extensions.stash/index.js.map +1 -0
- package/transpiled/extensions.state/context.d.ts +6 -0
- package/transpiled/extensions.state/context.js +8 -0
- package/transpiled/extensions.state/context.js.map +1 -0
- package/transpiled/extensions.state/index.d.ts +1 -0
- package/transpiled/extensions.state/index.js +2 -0
- package/transpiled/extensions.state/index.js.map +1 -0
- package/transpiled/extensions.storages/Annotation.d.ts +8 -0
- package/transpiled/extensions.storages/Annotation.js +31 -0
- package/transpiled/extensions.storages/Annotation.js.map +1 -0
- package/transpiled/extensions.storages/context.d.ts +3 -0
- package/transpiled/extensions.storages/context.js +12 -0
- package/transpiled/extensions.storages/context.js.map +1 -0
- package/transpiled/extensions.storages/deployment.d.ts +5 -0
- package/transpiled/extensions.storages/deployment.js +64 -0
- package/transpiled/extensions.storages/deployment.js.map +1 -0
- package/transpiled/extensions.storages/index.d.ts +8 -0
- package/transpiled/extensions.storages/index.js +7 -0
- package/transpiled/extensions.storages/index.js.map +1 -0
- package/transpiled/extensions.storages/manifest.d.ts +1 -0
- package/transpiled/extensions.storages/manifest.js +8 -0
- package/transpiled/extensions.storages/manifest.js.map +1 -0
- package/transpiled/extensions.storages/schemas.d.ts +9 -0
- package/transpiled/extensions.storages/schemas.js +12 -0
- package/transpiled/extensions.storages/schemas.js.map +1 -0
- package/transpiled/extensions.storages/schemas.test.d.ts +1 -0
- package/transpiled/extensions.storages/schemas.test.js +59 -0
- package/transpiled/extensions.storages/schemas.test.js.map +1 -0
- package/transpiled/extensions.storages/secrets.d.ts +10 -0
- package/transpiled/extensions.storages/secrets.js +16 -0
- package/transpiled/extensions.storages/secrets.js.map +1 -0
- package/transpiled/extensions.telemetry/const.d.ts +4 -0
- package/transpiled/extensions.telemetry/const.js +6 -0
- package/transpiled/extensions.telemetry/const.js.map +1 -0
- package/transpiled/extensions.telemetry/context.d.ts +3 -0
- package/transpiled/extensions.telemetry/context.js +9 -0
- package/transpiled/extensions.telemetry/context.js.map +1 -0
- package/transpiled/extensions.telemetry/deployment.d.ts +18 -0
- package/transpiled/extensions.telemetry/deployment.js +49 -0
- package/transpiled/extensions.telemetry/deployment.js.map +1 -0
- package/transpiled/extensions.telemetry/index.d.ts +5 -0
- package/transpiled/extensions.telemetry/index.js +5 -0
- package/transpiled/extensions.telemetry/index.js.map +1 -0
- package/transpiled/extensions.telemetry/ready.d.ts +14 -0
- package/transpiled/extensions.telemetry/ready.js +16 -0
- package/transpiled/extensions.telemetry/ready.js.map +1 -0
- package/transpiled/index.d.ts +2 -0
- package/transpiled/index.js +3 -0
- package/transpiled/index.js.map +1 -0
- package/transpiled/storages.mongodb/deployment.d.ts +5 -0
- package/transpiled/storages.mongodb/deployment.js +14 -0
- package/transpiled/storages.mongodb/deployment.js.map +1 -0
- package/transpiled/storages.mongodb/index.d.ts +1 -0
- package/transpiled/storages.mongodb/index.js +2 -0
- package/transpiled/storages.mongodb/index.js.map +1 -0
- package/transpiled/version.d.ts +5 -0
- package/transpiled/version.js +8 -0
- package/transpiled/version.js.map +1 -0
- package/tsconfig.json +10 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
properties:
|
|
2
|
+
class:
|
|
3
|
+
type: string
|
|
4
|
+
resources:
|
|
5
|
+
# `null` deploys the service without any, which every deployment has to state one way
|
|
6
|
+
# or the other — see `migrations/262.md`.
|
|
7
|
+
type: object
|
|
8
|
+
nullable: true
|
|
9
|
+
properties:
|
|
10
|
+
cpu:
|
|
11
|
+
type: array
|
|
12
|
+
items:
|
|
13
|
+
type: string
|
|
14
|
+
minItems: 2
|
|
15
|
+
maxItems: 2
|
|
16
|
+
memory:
|
|
17
|
+
type: array
|
|
18
|
+
items:
|
|
19
|
+
type: string
|
|
20
|
+
minItems: 2
|
|
21
|
+
maxItems: 2
|
|
22
|
+
annotations:
|
|
23
|
+
type: object
|
|
24
|
+
patternProperties:
|
|
25
|
+
^.+$:
|
|
26
|
+
type: string
|
|
27
|
+
service:
|
|
28
|
+
type: object
|
|
29
|
+
properties:
|
|
30
|
+
annotations:
|
|
31
|
+
type: object
|
|
32
|
+
patternProperties:
|
|
33
|
+
^.+$:
|
|
34
|
+
type: string
|
|
35
|
+
debug:
|
|
36
|
+
type: boolean
|
|
37
|
+
ip:
|
|
38
|
+
type: string
|
|
39
|
+
minLength: 1
|
|
40
|
+
bouncer:
|
|
41
|
+
type: object
|
|
42
|
+
properties:
|
|
43
|
+
attempts:
|
|
44
|
+
type: integer
|
|
45
|
+
minimum: 1
|
|
46
|
+
interval:
|
|
47
|
+
type: integer
|
|
48
|
+
minimum: 1
|
|
49
|
+
additionalProperties: false
|
|
50
|
+
protocol:
|
|
51
|
+
type: string
|
|
52
|
+
enum: [h1, h2c]
|
|
53
|
+
oauth:
|
|
54
|
+
type: object
|
|
55
|
+
properties:
|
|
56
|
+
authorize:
|
|
57
|
+
description: The absolute URL of the consent page the application serves
|
|
58
|
+
type: string
|
|
59
|
+
pattern: ^https?://
|
|
60
|
+
resources:
|
|
61
|
+
description: Paths a token may be restricted to
|
|
62
|
+
type: array
|
|
63
|
+
items:
|
|
64
|
+
type: string
|
|
65
|
+
pattern: ^/
|
|
66
|
+
scopes:
|
|
67
|
+
type: array
|
|
68
|
+
items:
|
|
69
|
+
type: string
|
|
70
|
+
trust:
|
|
71
|
+
description: Origins whose Client ID Metadata Documents may be read
|
|
72
|
+
type: array
|
|
73
|
+
items:
|
|
74
|
+
type: string
|
|
75
|
+
pattern: ^https://
|
|
76
|
+
registration:
|
|
77
|
+
type: string
|
|
78
|
+
enum: [open, closed]
|
|
79
|
+
required:
|
|
80
|
+
- authorize
|
|
81
|
+
additionalProperties: false
|
|
82
|
+
rpc:
|
|
83
|
+
description: JSON-RPC at `/.rpc`; writing it is what turns the endpoint on
|
|
84
|
+
type: object
|
|
85
|
+
properties:
|
|
86
|
+
batch:
|
|
87
|
+
description: Calls one request may carry
|
|
88
|
+
type: integer
|
|
89
|
+
minimum: 1
|
|
90
|
+
additionalProperties: false
|
|
91
|
+
mcp:
|
|
92
|
+
description: MCP at `/.mcp`; writing it is what turns the endpoint on
|
|
93
|
+
type: object
|
|
94
|
+
properties:
|
|
95
|
+
name:
|
|
96
|
+
description: What the server calls itself
|
|
97
|
+
type: string
|
|
98
|
+
minLength: 1
|
|
99
|
+
instructions:
|
|
100
|
+
description: What a model is told before it calls anything here
|
|
101
|
+
type: string
|
|
102
|
+
origins:
|
|
103
|
+
description: Browser origins the endpoint answers; none without it
|
|
104
|
+
type: array
|
|
105
|
+
items:
|
|
106
|
+
type: string
|
|
107
|
+
pattern: ^https?://
|
|
108
|
+
anonymous:
|
|
109
|
+
description: Whether the endpoint answers without a credential
|
|
110
|
+
type: boolean
|
|
111
|
+
required:
|
|
112
|
+
- name
|
|
113
|
+
additionalProperties: false
|
|
114
|
+
/: {}
|
|
115
|
+
authorities:
|
|
116
|
+
type: object
|
|
117
|
+
patternProperties:
|
|
118
|
+
^.+$:
|
|
119
|
+
type: string
|
|
120
|
+
type: object
|
|
121
|
+
required:
|
|
122
|
+
- authorities
|
|
123
|
+
dependencies:
|
|
124
|
+
bouncer:
|
|
125
|
+
- ip
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
description: One JSON-RPC call, as the envelope carries it
|
|
2
|
+
properties:
|
|
3
|
+
jsonrpc:
|
|
4
|
+
const: '2.0'
|
|
5
|
+
method:
|
|
6
|
+
type: string
|
|
7
|
+
minLength: 1
|
|
8
|
+
params:
|
|
9
|
+
description: By name only, because `io:input` validates an object
|
|
10
|
+
type: object
|
|
11
|
+
id:
|
|
12
|
+
description: Absent makes the call a notification, which answers nothing
|
|
13
|
+
type: [string, number]
|
|
14
|
+
required:
|
|
15
|
+
- jsonrpc
|
|
16
|
+
- method
|
|
17
|
+
additionalProperties: false
|
|
18
|
+
type: object
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
properties:
|
|
2
|
+
verb:
|
|
3
|
+
type: string
|
|
4
|
+
pattern: ^(GET|HEAD|POST|PUT|PATCH|DELETE|LOCK|UNLOCK)$
|
|
5
|
+
mapping:
|
|
6
|
+
properties:
|
|
7
|
+
namespace:
|
|
8
|
+
type: string
|
|
9
|
+
component:
|
|
10
|
+
type: string
|
|
11
|
+
endpoint:
|
|
12
|
+
type: string
|
|
13
|
+
query:
|
|
14
|
+
$ref: query
|
|
15
|
+
paged:
|
|
16
|
+
type: boolean
|
|
17
|
+
additionalProperties: false
|
|
18
|
+
type: object
|
|
19
|
+
directives:
|
|
20
|
+
type: array
|
|
21
|
+
items:
|
|
22
|
+
$ref: directive
|
|
23
|
+
type: object
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
properties:
|
|
2
|
+
protected:
|
|
3
|
+
type: boolean
|
|
4
|
+
isolated:
|
|
5
|
+
type: boolean
|
|
6
|
+
forward:
|
|
7
|
+
type: string
|
|
8
|
+
routes:
|
|
9
|
+
type: array
|
|
10
|
+
items:
|
|
11
|
+
$ref: route
|
|
12
|
+
methods:
|
|
13
|
+
type: array
|
|
14
|
+
items:
|
|
15
|
+
$ref: method
|
|
16
|
+
directives:
|
|
17
|
+
type: array
|
|
18
|
+
items:
|
|
19
|
+
$ref: directive
|
|
20
|
+
version:
|
|
21
|
+
type: string
|
|
22
|
+
type: object
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
properties:
|
|
2
|
+
id:
|
|
3
|
+
type: string
|
|
4
|
+
criteria:
|
|
5
|
+
type: string
|
|
6
|
+
sort:
|
|
7
|
+
type: string
|
|
8
|
+
search:
|
|
9
|
+
type: boolean
|
|
10
|
+
sample:
|
|
11
|
+
type: integer
|
|
12
|
+
omit:
|
|
13
|
+
$ref: range
|
|
14
|
+
limit:
|
|
15
|
+
$ref: range
|
|
16
|
+
selectors:
|
|
17
|
+
type: array
|
|
18
|
+
items:
|
|
19
|
+
type: string
|
|
20
|
+
projection:
|
|
21
|
+
type: array
|
|
22
|
+
items:
|
|
23
|
+
type: string
|
|
24
|
+
parameters:
|
|
25
|
+
type: array
|
|
26
|
+
items:
|
|
27
|
+
type: string
|
|
28
|
+
deleted:
|
|
29
|
+
type: boolean
|
|
30
|
+
nullable: true
|
|
31
|
+
type: object
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
properties:
|
|
2
|
+
id:
|
|
3
|
+
type: string
|
|
4
|
+
criteria:
|
|
5
|
+
type: string
|
|
6
|
+
search:
|
|
7
|
+
type: string
|
|
8
|
+
sample:
|
|
9
|
+
type: number
|
|
10
|
+
sort:
|
|
11
|
+
type: string
|
|
12
|
+
omit:
|
|
13
|
+
type: number
|
|
14
|
+
limit:
|
|
15
|
+
type: number
|
|
16
|
+
version:
|
|
17
|
+
type: number
|
|
18
|
+
additionalProperties: false
|
|
19
|
+
type: object
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# context.toa.yaml introspection annotation
|
|
2
|
+
properties:
|
|
3
|
+
samples:
|
|
4
|
+
type: boolean
|
|
5
|
+
interval:
|
|
6
|
+
type: integer
|
|
7
|
+
minimum: 1
|
|
8
|
+
threshold:
|
|
9
|
+
type: integer
|
|
10
|
+
minimum: 1
|
|
11
|
+
ui:
|
|
12
|
+
type: boolean
|
|
13
|
+
resources:
|
|
14
|
+
# `null` deploys the service without any, which every deployment has to state one way
|
|
15
|
+
# or the other — see `migrations/262.md`.
|
|
16
|
+
type: object
|
|
17
|
+
nullable: true
|
|
18
|
+
properties:
|
|
19
|
+
cpu:
|
|
20
|
+
type: array
|
|
21
|
+
items:
|
|
22
|
+
type: string
|
|
23
|
+
minItems: 2
|
|
24
|
+
maxItems: 2
|
|
25
|
+
memory:
|
|
26
|
+
type: array
|
|
27
|
+
items:
|
|
28
|
+
type: string
|
|
29
|
+
minItems: 2
|
|
30
|
+
maxItems: 2
|
|
31
|
+
type: object
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
type: object
|
|
2
|
+
properties:
|
|
3
|
+
provider:
|
|
4
|
+
const: cloudinary
|
|
5
|
+
environment:
|
|
6
|
+
type: string
|
|
7
|
+
type:
|
|
8
|
+
enum:
|
|
9
|
+
- image
|
|
10
|
+
- video
|
|
11
|
+
prefix:
|
|
12
|
+
type: string
|
|
13
|
+
eager:
|
|
14
|
+
type: array
|
|
15
|
+
items:
|
|
16
|
+
type: object
|
|
17
|
+
transformations:
|
|
18
|
+
type: array
|
|
19
|
+
items:
|
|
20
|
+
type: object
|
|
21
|
+
properties:
|
|
22
|
+
extension:
|
|
23
|
+
type: string
|
|
24
|
+
transformation:
|
|
25
|
+
anyOf:
|
|
26
|
+
- type: object
|
|
27
|
+
- type: array
|
|
28
|
+
items:
|
|
29
|
+
type: object
|
|
30
|
+
optional:
|
|
31
|
+
type: boolean
|
|
32
|
+
required:
|
|
33
|
+
- extension
|
|
34
|
+
- transformation
|
|
35
|
+
required:
|
|
36
|
+
- environment
|
|
37
|
+
- type
|
|
38
|
+
additionalProperties: false
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as pointer from '@toa.io/pointer'
|
|
2
|
+
import { type URIMap } from '@toa.io/pointer'
|
|
3
|
+
|
|
4
|
+
export function normalize(declaration: string | Declaration): Annotation {
|
|
5
|
+
const annotation = expand(declaration)
|
|
6
|
+
const context = pointer.normalize(annotation.context)
|
|
7
|
+
const sources = pointer.normalize(annotation.sources)
|
|
8
|
+
|
|
9
|
+
return { context, sources }
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function expand(declaration: string | Declaration): Declaration {
|
|
13
|
+
if (typeof declaration === 'string') return { context: { '.': [declaration] } }
|
|
14
|
+
else if (Array.isArray(declaration)) return { context: { '.': declaration } }
|
|
15
|
+
else return declaration
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface Annotation {
|
|
19
|
+
context: URIMap
|
|
20
|
+
sources?: URIMap
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface Declaration {
|
|
24
|
+
context: string | Record<string, string | string[]>
|
|
25
|
+
sources?: Record<string, string | string[]>
|
|
26
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { type Dependency, type Variable } from '@toa.io/operations'
|
|
2
|
+
import { naming } from '@toa.io/pointer'
|
|
3
|
+
import { type Annotation } from './annotation.js'
|
|
4
|
+
|
|
5
|
+
export function createDependency(context: Context): Dependency {
|
|
6
|
+
const global: Variable[] = []
|
|
7
|
+
const variables = { global }
|
|
8
|
+
|
|
9
|
+
const contextVariables = createVariables(context)
|
|
10
|
+
|
|
11
|
+
global.push(...contextVariables)
|
|
12
|
+
|
|
13
|
+
return { variables }
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function createVariables(context: Context): Variable[] {
|
|
17
|
+
const variables: Variable[] = []
|
|
18
|
+
const uris = JSON.stringify(context)
|
|
19
|
+
|
|
20
|
+
const contextVariable: Variable = {
|
|
21
|
+
name: VARIABLE,
|
|
22
|
+
value: uris
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
const secrets = createSecrets(context)
|
|
26
|
+
|
|
27
|
+
variables.push(contextVariable, ...secrets)
|
|
28
|
+
|
|
29
|
+
return variables
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function createSecrets(context: Context): Variable[] {
|
|
33
|
+
const secrets: Variable[] = []
|
|
34
|
+
|
|
35
|
+
for (const key of Object.keys(context)) {
|
|
36
|
+
const keySecrets = createKeySecrets(key)
|
|
37
|
+
|
|
38
|
+
secrets.push(...keySecrets)
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return secrets
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function createKeySecrets(key: string): Variable[] {
|
|
45
|
+
const username = createSecretVariable(key, 'username')
|
|
46
|
+
const password = createSecretVariable(key, 'password')
|
|
47
|
+
|
|
48
|
+
return [username, password]
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
function createSecretVariable(key: string, secretKey: string): Variable {
|
|
52
|
+
const varKey = key === '.' ? '' : key
|
|
53
|
+
const varName = naming.nameVariable(ID, varKey, secretKey.toUpperCase())
|
|
54
|
+
const secName = naming.nameSecret(ID, key)
|
|
55
|
+
|
|
56
|
+
return {
|
|
57
|
+
name: varName,
|
|
58
|
+
secret: {
|
|
59
|
+
name: secName,
|
|
60
|
+
key: secretKey
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export const ID = 'amqp-context'
|
|
66
|
+
export const VARIABLE = 'TOA_AMQP_CONTEXT'
|
|
67
|
+
|
|
68
|
+
type Context = Annotation['context']
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Dependency } from '@toa.io/operations'
|
|
2
|
+
import { merge } from '@toa.io/generic'
|
|
3
|
+
import { type Declaration, normalize } from './annotation.js'
|
|
4
|
+
import * as sources from './sources.js'
|
|
5
|
+
import * as context from './context.js'
|
|
6
|
+
import { type Instance } from './instance.js'
|
|
7
|
+
|
|
8
|
+
export function deployment(instances: Instance[], declaration: Declaration): Dependency {
|
|
9
|
+
const annotation = normalize(declaration)
|
|
10
|
+
const contextDependency = context.createDependency(annotation.context)
|
|
11
|
+
const sourcesDependency = sources.createDependency(annotation.sources, instances)
|
|
12
|
+
|
|
13
|
+
return merge(contextDependency, sourcesDependency)
|
|
14
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { bindings } from '@toa.io/core/types'
|
|
2
|
+
|
|
3
|
+
export const properties: bindings.Properties = { async: true }
|
|
4
|
+
|
|
5
|
+
export { deployment } from './deployment.js'
|
|
6
|
+
export { ID as CONTEXT, VARIABLE as CONTEXT_VARIABLE } from './context.js'
|
|
7
|
+
export { ID as SOURCES } from './sources.js'
|
|
8
|
+
|
|
9
|
+
export type { Annotation, Declaration } from './annotation.js'
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { createVariables, type Request } from '@toa.io/pointer'
|
|
2
|
+
import { type Manifest } from '@toa.io/norm'
|
|
3
|
+
import { type Dependency } from '@toa.io/operations'
|
|
4
|
+
import { type Instance } from './instance.js'
|
|
5
|
+
import { type Annotation } from './annotation.js'
|
|
6
|
+
|
|
7
|
+
export function createDependency(sources: Sources, instances: Instance[]): Dependency {
|
|
8
|
+
const requests = []
|
|
9
|
+
|
|
10
|
+
for (const instance of instances) {
|
|
11
|
+
const request = createRequest(instance)
|
|
12
|
+
|
|
13
|
+
if (request !== null) requests.push(request)
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
const variables = createVariables(ID, sources, requests)
|
|
17
|
+
|
|
18
|
+
return { variables }
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function createRequest(instance: Instance): Request | null {
|
|
22
|
+
const group = instance.locator.label
|
|
23
|
+
const selectors = createSelectors(instance.component)
|
|
24
|
+
|
|
25
|
+
if (selectors === null) return null
|
|
26
|
+
else return { group, selectors }
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function createSelectors(component: Manifest): string[] | null {
|
|
30
|
+
if (component.receivers === undefined) return null
|
|
31
|
+
|
|
32
|
+
const sources = Object.values(component.receivers).map((receiver) => receiver.source)
|
|
33
|
+
|
|
34
|
+
return sources.filter((source) => source !== undefined) as string[]
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export const ID = 'amqp-sources'
|
|
38
|
+
|
|
39
|
+
type Sources = Annotation['sources']
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as fs from 'node:fs/promises'
|
|
2
|
+
import { join, extname } from 'node:path'
|
|
3
|
+
import { DIR, EXT } from './const.js'
|
|
4
|
+
import type { component } from '@toa.io/norm'
|
|
5
|
+
|
|
6
|
+
export async function operations(root: string): Promise<component.Operations> {
|
|
7
|
+
const path = join(root, DIR)
|
|
8
|
+
const names = await list(path)
|
|
9
|
+
|
|
10
|
+
const promises = names.map(async (name) => operation(root, name))
|
|
11
|
+
|
|
12
|
+
const operations = await Promise.all(promises)
|
|
13
|
+
|
|
14
|
+
return operations.reduce<component.Operations>((acc, operation, index) => {
|
|
15
|
+
acc[names[index]] = operation
|
|
16
|
+
|
|
17
|
+
return acc
|
|
18
|
+
}, {})
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export async function operation(
|
|
22
|
+
root: string,
|
|
23
|
+
name: string
|
|
24
|
+
): Promise<component.Operation> {
|
|
25
|
+
const path = join(root, DIR, name + EXT)
|
|
26
|
+
|
|
27
|
+
await fs.access(path, fs.constants.F_OK)
|
|
28
|
+
|
|
29
|
+
return { type: 'computation' }
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
async function list(path: string): Promise<string[]> {
|
|
33
|
+
const files = await fs.readdir(path)
|
|
34
|
+
|
|
35
|
+
return files
|
|
36
|
+
.filter((file) => extname(file) === EXT)
|
|
37
|
+
.map((file) => file.slice(0, -EXT.length))
|
|
38
|
+
}
|