account = "DELPHIDEV.us-east-1"

roles = [
  {
    name  = "ACCOUNT_SUPPORT",
    owner = "SECURITYADMIN"
  },
  {
    name = "AE_CRM_USER",
    granted_account_roles = [
      "EXPLORATION_USER"
    ]
  },
  {
    name = "AE_REPORTING_USER"
  },
  {
    name = "APOLLO_TEAM_ROLE"
  },
  {
    name = "BILLING_ROLE"
  },
  {
    name = "CHARTMETRIC_TIKTOK_USER"
  },
  {
    name = "CHARTMETRIC_USER"
  },
  {
    name = "CRM_ADMIN_USER",
    granted_account_roles = [
      "AE_CRM_USER",
      "CRM_ECOMMERCE_ROLE",
      "SF_CRM_USER",
      "QA_MARTECH_SNOWFLAKE_SALESFORCE_NODE_WH_WAREHOUSE_ACCESS"
    ]
  },
  {
    name = "CRM_ECOMMERCE_ROLE"
  },
  {
    name = "CRM_ECOMMERCE_USER"
  },
  {
    name = "DATADOG"
  },
  {
    name = "PROD_DATADOG_INTEGRATION"
    granted_database_roles = [
      "SNOWFLAKE.OBJECT_VIEWER",
      "SNOWFLAKE.USAGE_VIEWER",
      "SNOWFLAKE.GOVERNANCE_VIEWER",
      "SNOWFLAKE.SECURITY_VIEWER",
      "SNOWFLAKE.ORGANIZATION_USAGE_VIEWER",
      "SNOWFLAKE.ORGANIZATION_BILLING_VIEWER",
      "SNOWFLAKE.WORKLOAD_INSIGHTS_USER",
      "SNOWFLAKE.DATA_METRIC_USER",
    ],
    granted_application_roles = [
      "SNOWFLAKE.EVENTS_VIEWER",
      "SNOWFLAKE.EVENTS_ADMIN",
    ],
    granted_account_roles = [
      "SNOWFLAKE_USAGE",
      "CICD_WH_WAREHOUSE_ACCESS",
      "DATADOG",
    ],
  },
  {
    name = "DELPHI_EXPLORATION_RW"
  },
  {
    name  = "DEV_DELPHI_ADS_DATA_RW",
    owner = "SECURITYADMIN"
  },
  {
    name    = "DEV_READER",
    comment = "Read only role"
  },
  {
    name = "DNA"
  },
  {
    name = "DS_READER"
  },
  {
    name = "ENGINEER"
  },
  {
    name = "EXPLORATION_ADV_USER"
  },
  {
    name = "EXPLORATION_AD_PLUS"
  },
  {
    name = "EXPLORATION_SYS_USER"
  },
  {
    name = "EXPLORATION_USER"
  },
  {
    name = "FIVETRAN_PRIME",
    granted_account_roles = [
      "FIVETRAN_QA_ROLE",
      "FIVETRAN_ROLE",
    ]
  },
  {
    name = "FIVETRAN_QA_ROLE",
    granted_account_roles = [
      "FIVETRAN_ROLE"
    ]
  },
  {
    name = "FIVETRAN_READER_ROLE"
  },
  {
    name  = "FIVETRAN_ROLE",
    owner = "SECURITYADMIN",
    granted_account_roles = [
      "FIVETRAN_READER_ROLE",
    ]
  },
  {
    name = "JENKINS_CLI_ROLE",
    granted_account_roles = [
      "QA_DELPHI_AE_REPORTING_DB_READWRITE",
      "QA_DELPHI_CRM_DATA_DB_READWRITE",
      "STAGE_DELPHI_CRM_DATA_DB_READWRITE",
      "STAGE_DELPHI_AE_REPORTING_DB_READWRITE",
      "QA_DELPHI_EXPLORATION_DB_CREATE_SCHEMA",
      "QA_DELPHI_EXPLORATION_DB_READWRITE",
      "STAGE_DELPHI_EXPLORATION_DB_CREATE_SCHEMA",
      "STAGE_DELPHI_EXPLORATION_DB_READWRITE",
      "CICD_WH_WAREHOUSE_ACCESS",
      "QA_DELPHI_PUBLIC_DATA_MAIN_DB_READWRITE",
      "QA_DELPHI_PUBLIC_DATA_RAW_DB_READWRITE",
      "STAGE_DELPHI_PUBLIC_DATA_MAIN_DB_READWRITE",
      "STAGE_DELPHI_PUBLIC_DATA_RAW_DB_READWRITE",
      "STAGE_DELPHI_EXPLORATION_DB_SYS_SCHEMA_READWRITE",
      "EXPLORATION_SYS_STAGE_WH_WAREHOUSE_ACCESS",
      "EXPLORATION_SYS_STAGE_HL_WH_WAREHOUSE_ACCESS",
    ]
    granted_database_roles = [
      "QA_DELPHI_TEST_RSA_KEY_AUTH.DB_READWRITE",
      "QA_APP_ENABLEMENT.DB_READWRITE",
      "QA_DELPHI_ADS_DATA.DB_READWRITE",
      "QA_DELPHI_CHARTMETRIC_ETL.DB_READWRITE",
      "QA_DELPHI_CHARTMETRIC_MAIN.DB_READWRITE",
      "QA_DELPHI_CHARTMETRIC_RAW.DB_READWRITE",
      "QA_DELPHI_CHARTS_ETL.DB_READWRITE",
      "QA_DELPHI_CHARTS_MAIN.DB_READWRITE",
      "QA_DELPHI_CHARTS_RAW.DB_READWRITE",
      "QA_DELPHI_LINKFIRE.DB_READWRITE",
      "QA_DELPHI_PUBLIC_DATA_ETL.DB_READWRITE",
      "QA_DELPHI_TIKTOK_CHARTMETRIC.DB_READWRITE",
      "STAGE_APP_ENABLEMENT.DB_READWRITE",
      "STAGE_DELPHI_ADS_DATA.DB_READWRITE",
      "STAGE_DELPHI_CHARTMETRIC_ETL.DB_READWRITE",
      "STAGE_DELPHI_CHARTMETRIC_MAIN.DB_READWRITE",
      "STAGE_DELPHI_CHARTMETRIC_RAW.DB_READWRITE",
      "STAGE_DELPHI_CHARTS_ETL.DB_READWRITE",
      "STAGE_DELPHI_CHARTS_MAIN.DB_READWRITE",
      "STAGE_DELPHI_CHARTS_RAW.DB_READWRITE",
      "STAGE_DELPHI_LINKFIRE.DB_READWRITE",
      "STAGE_DELPHI_PUBLIC_DATA_ETL.DB_READWRITE",
      "STAGE_DELPHI_TIKTOK_CHARTMETRIC.DB_READWRITE",
    ],
    account_level_grants = [
      "EXECUTE TASK",
    ]
  },
  {
    name = "L1SUPPORT",
    granted_account_roles = [
      "EXPLORATION_USER",
    ]
  },
  {
    name = "PARTNERIZE_USER"
  },
  {
    name = "QA_AE_CRM_USER",
    granted_account_roles = [
      "AE_CRM_USER",
    ]
  },
  {
    name = "QA_AE_REPORTING_USER",
    granted_account_roles = [
      "AE_REPORTING_USER",
    ]
  },
  {
    name = "QA_CHARTMETRIC_TIKTOK_USER",
    granted_account_roles = [
      "CHARTMETRIC_TIKTOK_USER",
    ]
  },
  {
    name = "QA_CHARTMETRIC_USER",
    granted_account_roles = [
      "CHARTMETRIC_USER",
    ]
  },
  {
    name  = "QA_DELPHI_ADS_DATA_RW",
    owner = "SECURITYADMIN"
  },
  {
    name = "QA_EXPLORATION_ADV_USER",
    granted_account_roles = [
      "EXPLORATION_ADV_USER",
    ]
  },
  {
    name = "QA_EXPLORATION_AD_PLUS",
    granted_account_roles = [
      "EXPLORATION_AD_PLUS"
    ]
  },
  {
    name = "QA_EXPLORATION_SYS_USER",
    granted_account_roles = [
      "EXPLORATION_SYS_USER",
    ]
  },
  {
    name = "QA_EXPLORATION_USER",
    granted_account_roles = [
      "EXPLORATION_USER",
    ]
  },
  {
    name = "QA_WHITELIST_USER"
  },
  {
    name = "READER"
  },
  {
    name = "SALESFORCE_ROLE"
  },
  {
    name = "SF_CRM_USER"
  },
  {
    name = "SNOWFLAKE_ROLE"
  },
  {
    name = "STAGE_DNA"
  },
  {
    name = "TEAM_BA_ROLE",
    granted_account_roles = [
      "CHARTMETRIC_USER",
      "CRM_ADMIN_USER",
      "EXPLORATION_ADV_USER",
      "EXPLORATION_AD_PLUS",
      "EXPLORATION_SYS_USER",
      "FIVETRAN_PRIME",
    ]
  },
  {
    name = "TEST_1"
  },
  {
    name = "TEST_2_1",
    granted_account_roles = [
      "TEST_1"
    ]
  },
  {
    name = "TEST_2_2",
    granted_account_roles = [
      "TEST_1"
    ]
  },
  {
    name = "TEST_3",
    granted_account_roles = [
      "TEST_2_1",
      "TEST_2_2",
    ]
  },
  {
    name = "TEST_SYS"
  },
  {
    name = "DELPHI_DATA_DAILY_ALERT",
    granted_account_roles = [
      "QA_DELPHI_EXPLORATION_DB_READ",
      "QA_DELPHI_PUBLIC_DATA_RAW_DB_READ",
      "QA_DELPHI_PUBLIC_DATA_MAIN_DB_READ",
      "STAGE_DELPHI_EXPLORATION_DB_READ",
      "STAGE_DELPHI_PUBLIC_DATA_RAW_DB_READ",
      "STAGE_DELPHI_PUBLIC_DATA_MAIN_DB_READ",
      "TEAM_L2_SUPPORT_WH_WAREHOUSE_ACCESS",
    ]
  },
  {
    name = "KAFKA_DATA_HIGHWAY_TEAM",
    granted_account_roles = [
      "STAGE_DELPHI_CRM_DATA_DB_READ",
      "QA_DELPHI_CRM_DATA_DB_READ",
      "KAFKA_DATA_HIGHWAY_WH_WAREHOUSE_ACCESS",
    ]
  },
  {
    name = "QA_KAFKA_CONNECT_DELPHI_DEV",
    granted_account_roles = [
      "STAGE_DELPHI_CRM_DATA_DB_READWRITE",
      "KAFKA_DATA_HIGHWAY_WH_WAREHOUSE_ACCESS",
    ]
  },
  {
    name = "QA_ETL_DELPHI_CRM_ROLE",
    granted_account_roles = [
      "QA_ETL_WH_WAREHOUSE_ACCESS",
      "QA_DELPHI_CRM_DATA_DB_READWRITE",
      "STAGE_DELPHI_CRM_DATA_DB_READWRITE",
    ]
  },
  {
    name = "QA_ETL_TICKETEK_ROLE",
    granted_account_roles = [
      "QA_ETL_WH_WAREHOUSE_ACCESS",
      "QA_DELPHI_CRM_DATA_DB_READWRITE",
      "STAGE_DELPHI_CRM_DATA_DB_READWRITE",
    ]
  },
  {
    name = "QUICKSIGHT_ADMIN",
    granted_account_roles = [
      "QA_DELPHI_AE_REPORTING_DB_READWRITE",
      "STAGE_DELPHI_AE_REPORTING_DB_READWRITE",
      "QA_DELPHI_EXPLORATION_DB_CREATE_SCHEMA",
      "QA_DELPHI_EXPLORATION_DB_READWRITE",
      "STAGE_DELPHI_EXPLORATION_DB_CREATE_SCHEMA",
      "STAGE_DELPHI_EXPLORATION_DB_READWRITE",
      "CICD_WH_WAREHOUSE_ACCESS",
      "EXPLORATION_SYS_QA_WH_WAREHOUSE_ACCESS",
      "EXPLORATION_SYS_QA_HL_WH_WAREHOUSE_ACCESS",
      "AE_REPORTING_QA_WH_WAREHOUSE_ACCESS",
      "EXPLORATION_SYS_STAGE_WH_WAREHOUSE_ACCESS",
      "EXPLORATION_SYS_STAGE_HL_WH_WAREHOUSE_ACCESS",
      "AE_REPORTING_STAGE_WH_WAREHOUSE_ACCESS",
    ],
    account_level_grants = [
      "EXECUTE TASK",
      "APPLY MASKING POLICY",
    ]
  },
  {
    name = "DATA_PLATFORM"
  },
  {
    name    = "ALL_WAREHOUSE_MONITOR"
    comment = "MONITOR privileges for all warehouses"
  },
  {
    name    = "ALL_COMPUTE_POOL_MONITOR"
    comment = "MONITOR privileges for all compute pools"
  },
  {
    name    = "ALL_DB_READ"
    comment = "Database read privilege for all databases"
  },
  {
    name    = "ALL_STREAMLIT_USAGE"
    comment = "Streamlit usage privilege for all databases"
  },
]
