2020-09-22 17:09:27 +00:00
|
|
|
{
|
2022-02-03 16:07:13 +00:00
|
|
|
"version": "1.2.3",
|
2020-09-22 17:09:27 +00:00
|
|
|
"name": "example",
|
2021-12-08 05:21:04 +00:00
|
|
|
"allowedPackageNames": ["foo", "bar"],
|
2022-01-11 01:38:54 +00:00
|
|
|
"pluginDownloadURL": "example.com/download",
|
2020-09-22 17:09:27 +00:00
|
|
|
"types": {
|
|
|
|
"example::Object": {
|
|
|
|
"properties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/resources/example::Resource"
|
|
|
|
},
|
|
|
|
"bar": {
|
|
|
|
"type": "string"
|
2021-03-11 05:04:30 +00:00
|
|
|
},
|
|
|
|
"others": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"type": "object",
|
|
|
|
"$ref": "#/types/example::SomeOtherObject"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"description": "List of lists of other objects"
|
|
|
|
},
|
2021-03-31 05:23:04 +00:00
|
|
|
"configs": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"type": "object",
|
|
|
|
"$ref": "#/types/example::ConfigMap"
|
|
|
|
}
|
|
|
|
},
|
2021-03-11 05:04:30 +00:00
|
|
|
"stillOthers": {
|
|
|
|
"type": "object",
|
|
|
|
"additionalProperties": {
|
|
|
|
"type": "array",
|
|
|
|
"items": {
|
|
|
|
"type": "object",
|
|
|
|
"$ref": "#/types/example::SomeOtherObject"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"description": "Mapping from string to list of some other object"
|
2020-09-22 17:09:27 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
2021-01-27 07:16:42 +00:00
|
|
|
},
|
|
|
|
"example::OtherResourceOutput": {
|
|
|
|
"properties": {
|
|
|
|
"foo": {
|
|
|
|
"type": "string"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
2021-03-11 05:04:30 +00:00
|
|
|
},
|
|
|
|
"example::SomeOtherObject": {
|
|
|
|
"properties": {
|
|
|
|
"baz": {
|
|
|
|
"type": "string"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
2021-03-31 05:23:04 +00:00
|
|
|
},
|
|
|
|
"example::ConfigMap": {
|
|
|
|
"properties": {
|
|
|
|
"config": {
|
|
|
|
"type": "string"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
2021-07-13 16:39:58 +00:00
|
|
|
},
|
2021-11-16 23:53:28 +00:00
|
|
|
"example::EnumOverlay": {
|
|
|
|
"type": "string",
|
|
|
|
"enum": [
|
|
|
|
{
|
|
|
|
"name": "SomeEnumValue",
|
|
|
|
"value": "SOME_ENUM_VALUE"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"isOverlay": true
|
|
|
|
},
|
2021-11-12 00:00:03 +00:00
|
|
|
"example::ConfigMapOverlay": {
|
|
|
|
"isOverlay": true,
|
|
|
|
"properties": {
|
|
|
|
"config": {
|
|
|
|
"type": "string"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
|
|
|
},
|
2021-07-13 16:39:58 +00:00
|
|
|
"example::ObjectWithNodeOptionalInputs": {
|
|
|
|
"properties": {
|
|
|
|
"foo": {
|
|
|
|
"type": "string"
|
|
|
|
},
|
|
|
|
"bar": {
|
|
|
|
"type": "integer"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"required": ["foo"],
|
|
|
|
"language": {
|
|
|
|
"nodejs": {
|
|
|
|
"requiredInputs": []
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
2020-09-22 17:09:27 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"resources": {
|
|
|
|
"example::Resource": {
|
|
|
|
"properties": {
|
|
|
|
"bar": {
|
2021-05-26 22:00:51 +00:00
|
|
|
"type": "string",
|
|
|
|
"secret": true
|
2022-02-26 22:26:16 +00:00
|
|
|
},
|
|
|
|
"baz": {
|
|
|
|
"type": "string",
|
|
|
|
"secret": true
|
2020-09-22 17:09:27 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"inputProperties": {
|
|
|
|
"bar": {
|
2021-05-26 22:00:51 +00:00
|
|
|
"type": "string",
|
2022-05-17 20:59:47 +00:00
|
|
|
"secret": true,
|
|
|
|
"willReplaceOnChanges": true
|
2020-09-22 17:09:27 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
|
|
|
},
|
|
|
|
"example::OtherResource": {
|
2020-09-24 00:23:46 +00:00
|
|
|
"isComponent": true,
|
2020-09-22 17:09:27 +00:00
|
|
|
"properties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/resources/example::Resource"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"inputProperties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/resources/example::Resource"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
2021-07-13 16:39:58 +00:00
|
|
|
},
|
2021-12-08 05:21:04 +00:00
|
|
|
"bar::BarResource": {
|
|
|
|
"isComponent": true,
|
|
|
|
"properties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/resources/example::Resource"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"inputProperties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/resources/example::Resource"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
|
|
|
},
|
|
|
|
"foo::FooResource": {
|
|
|
|
"isComponent": true,
|
|
|
|
"properties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/resources/example::Resource"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"inputProperties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/resources/example::Resource"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
|
|
|
},
|
|
|
|
|
2021-11-12 00:00:03 +00:00
|
|
|
"example::OverlayResource": {
|
|
|
|
"isOverlay": true,
|
|
|
|
"properties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/types/example::ConfigMapOverlay"
|
2021-11-16 23:53:28 +00:00
|
|
|
},
|
|
|
|
"bar": {
|
|
|
|
"$ref": "#/types/example::EnumOverlay"
|
2021-11-12 00:00:03 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"inputProperties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/types/example::ConfigMapOverlay"
|
2021-11-16 23:53:28 +00:00
|
|
|
},
|
|
|
|
"bar": {
|
|
|
|
"$ref": "#/types/example::EnumOverlay"
|
2021-11-12 00:00:03 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
|
|
|
},
|
2021-07-13 16:39:58 +00:00
|
|
|
"example::TypeUses": {
|
|
|
|
"properties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/types/example::Object"
|
|
|
|
},
|
|
|
|
"bar": {
|
|
|
|
"$ref": "#/types/example::SomeOtherObject"
|
|
|
|
},
|
|
|
|
"baz": {
|
|
|
|
"$ref": "#/types/example::ObjectWithNodeOptionalInputs"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"inputProperties": {
|
|
|
|
"foo": {
|
|
|
|
"$ref": "#/types/example::Object"
|
|
|
|
},
|
|
|
|
"bar": {
|
|
|
|
"$ref": "#/types/example::SomeOtherObject"
|
|
|
|
},
|
|
|
|
"baz": {
|
|
|
|
"$ref": "#/types/example::ObjectWithNodeOptionalInputs"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"type": "object"
|
2020-09-22 17:09:27 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"functions": {
|
|
|
|
"example::argFunction": {
|
|
|
|
"inputs": {
|
|
|
|
"properties": {
|
|
|
|
"arg1": {
|
2020-09-23 19:39:25 +00:00
|
|
|
"$ref": "#/resources/example::Resource"
|
2020-09-22 17:09:27 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"outputs": {
|
|
|
|
"properties": {
|
|
|
|
"result": {
|
2020-09-23 19:39:25 +00:00
|
|
|
"$ref": "#/resources/example::Resource"
|
2020-09-22 17:09:27 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2021-11-12 00:00:03 +00:00
|
|
|
},
|
|
|
|
"example::overlayFunction": {
|
|
|
|
"isOverlay": true,
|
|
|
|
"inputs": {
|
|
|
|
"properties": {
|
|
|
|
"arg1": {
|
|
|
|
"$ref": "#/resources/example::Resource"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"outputs": {
|
|
|
|
"properties": {
|
|
|
|
"result": {
|
|
|
|
"$ref": "#/resources/example::Resource"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2020-09-22 17:09:27 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"language": {
|
2021-09-15 16:49:36 +00:00
|
|
|
"csharp": {
|
2022-02-03 16:07:13 +00:00
|
|
|
"respectSchemaVersion": true
|
2021-09-15 16:49:36 +00:00
|
|
|
},
|
2021-01-15 18:13:01 +00:00
|
|
|
"go": {
|
2023-06-14 19:59:47 +00:00
|
|
|
"importBasePath": "simple-resource-schema/example",
|
2022-02-03 16:07:13 +00:00
|
|
|
"generateExtraInputTypes": true,
|
|
|
|
"respectSchemaVersion": true
|
2021-01-15 18:13:01 +00:00
|
|
|
},
|
2021-09-15 16:49:36 +00:00
|
|
|
"nodejs": {
|
|
|
|
"devDependencies": {
|
2023-06-23 21:32:03 +00:00
|
|
|
"@types/mocha": "latest",
|
|
|
|
"@types/node": "ts4.3",
|
|
|
|
"mocha": "latest",
|
|
|
|
"ts-node": "latest"
|
2022-02-03 16:07:13 +00:00
|
|
|
},
|
2023-06-23 21:32:03 +00:00
|
|
|
"extraTypeScriptFiles": [
|
|
|
|
"tests/codegen.spec.ts"
|
|
|
|
],
|
2023-08-03 17:04:54 +00:00
|
|
|
"respectSchemaVersion": true
|
2021-09-15 16:49:36 +00:00
|
|
|
},
|
2022-02-03 16:07:13 +00:00
|
|
|
"python": {
|
|
|
|
"respectSchemaVersion": true
|
|
|
|
}
|
2020-09-22 17:09:27 +00:00
|
|
|
}
|
|
|
|
}
|