{
"$defs": {
"SAMPluginDataSqlConnectionMetadata": {
"description": "Smarter API Plugin Manifest - Metadata class.",
"properties": {
"name": {
"description": "The name of the manifest resource",
"title": "Name",
"type": "string"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Plugin.metadata.description[str]: Required, a brief description of the Plugin.",
"title": "Description"
},
"version": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Plugin.metadata.version[str]: Required, the version of the Plugin.",
"title": "Version"
},
"tags": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "The tags of the manifest",
"title": "Tags"
},
"annotations": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "The annotations of the manifest",
"title": "Annotations"
}
},
"required": [
"name"
],
"title": "SAMPluginDataSqlConnectionMetadata",
"type": "object"
},
"SAMPluginDataSqlConnectionSpec": {
"description": "Smarter API Sql Connection Manifest SqlConnection.spec",
"properties": {
"connection": {
"$ref": "#/$defs/SqlConnection",
"description": "Plugin.spec.selector[obj]: the selector logic to use for the Plugin"
}
},
"required": [
"connection"
],
"title": "SAMPluginDataSqlConnectionSpec",
"type": "object"
},
"SAMPluginDataSqlConnectionStatus": {
"description": "Smarter API Plugin Manifest - Status class.",
"properties": {},
"title": "SAMPluginDataSqlConnectionStatus",
"type": "object"
},
"SqlConnection": {
"description": "Smarter API - generic SQL Connection class.",
"properties": {
"db_engine": {
"description": "a valid SQL database engine. Common db_engines: [django.db.backends.postgresql, django.db.backends.mysql, django.db.backends.oracle, django.db.backends.sqlite3, django.db.backends.mssql, django.db.backends.sybase]",
"title": "Db Engine",
"type": "string"
},
"hostname": {
"description": "The remote host of the SQL connection. Should be a valid internet domain name. Example: localhost or mysql.mycompany.com ",
"title": "Hostname",
"type": "string"
},
"port": {
"default": null,
"description": "The port of the SQL connection. Default values are assigned based on the db_engine: MYSQL: 3306, POSTGRES: 5432, ORACLE: 1521, SQLITE: None, MSSQL: 1433.",
"title": "Port",
"type": "integer"
},
"database": {
"description": "The name of the database to connect to. Examples: sales or myd",
"title": "Database",
"type": "string"
},
"username": {
"description": "The database username",
"title": "Username",
"type": "string"
},
"password": {
"description": "The password",
"title": "Password",
"type": "string"
},
"proxy_host": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The remote host of the SQL proxy connection. Should be a valid internet domain name. Example: mysql.mycompany.com ",
"title": "Proxy Host"
},
"proxy_port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "The port of the SQL proxy connection. Default values are assigned based on the db_engine: MYSQL: 3306, POSTGRES: 5432, ORACLE: 1521, SQLITE: None, MSSQL: 1433.",
"title": "Proxy Port"
},
"proxy_username": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The username for the proxy connection",
"title": "Proxy Username"
},
"proxy_password": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The password for the proxy connection",
"title": "Proxy Password"
}
},
"required": [
"db_engine",
"hostname",
"database",
"username",
"password"
],
"title": "SqlConnection",
"type": "object"
}
},
"description": "Smarter API Manifest - Plugin Data SQL Connection Model",
"properties": {
"apiVersion": {
"description": "apiVersion[String]: Required. The API version of the AbstractSAMBase.",
"title": "Apiversion",
"type": "string"
},
"kind": {
"description": "kind[String]: Required. The kind of resource described by the manifest.",
"title": "Kind",
"type": "string"
},
"metadata": {
"$ref": "#/$defs/SAMPluginDataSqlConnectionMetadata",
"description": "Plugin.metadata[obj]: Required, the Plugin metadata."
},
"spec": {
"$ref": "#/$defs/SAMPluginDataSqlConnectionSpec",
"description": "Plugin.spec[obj]: Required, the Plugin specification."
},
"status": {
"anyOf": [
{
"$ref": "#/$defs/SAMPluginDataSqlConnectionStatus"
},
{
"type": "null"
}
],
"default": null,
"description": "Plugin.status[obj]: Optional, Read-only. Stateful status information about the Plugin."
}
},
"required": [
"apiVersion",
"kind",
"metadata",
"spec"
],
"title": "SAMPluginDataSqlConnection",
"type": "object"
}