ToolJet/plugins/packages/mongodb/lib/manifest.json
Parth 993c925b12 Feature: Add SSL support to MongoDB datasource (#2430)
* Add TLS support inputs in frontend

* Add backend logic for TLS support

* Add TLS inputs types

* Update TLS label

* Change ssl_certificate to tls_certificate

* Update the file handling in tls

* Update connection logic

* Fix unlinking file issue

* Remove catch block for unlinking file

* Handle tls certs directly
2024-11-22 12:51:48 +05:30

179 lines
No EOL
4.3 KiB
JSON

{
"$schema": "https://raw.githubusercontent.com/ToolJet/ToolJet/develop/plugins/schemas/manifest.schema.json",
"title": "Mongodb datasource",
"description": "A schema defining mongodb datasource",
"type": "database",
"source": {
"name": "MongoDB",
"kind": "mongodb",
"exposedVariables": {
"isLoading": false,
"data": {},
"rawData": {}
},
"options": {
"host": {
"type": "string"
},
"port": {
"type": "string"
},
"username": {
"type": "string"
},
"password": {
"type": "string",
"encrypted": true
},
"connection_type": {
"type": "options"
},
"connection_string": {
"type": "string",
"encrypted": true
},
"ca_cert": {
"encrypted": true
},
"client_key": {
"encrypted": true
},
"client_cert": {
"encrypted": true
},
"root_cert": {
"encrypted": true
}
}
},
"defaults": {
"database": {
"value": ""
},
"host": {
"value": "localhost"
},
"port": {
"value": 27017
},
"username": {
"value": ""
},
"password": {
"value": ""
},
"connection_type": {
"value": "manual"
},
"connection_string": {
"value": ""
},
"tls_certificate": {
"value": "none"
}
},
"properties": {
"connection_type": {
"label": "Connection type",
"key": "connection_type",
"type": "dropdown-component-flip",
"description": "Single select dropdown for connection_type",
"list": [
{
"name": "Manual connection",
"value": "manual"
},
{
"name": "Connect using connection string",
"value": "string"
}
]
},
"manual": {
"tls_certificate": {
"label": "TLS/SSL Certificate",
"key": "tls_certificate",
"type": "dropdown-component-flip",
"description": "Single select dropdown for choosing certificates",
"list": [
{ "value": "ca_certificate", "name": "CA certificate" },
{ "value": "client_certificate", "name": "Client certificate" },
{ "value": "none", "name": "None" }
],
"commonFields":{
"host": {
"label": "Host",
"key": "host",
"type": "text",
"description": "Enter host"
},
"port": {
"label": "Port",
"key": "port",
"type": "text",
"description": "Enter port"
},
"database": {
"label": "Database Name",
"key": "database",
"type": "text",
"description": "Name of the database"
},
"username": {
"label": "Username",
"key": "username",
"type": "text",
"description": "Enter username"
},
"password": {
"label": "Password",
"key": "password",
"type": "password",
"description": "Enter password"
}
}
},
"ca_certificate": {
"ca_cert": {
"label": "CA Cert",
"key": "ca_cert",
"type": "textarea",
"encrypted": true,
"description": "Enter CA certificate"
}
},
"client_certificate": {
"client_key": {
"label": "Client Key",
"key": "client_key",
"type": "textarea",
"encrypted": true,
"description": "Enter client key"
},
"client_cert": {
"label": "Client Cert",
"key": "client_cert",
"type": "textarea",
"encrypted": true,
"description": "Enter client certificate"
},
"ca_cert": {
"label": "CA Cert",
"key": "ca_cert",
"type": "textarea",
"encrypted": true,
"description": "Enter CA certificate"
}
}
},
"string": {
"connection_string": {
"label": "Connection string",
"key": "connection_string",
"type": "text",
"encrypted": true,
"description": "mongodb+srv://tooljet:<password>@cluster0.i1vq4.mongodb.net/mydb?retryWrites=true&w=majority"
}
}
}
}