-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy path.env.example
More file actions
173 lines (151 loc) · 8.04 KB
/
Copy path.env.example
File metadata and controls
173 lines (151 loc) · 8.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
# Economic Data Project - Environment Variables
# Copy this file to .env and fill in your values
# =============================================================================
# ENVIRONMENT
# =============================================================================
ENVIRONMENT=dev # dev or prod
# =============================================================================
# ENVIRONMENT (controls which BigQuery dataset suffix is used)
# =============================================================================
# prod → economics_raw, economics_staging, economics_marts, ... (no suffix)
# staging → economics_raw_staging, economics_staging_staging, ...
# dev → economics_raw_dev, economics_staging_dev, ...
# All three environments live in the same GCP project.
ENVIRONMENT=dev
# =============================================================================
# DATABASE - BigQuery (primary warehouse, all environments)
# =============================================================================
BIGQUERY_PROJECT=your-gcp-project-id
# BIGQUERY_DATASET is auto-derived from ENVIRONMENT (economics_raw_dev by default).
# Override only if you need a custom dataset name.
# BIGQUERY_DATASET=economics_raw_dev
BIGQUERY_LOCATION=US
ICEBERG_BUCKET_NAME=econ-project-iceberg-data
# Metaxy metadata store (issue #46). Connection string for the Metaxy
# lineage/versioning catalog (BigQuery project).
METAXY_STORES__PROD__CONFIG__DATABASE=
# =============================================================================
# DATA SOURCE APIs
# =============================================================================
FRED_API_KEY=your_fred_api_key_here
MARKETSTACK_API_KEY=your_marketstack_api_key_here
CENSUS_API_KEY=your_census_api_key_here
# =============================================================================
# SEC EDGAR API
# =============================================================================
# Contact email required by SEC for API access (User-Agent header)
# SEC requires identification for rate limiting and abuse prevention
# Use your real email - SEC may contact you if there are issues
SEC_EDGAR_CONTACT_EMAIL=your_email@example.com
# =============================================================================
# LLM / AI PROVIDERS
# =============================================================================
LLM_PROVIDER=openai # openai, anthropic, or gemini
MODEL_NAME=gpt-4-turbo-preview
# OpenAI
OPENAI_API_KEY=your_openai_api_key_here
# Anthropic (optional)
ANTHROPIC_API_KEY=your_anthropic_api_key_here
# Google Gemini (optional)
GEMINI_API_KEY=your_gemini_api_key_here
# =============================================================================
# GOOGLE CLOUD (for GCS storage, Google Docs, and BigQuery)
# =============================================================================
# Use Application Default Credentials (ADC) for Google auth.
# Local setup:
# gcloud auth application-default login
# Service account impersonation, if preferred:
# gcloud auth application-default login --impersonate-service-account service-account@project.iam.gserviceaccount.com
# On GCE/Cloud Run/GitHub WIF, ADC uses the attached or federated service account.
#
# GOOGLE_APPLICATION_CREDENTIALS is intentionally unset for normal ADC auth.
# Set it only if you must use a local service-account keyfile fallback.
# GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
#
# Used for: GCS storage, Google Docs API, and BigQuery.
# Required scopes for Google Docs:
# - https://www.googleapis.com/auth/documents
# - https://www.googleapis.com/auth/drive
GCS_BUCKET_NAME=your_gcs_bucket_name
# Google Docs Integration (optional)
# If not set, a new document will be created with title "Economic Analysis Reports"
# If you want to use an existing document, set GOOGLE_DOCS_DOCUMENT_ID to the document ID
# (the document ID is the part of the URL after /d/ in Google Docs)
# Example: https://docs.google.com/document/d/DOCUMENT_ID_HERE/edit
# GOOGLE_DOCS_DOCUMENT_ID=your_document_id_here
# Google Drive Integration
# Main folder ID for Google Drive resource (used by gdrive sensor and assets)
# Get the folder ID from the Google Drive folder URL:
# Example: https://drive.google.com/drive/folders/FOLDER_ID_HERE
GOOGLE_DRIVE_FOLDER_ID=your_google_drive_folder_id_here
# Realtor.com Data - Folder ID for Realtor.com CSV files
# The folder should contain subfolders: country/, state/, metro/, county/, zip/
# Each subfolder should contain the corresponding Realtor.com CSV files
# Note: This can be the same as GOOGLE_DRIVE_FOLDER_ID if using one folder
REALTOR_GDRIVE_FOLDER_ID=your_realtor_folder_id_here
# BigQuery auth is through ADC. No service-account keyfile is required when
# local ADC, attached service accounts, or workload identity federation are configured.
# =============================================================================
# DBT
# =============================================================================
DBT_TARGET=dev # dev, local, or prod
# dbt Platform orchestration from Dagster
# Leave DBT_ORCHESTRATION_MODE=local to run dbt through DbtCliResource.
# Set to dbt_platform after the dbt Platform project/environment is configured.
DBT_ORCHESTRATION_MODE=local
DBT_PLATFORM_ACCOUNT_ID=your-dbt-platform-account-id
DBT_PLATFORM_PROJECT_ID=your-dbt-platform-project-id
DBT_PLATFORM_ENVIRONMENT_ID=your-dbt-platform-environment-id
DBT_PLATFORM_TOKEN=your-dbt-platform-service-token
DBT_PLATFORM_ACCESS_URL=https://cloud.getdbt.com
DBT_PLATFORM_ADHOC_JOB_NAME=economic-data-dagster-adhoc
DBT_PLATFORM_POLL_INTERVAL_SECONDS=60
# Set true in production when dbt Platform owns scheduled builds and Dagster
# should only observe completed dbt Platform runs.
DBT_PLATFORM_OBSERVE_ONLY=false
# DBT_PROJECT_DIR=/path/to/dbt_project # Optional, auto-detected
# =============================================================================
# CLAUDE CODE / MCP SERVERS
# =============================================================================
# MotherDuck MCP is no longer used — queries now go to BigQuery via the
# dbt-index MCP server's `warehouse` tool (see .mcp.json) or the BigQuery console.
# Claude API - For context documentation maintainer skill
# Get your key from: https://console.anthropic.com/
ANTHROPIC_API_KEY=your_anthropic_api_key_here
# =============================================================================
# GITHUB INTEGRATION (for asset failure monitoring)
# =============================================================================
# GitHub personal access token for creating issues automatically
# Required scopes: repo (full control)
# Get your token from: https://github.com/settings/tokens
GITHUB_TOKEN=ghp_your_personal_access_token_here
GITHUB_REPO_OWNER=C00ldudeNoonan
GITHUB_REPO_NAME=economic-data-project-full
# =============================================================================
# ECONOMIC ALERTS (Gmail API via OAuth user credentials, see #61)
# =============================================================================
# This flow uses a stored refresh token to send mail as a single Gmail
# user — works for personal @gmail.com accounts (where domain-wide
# delegation is not allowed).
#
# One-time setup:
# 1. GCP > APIs & Services > enable Gmail API.
# 2. GCP > OAuth consent screen: External, add yourself as test user,
# add scope https://www.googleapis.com/auth/gmail.send.
# 3. GCP > Credentials > OAuth client ID (type: Desktop app).
# Download client_secret.json.
# 4. Run:
# uv run --project macro_agents python scripts/gmail_oauth_bootstrap.py \
# --client-secrets /path/to/client_secret.json \
# --token-output /path/to/gmail_token.json
# 5. Set GMAIL_OAUTH_TOKEN_PATH to the resulting token.json.
# Gmail address that owns the refresh token (also the From: address).
GMAIL_SENDER=you@gmail.com
# Path to the refresh-token JSON written by the bootstrap script.
GMAIL_OAUTH_TOKEN_PATH=/path/to/gmail_token.json
# Recipient inbox for alert emails (same as sender for self-alerts).
ALERT_RECIPIENT=you@gmail.com
DBT_CLOUD_API_TOKEN=
DBT_CLOUD_ACCOUNT=
DBT_CLOUD_PROJECT_ID=
DBT_CLOUD_ENVIRONMENT_ID=