forked from discord-tickets/bot
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy path.env.example
More file actions
138 lines (125 loc) · 6.8 KB
/
Copy path.env.example
File metadata and controls
138 lines (125 loc) · 6.8 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
# Discord Tickets (revamped) — environment file
#
# Copy this to `.env` in your DATA_DIR (the directory holding user/ and logs/;
# by default that is the application directory itself, and DT_DATA_DIR points
# it elsewhere). Then `chmod 600 .env` — it holds your bot token and the key
# every encrypted field is encrypted with.
#
# An EMPTY value means "not set". A variable set to nothing here, in a compose
# file, or on a panel's startup tab does not override anything; it is ignored.
# ── Discord ──────────────────────────────────────────────────────────────────
DISCORD_TOKEN=
DISCORD_SECRET=
# Comma-separated user IDs with operator rights (they can issue service API
# keys and read any transcript). Leave empty if you don't need it.
SUPER=
# ── Encryption ───────────────────────────────────────────────────────────────
# Generate with: openssl rand -hex 24
#
# NEVER change this after the first start. Ticket topics, close reasons,
# feedback comments and archived messages are encrypted with it, and there is
# no way to read them back without the original value.
ENCRYPTION_KEY=
# Optional. When unset, the JWT signing key is derived from ENCRYPTION_KEY via
# HKDF. Set it to your ENCRYPTION_KEY value if you are upgrading from upstream
# and want existing dashboard sessions to keep working.
JWT_SECRET=
# ── Database ─────────────────────────────────────────────────────────────────
# mysql or postgresql. SQLite is not supported.
DB_PROVIDER=postgresql
DB_CONNECTION_URL=
# ── HTTP ─────────────────────────────────────────────────────────────────────
HTTP_HOST=0.0.0.0
HTTP_PORT=8169
# The URL users reach the dashboard on, without a trailing slash. Must match
# the OAuth redirect URI configured in the Discord developer portal.
HTTP_EXTERNAL=http://127.0.0.1:8169
HTTP_INTERNAL=
# Set to true only when running behind a reverse proxy you control.
HTTP_TRUST_PROXY=false
# ── Temporal (required) ──────────────────────────────────────────────────────
# All scheduled and durable work — stale tickets, auto-close, exports, cron
# automations — runs on Temporal. The bot will not start without an address.
TEMPORAL_ADDRESS=127.0.0.1
TEMPORAL_PORT=7233
TEMPORAL_NAMESPACE=default
TEMPORAL_TASK_QUEUE=discord-tickets
TEMPORAL_DEPLOYMENT_NAME=discord-tickets
# TLS defaults to ON. Set false only for a cluster on a private network you
# trust — plaintext gRPC on 7233 is unauthenticated, and workflow state
# includes ticket data.
TEMPORAL_TLS_ENABLED=false
TEMPORAL_TLS_CERT_PATH=
TEMPORAL_TLS_KEY_PATH=
TEMPORAL_TLS_CA_PATH=
TEMPORAL_TLS_SERVER_NAME=
# ── Optional ─────────────────────────────────────────────────────────────────
PUBLIC_BOT=false
PUBLISH_COMMANDS=false
# Set to an ISO date to invalidate every session and API key issued before it.
INVALIDATE_TOKENS=
OVERRIDE_ARCHIVE=
DISABLE_ENCRYPTION=false
CPU_LIMIT=
# Anonymous usage stats are only reported if you set this.
STATS_URL=
# ── Sentry (optional) ────────────────────────────────────────────────────────
# Nothing is sent anywhere unless SENTRY_DSN is set.
SENTRY_DSN=
# Defaults to NODE_ENV. Set to "staging"/"production" to separate environments.
SENTRY_ENVIRONMENT=
# Defaults to "discord-tickets@<version>+<build id>".
SENTRY_RELEASE=
# Fraction of requests/interactions traced (0-1). Empty means 0.1.
SENTRY_SAMPLE_RATE=
# Fraction of traced transactions profiled (0-1). Empty means 1.0.
SENTRY_PROFILING_RATE=
# Forward the bot's own log output to Sentry Logs. Off by default.
SENTRY_LOGGING=false
# Minimum level forwarded when SENTRY_LOGGING is on. "debug" is very noisy —
# it includes every Prisma query.
SENTRY_LOG_LEVEL=info
# Application metrics (tickets opened/closed, latencies). On when a DSN is set.
SENTRY_METRICS=true
# Send Discord user IDs and IP addresses. These belong to *your members*, not
# to you, so this is off unless you turn it on.
SENTRY_SEND_PII=false
# Dashboard (browser) — separate from the bot's DSN above, because this one is
# served to every visitor. Leave empty to keep the dashboard uninstrumented.
PUBLIC_SENTRY_DSN=
PUBLIC_SENTRY_ENVIRONMENT=
PUBLIC_SENTRY_RELEASE=
# Browser tracing, 0-1. Off by default.
PUBLIC_SENTRY_TRACES_RATE=0
# Session Replay, 0-1, both off by default. The dashboard displays ticket
# transcripts: recordings mask all text and block all media, but they still
# capture what staff were doing. Enable deliberately.
PUBLIC_SENTRY_REPLAY_SESSION_RATE=0
PUBLIC_SENTRY_REPLAY_ERROR_RATE=0
# ── Transcript storage (optional) ────────────────────────────────────────────
# Transcripts are written to <data dir>/user/transcripts by default and only a
# reference is kept in the database. That is the right answer for almost every
# install — note it also means transcripts are NOT in a database dump, so back
# that directory up alongside it.
#
# Set this to "s3" only if you actually need object storage. The bucket details
# can live here or in user/config.yml (these win); the credentials belong here.
STORAGE_DRIVER=local
S3_BUCKET=
# Leave empty for real AWS. For MinIO and similar: http://minio:9000
S3_ENDPOINT=
S3_REGION=us-east-1
# Optional key prefix within the bucket, e.g. "production/".
S3_PREFIX=
# Required by MinIO and most self-hosted gateways.
S3_FORCE_PATH_STYLE=true
# Leave both empty to use the AWS SDK's own credential chain, which is how
# instance roles (IMDS, IRSA) work — the better option where it is available.
S3_ACCESS_KEY_ID=
S3_SECRET_ACCESS_KEY=
S3_SESSION_TOKEN=
# ── Paths (optional) ─────────────────────────────────────────────────────────
# DT_DATA_DIR where .env, user/ and logs/ live (default: the app dir)
# DT_APP_DIR where the code lives (default: auto-detected)
# DT_ENV_FILE this file (default: DATA_DIR/.env)
# DT_SKIP_MIGRATIONS=true skip `prisma migrate deploy` at boot