mirror of
https://github.com/danswer-ai/danswer.git
synced 2025-04-02 00:51:40 +02:00
* first cut at slack oauth flow * fix usage of hooks * fix button spacing * add additional error logging * no dev redirect * early cut at google drive oauth * second pass * switch to production uri's * try handling oauth_interactive differently * pass through client id and secret if uploaded * fix call * fix test * temporarily disable check for testing * Revert "temporarily disable check for testing" This reverts commit 4b5a022a5fe38b05355a561616068af8e969def2. * support visibility in test * missed file * first cut at confluence oauth * work in progress * work in progress * work in progress * work in progress * work in progress * first cut at distributed locking * WIP to make test work * add some dev mode affordances and gate usage of redis behind dynamic credentials * mypy and credentials provider fixes * WIP * fix created at * fix setting initialValue on everything * remove debugging, fix ??? some TextFormField issues * npm fixes * comment cleanup * fix comments * pin the size of the card section * more review fixes * more fixes --------- Co-authored-by: Richard Kuo <rkuo@rkuo.com> Co-authored-by: Richard Kuo (Danswer) <rkuo@onyx.app>
86 lines
3.1 KiB
Python
86 lines
3.1 KiB
Python
import json
|
|
import os
|
|
|
|
# Applicable for OIDC Auth
|
|
OPENID_CONFIG_URL = os.environ.get("OPENID_CONFIG_URL", "")
|
|
|
|
# Applicable for OIDC Auth, allows you to override the scopes that
|
|
# are requested from the OIDC provider. Currently used when passing
|
|
# over access tokens to tool calls and the tool needs more scopes
|
|
OIDC_SCOPE_OVERRIDE: list[str] | None = None
|
|
_OIDC_SCOPE_OVERRIDE = os.environ.get("OIDC_SCOPE_OVERRIDE")
|
|
|
|
if _OIDC_SCOPE_OVERRIDE:
|
|
try:
|
|
OIDC_SCOPE_OVERRIDE = [
|
|
scope.strip() for scope in _OIDC_SCOPE_OVERRIDE.split(",")
|
|
]
|
|
except Exception:
|
|
pass
|
|
|
|
# Applicable for SAML Auth
|
|
SAML_CONF_DIR = os.environ.get("SAML_CONF_DIR") or "/app/ee/onyx/configs/saml_config"
|
|
|
|
|
|
#####
|
|
# Auto Permission Sync
|
|
#####
|
|
# In seconds, default is 5 minutes
|
|
CONFLUENCE_PERMISSION_GROUP_SYNC_FREQUENCY = int(
|
|
os.environ.get("CONFLUENCE_PERMISSION_GROUP_SYNC_FREQUENCY") or 5 * 60
|
|
)
|
|
# This is a boolean that determines if anonymous access is public
|
|
# Default behavior is to not make the page public and instead add a group
|
|
# that contains all the users that we found in Confluence
|
|
CONFLUENCE_ANONYMOUS_ACCESS_IS_PUBLIC = (
|
|
os.environ.get("CONFLUENCE_ANONYMOUS_ACCESS_IS_PUBLIC", "").lower() == "true"
|
|
)
|
|
# In seconds, default is 5 minutes
|
|
CONFLUENCE_PERMISSION_DOC_SYNC_FREQUENCY = int(
|
|
os.environ.get("CONFLUENCE_PERMISSION_DOC_SYNC_FREQUENCY") or 5 * 60
|
|
)
|
|
NUM_PERMISSION_WORKERS = int(os.environ.get("NUM_PERMISSION_WORKERS") or 2)
|
|
|
|
|
|
STRIPE_SECRET_KEY = os.environ.get("STRIPE_SECRET_KEY")
|
|
STRIPE_PRICE_ID = os.environ.get("STRIPE_PRICE")
|
|
|
|
OPENAI_DEFAULT_API_KEY = os.environ.get("OPENAI_DEFAULT_API_KEY")
|
|
ANTHROPIC_DEFAULT_API_KEY = os.environ.get("ANTHROPIC_DEFAULT_API_KEY")
|
|
COHERE_DEFAULT_API_KEY = os.environ.get("COHERE_DEFAULT_API_KEY")
|
|
|
|
# JWT Public Key URL
|
|
JWT_PUBLIC_KEY_URL: str | None = os.getenv("JWT_PUBLIC_KEY_URL", None)
|
|
|
|
|
|
# Super Users
|
|
SUPER_USERS = json.loads(os.environ.get("SUPER_USERS", "[]"))
|
|
SUPER_CLOUD_API_KEY = os.environ.get("SUPER_CLOUD_API_KEY", "api_key")
|
|
|
|
OAUTH_SLACK_CLIENT_ID = os.environ.get("OAUTH_SLACK_CLIENT_ID", "")
|
|
OAUTH_SLACK_CLIENT_SECRET = os.environ.get("OAUTH_SLACK_CLIENT_SECRET", "")
|
|
OAUTH_CONFLUENCE_CLOUD_CLIENT_ID = os.environ.get(
|
|
"OAUTH_CONFLUENCE_CLOUD_CLIENT_ID", ""
|
|
)
|
|
OAUTH_CONFLUENCE_CLOUD_CLIENT_SECRET = os.environ.get(
|
|
"OAUTH_CONFLUENCE_CLOUD_CLIENT_SECRET", ""
|
|
)
|
|
OAUTH_JIRA_CLOUD_CLIENT_ID = os.environ.get("OAUTH_JIRA_CLOUD_CLIENT_ID", "")
|
|
OAUTH_JIRA_CLOUD_CLIENT_SECRET = os.environ.get("OAUTH_JIRA_CLOUD_CLIENT_SECRET", "")
|
|
OAUTH_GOOGLE_DRIVE_CLIENT_ID = os.environ.get("OAUTH_GOOGLE_DRIVE_CLIENT_ID", "")
|
|
OAUTH_GOOGLE_DRIVE_CLIENT_SECRET = os.environ.get(
|
|
"OAUTH_GOOGLE_DRIVE_CLIENT_SECRET", ""
|
|
)
|
|
|
|
|
|
# The posthog client does not accept empty API keys or hosts however it fails silently
|
|
# when the capture is called. These defaults prevent Posthog issues from breaking the Onyx app
|
|
POSTHOG_API_KEY = os.environ.get("POSTHOG_API_KEY") or "FooBar"
|
|
POSTHOG_HOST = os.environ.get("POSTHOG_HOST") or "https://us.i.posthog.com"
|
|
|
|
HUBSPOT_TRACKING_URL = os.environ.get("HUBSPOT_TRACKING_URL")
|
|
|
|
ANONYMOUS_USER_COOKIE_NAME = "onyx_anonymous_user"
|
|
|
|
GATED_TENANTS_KEY = "gated_tenants"
|