Skip to content
This repository has been archived by the owner on Nov 30, 2022. It is now read-only.

Add a Timescale Connector [#1311] #1327

Merged
merged 12 commits into from
Sep 23, 2022
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ The types of changes are:

* `api_key` auth strategy for SaaS connectors [#1331](https://github.com/ethyca/fidesops/pull/1331)
* Access support for Rollbar [#1361](https://github.com/ethyca/fidesops/pull/1361)
* Adds a new Timescale connector [#1327](https://github.com/ethyca/fidesops/pull/1327)

### Removed

Expand Down
225 changes: 225 additions & 0 deletions data/dataset/timebase_example_test_dataset.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,225 @@
dataset:
- fides_key: timebase_example
name: Timebase Example Dataset
description: Example of a Timebase dataset containing a variety of related tables like customers, products, addresses, etc.
collections:
- name: address
fields:
- name: city
data_categories: [user.contact.address.city]
- name: house
data_categories: [user.contact.address.street]
- name: id
data_categories: [system.operations]
fidesops_meta:
primary_key: True
- name: state
data_categories: [user.contact.address.state]
- name: street
data_categories: [user.contact.address.street]
- name: zip
data_categories: [user.contact.address.postal_code]

- name: customer
fields:
- name: address_id
data_categories: [system.operations]
fidesops_meta:
references:
- dataset: timebase_example
field: address.id
direction: to
- name: created
data_categories: [system.operations]
- name: email
data_categories: [user.contact.email]
fidesops_meta:
identity: email
data_type: string
- name: id
data_categories: [user.unique_id]
fidesops_meta:
primary_key: True
- name: name
data_categories: [user.name]
fidesops_meta:
data_type: string
length: 40

- name: employee
fields:
- name: address_id
data_categories: [system.operations]
fidesops_meta:
references:
- dataset: timebase_example
field: address.id
direction: to
- name: email
data_categories: [user.contact.email]
fidesops_meta:
identity: email
data_type: string
- name: id
data_categories: [user.unique_id]
fidesops_meta:
primary_key: True
- name: name
data_categories: [user.name]
fidesops_meta:
data_type: string

- name: login
fields:
- name: customer_id
data_categories: [user.unique_id]
fidesops_meta:
references:
- dataset: timebase_example
field: customer.id
direction: from
- name: id
data_categories: [system.operations]
fidesops_meta:
primary_key: True
- name: time
data_categories: [user.sensor]

- name: orders
fields:
- name: customer_id
data_categories: [user.unique_id]
fidesops_meta:
references:
- dataset: timebase_example
field: customer.id
direction: from
- name: id
data_categories: [system.operations]
fidesops_meta:
primary_key: True
- name: shipping_address_id
data_categories: [system.operations]
fidesops_meta:
references:
- dataset: timebase_example
field: address.id
direction: to

# order_item
- name: order_item
fields:
- name: order_id
data_categories: [system.operations]
fidesops_meta:
references:
- dataset: timebase_example
field: orders.id
direction: from
- name: product_id
data_categories: [system.operations]
fidesops_meta:
references:
- dataset: timebase_example
field: product.id
direction: to
- name: quantity
data_categories: [system.operations]

- name: payment_card
fields:
- name: billing_address_id
data_categories: [system.operations]
fidesops_meta:
references:
- dataset: timebase_example
field: address.id
direction: to
- name: ccn
data_categories: [user.financial.account_number]
- name: code
data_categories: [user.financial]
- name: customer_id
data_categories: [user.unique_id]
fidesops_meta:
references:
- dataset: timebase_example
field: customer.id
direction: from
- name: id
data_categories: [system.operations]
fidesops_meta:
primary_key: True
- name: name
data_categories: [user.financial]
- name: preferred
data_categories: [user]

- name: product
fields:
- name: id
data_categories: [system.operations]
fidesops_meta:
primary_key: True
- name: name
data_categories: [system.operations]
- name: price
data_categories: [system.operations]

- name: report
fields:
- name: email
data_categories: [user.contact.email]
fidesops_meta:
identity: email
data_type: string
- name: id
data_categories: [system.operations]
fidesops_meta:
primary_key: True
- name: month
data_categories: [system.operations]
- name: name
data_categories: [system.operations]
- name: total_visits
data_categories: [system.operations]
- name: year
data_categories: [system.operations]

- name: service_request
fields:
- name: alt_email
data_categories: [user.contact.email]
fidesops_meta:
identity: email
data_type: string
- name: closed
data_categories: [system.operations]
- name: email
data_categories: [system.operations]
pattisdr marked this conversation as resolved.
Show resolved Hide resolved
fidesops_meta:
identity: email
data_type: string
- name: employee_id
data_categories: [user.unique_id]
fidesops_meta:
references:
- dataset: timebase_example
field: employee.id
direction: from
- name: id
data_categories: [system.operations]
fidesops_meta:
primary_key: True
- name: opened
data_categories: [system.operations]

- name: visit
fields:
- name: email
data_categories: [user.contact.email]
fidesops_meta:
identity: email
data_type: string
- name: last_visit
data_categories: [system.operations]
12 changes: 12 additions & 0 deletions docker/docker-compose.integration-timescale.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
services:
timescale_example:
image: timescale/timescaledb:latest-pg12
sanders41 marked this conversation as resolved.
Show resolved Hide resolved
restart: always
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=timescale_example
expose:
- 7432
ports:
- "0.0.0.0:7432:5432"
Loading