version: 1

# External-incremental GCS load (ADR 0018) for metadb.users — sibling unit to metadb/ and
# metadb_tenants/ (the load engine is one-table-per-source unit). Writes the shared metadb_raw db.
#
# NOTE: not consumed by salesforce_org_monthly_revrec — snapshotting cloud_tenants from BigQuery
# removed that dependency (ADR 0019). Kept for future models. The export prefix below is a
# placeholder: confirm the real gs:// path of the metadb users export.

load:
  name: metadb_users
  engine: databend
  secrets_file: secrets.env

cloud_lake:
  dsn_env: DATABEND_DSN
  databases:
    raw: metadb_raw

external:
  uri: gs://metadb/metadb/REPLACE-WITH-PREFIX/users/
  incremental:
    strategy: filename
    pattern: 'run-(?P<ts>\d+)-'
  delta: true
  table: users
  domain: identity
  owner: data-platform
  system: bigquery
  primary_key: [id]

gcs:
  credential_env: METADB_GCS_CREDENTIAL
  reader:
    project: gcp-digital-bi-dev

governance:
  classifications:
    - restricted
    - customer_data
  classification_patterns:
    customer_data: "email|name|first_name|last_name|tenant"
    operational_sensitive: "token|secret|password|credential"

setup:
  databend:
    files:
      - ingestion/load/gcs_bulk_load/setup/databend/metadb/001_databases.sql

source_contracts:
  - ref: ingestion/load/gcs_bulk_load/sources/metadb_users/contracts/upstream/*.external.source.contract.yaml
