Files
replypier/e2e/.env.e2e
T
WangShen007 54b949b392 chore(brand): rename the product to ReplyPier
The upstream project name is gone from code, assets, docs and build
output: brand strings, domains (replypier.site and its app/api/docs/help
subdomains), env prefixes, image and network names, the widget's public
JS API (window.ReplyPier, replypierId/BaseUrl/Config/Token), CSS tokens
(--rp-*), file and directory names, and the WordPress plugin package.

- widget loader is now webclient/replypier.min.js; both bundles rebuilt
  from source (backend/assets/widget.{js,css}, frontend/public/webclient)
- NOTICE, llms.txt, CONTRIBUTING, HELP_CENTER_INFRA and config.dev.js
  rewritten rather than string-swapped; the demo config no longer ships
  the previous vendor's Firebase/Razorpay/Google keys
- new migration replypier_ai_model_001 adds REPLYPIER to the managed
  AIModelType and rewrites pre-rename rows
- local compose project, database, role and volume renamed; LOCAL_DEPLOY
  documents carrying the old local data over
2026-10-26 00:51:03 +08:00

80 lines
3.5 KiB
Bash

# Backend env for the e2e stack. scripts/stack.sh passes this file as ENV_FILE,
# so the backend reads ONLY this — never a developer's backend/.env.
# Every value here is a throwaway for local/CI test runs; nothing is a real secret.
# NO_ENTERPRISE and the real DATABASE_URL are exported by stack.sh (they depend on
# the edition and the local Postgres). This placeholder points nowhere, so a backend
# started without stack.sh fails fast instead of falling back to the dev database.
DATABASE_URL=postgresql+psycopg://set-by-stack-sh@127.0.0.1:1/replypier_e2e
ENVIRONMENT=test
JWT_SECRET_KEY=e2e-jwt-secret-not-for-production
CONVERSATION_SECRET_KEY=e2e-conversation-secret-not-for-production
# Same fixed test-only key as backend/tests/conftest.py.
ENCRYPTION_KEY=QmFTbXc5RWQ4czRfQWpqSnhqZjhraGtYSGFYaXZ4SkRNS2kxZFB1Y2NrMD0=
FRONTEND_URL=http://127.0.0.1:15173
BACKEND_URL=http://127.0.0.1:18000
VITE_WIDGET_URL=http://127.0.0.1:18000
# Dashboard + the fake customer site the widget is embedded on (see src/components/chat-widget.ts).
CORS_ORIGINS=["http://127.0.0.1:15173","http://127.0.0.1:13000"]
HELP_CENTER_PUBLIC_MODE=path
# Redis off: no shared cors:origins cache, no dev Redis traffic.
REDIS_ENABLED=false
# All mail goes to the stack's Mailpit (scripts/stack.sh). No username means no
# SMTP login, which is how Mailpit runs.
SMTP_SERVER=127.0.0.1
SMTP_PORT=11025
SMTP_USERNAME=
SMTP_PASSWORD=
FROM_EMAIL=no-reply@e2e.example.com
# No push notifications, no S3.
FIREBASE_CREDENTIALS=/nonexistent/firebase-config.json
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
# Providers that ignore the org's base_url (e.g. the REPLYPIER default model)
# still land on the fake LLM through the openai SDK's env fallback.
OPENAI_BASE_URL=http://127.0.0.1:14010/v1
OPENAI_API_KEY=e2e-fake-key
# Short enough that the "AI times out" journey runs quickly; src/support/timeouts.ts waits longer.
AGENT_RUN_TIMEOUT=15
TOKENIZERS_PARALLELISM=false
# Third-party APIs → the recording fake (services/fake-externals). See
# backend/app/core/external_urls.py; deployments never set these.
TELEGRAM_API_BASE=http://127.0.0.1:14020/telegram
META_GRAPH_BASE=http://127.0.0.1:14020/graph
META_GRAPH_INSTAGRAM_BASE=http://127.0.0.1:14020/graph-instagram
SLACK_API_BASE=http://127.0.0.1:14020/slack
LINE_API_BASE=http://127.0.0.1:14020/line
TWILIO_API_BASE=http://127.0.0.1:14020/twilio
PLIVO_API_BASE=http://127.0.0.1:14020/plivo
HUBSPOT_API_BASE=http://127.0.0.1:14020/hubspot
PIPEDRIVE_OAUTH_BASE=http://127.0.0.1:14020/pipedrive-oauth
# Pipedrive names each company's API host in its token response; the fake names itself.
PIPEDRIVE_API_BASE=http://127.0.0.1:14020/pipedrive
JIRA_AUTH_BASE=http://127.0.0.1:14020/jira-auth
JIRA_API_BASE=http://127.0.0.1:14020/jira
SHOPIFY_ADMIN_BASE=http://127.0.0.1:14020/shopify
# Webhook signing secrets the channel drivers sign with (src/channels/*). Must match
# env.channelSecrets in src/env.ts.
META_APP_SECRET=e2e-meta-app-secret
SLACK_SIGNING_SECRET=e2e-slack-signing-secret
SLACK_CLIENT_ID=e2e-slack-client-id
SLACK_CLIENT_SECRET=e2e-slack-client-secret
HUBSPOT_CLIENT_ID=e2e-hubspot-client-id
HUBSPOT_CLIENT_SECRET=e2e-hubspot-client-secret
PIPEDRIVE_CLIENT_ID=e2e-pipedrive-client-id
PIPEDRIVE_CLIENT_SECRET=e2e-pipedrive-client-secret
JIRA_CLIENT_ID=e2e-jira-client-id
JIRA_CLIENT_SECRET=e2e-jira-client-secret
JIRA_REDIRECT_URI=http://127.0.0.1:18000/api/v1/jira/callback
# Shopify signs the embedded app's session tokens with the app secret (src/api/shopify.ts).
SHOPIFY_API_KEY=e2e-shopify-api-key
SHOPIFY_API_SECRET=e2e-shopify-api-secret