* 3962: Add oneOf schema rules validation for acceptance test * Add spec acceptance test for mssql and postgres connectors Co-authored-by: Dmytro Rezchykov <dmitry.rezchykov@zazmic.com>
103 lines
3.3 KiB
JSON
103 lines
3.3 KiB
JSON
{
|
|
"documentationUrl": "https://docs.airbyte.io/integrations/sources/postgres",
|
|
"connectionSpecification": {
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"title": "Postgres Source Spec",
|
|
"type": "object",
|
|
"required": ["host", "port", "database", "username"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"host": {
|
|
"title": "Host",
|
|
"description": "Hostname of the database.",
|
|
"type": "string",
|
|
"order": 0
|
|
},
|
|
"port": {
|
|
"title": "Port",
|
|
"description": "Port of the database.",
|
|
"type": "integer",
|
|
"minimum": 0,
|
|
"maximum": 65536,
|
|
"default": 5432,
|
|
"examples": ["5432"],
|
|
"order": 1
|
|
},
|
|
"database": {
|
|
"title": "DB Name",
|
|
"description": "Name of the database.",
|
|
"type": "string",
|
|
"order": 2
|
|
},
|
|
"username": {
|
|
"title": "User",
|
|
"description": "Username to use to access the database.",
|
|
"type": "string",
|
|
"order": 3
|
|
},
|
|
"password": {
|
|
"title": "Password",
|
|
"description": "Password associated with the username.",
|
|
"type": "string",
|
|
"airbyte_secret": true,
|
|
"order": 4
|
|
},
|
|
"ssl": {
|
|
"title": "Connect using SSL",
|
|
"description": "Encrypt client/server communications for increased security.",
|
|
"type": "boolean",
|
|
"default": false,
|
|
"order": 5
|
|
},
|
|
"replication_method": {
|
|
"type": "object",
|
|
"title": "Replication Method",
|
|
"description": "Replication method to use for extracting data from the database.",
|
|
"order": 6,
|
|
"oneOf": [
|
|
{
|
|
"title": "Standard",
|
|
"additionalProperties": false,
|
|
"description": "Standard replication requires no setup on the DB side but will not be able to represent deletions incrementally.",
|
|
"required": ["method"],
|
|
"properties": {
|
|
"method": {
|
|
"type": "string",
|
|
"const": "Standard",
|
|
"enum": ["Standard"],
|
|
"default": "Standard",
|
|
"order": 0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"title": "Logical Replication (CDC)",
|
|
"additionalProperties": false,
|
|
"description": "Logical replication uses the Postgres write-ahead log (WAL) to detect inserts, updates, and deletes. This needs to be configured on the source database itself. Only available on Postgres 10 and above. Read the <a href=https://docs.airbyte.io/integrations/sources/postgres>Postgres Source</a> docs for more information.",
|
|
"required": ["method", "replication_slot", "publication"],
|
|
"properties": {
|
|
"method": {
|
|
"type": "string",
|
|
"const": "CDC",
|
|
"enum": ["CDC"],
|
|
"default": "CDC",
|
|
"order": 0
|
|
},
|
|
"replication_slot": {
|
|
"type": "string",
|
|
"description": "A pgoutput logical replication slot.",
|
|
"order": 1
|
|
},
|
|
"publication": {
|
|
"type": "string",
|
|
"description": "A Postgres publication used for consuming changes.",
|
|
"order": 2
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|