diff --git a/.env.production b/.env.production index 3d417e2..5a5e32e 100644 --- a/.env.production +++ b/.env.production @@ -70,17 +70,20 @@ POSTGRES_DATABASE=rtdev_pds DATABASE_URL="postgres://${POSTGRES_USER}:${POSTGRES_PASS}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DATABASE}" ## secrets ## + JWT_SECRET=encrypted:BLmmqNPF739CN09NYhQTemuqv8EP7p6AMUgrSC0HG8QdBuzOmAyq+EqSuwqCjP3rz5En4E0YP8/zsevWELT3yblBVgnOJHfnrA7kDJeK2sWpTUe1dGz3RyLLru0lI/bI5Y/xtdHAlpdivXjpwnTTjC631eecT35OWCfJtG61E6RCSjawOkAwXKUjTjxp2RVAxPOeWOm0X+MlsfWKs//uOiE= DPOP_SECRET=encrypted:BKb9/+03IzwKDxdcnRfBqiwez6xKovJeUdZxky0msxzALAKzr28Px4uzVQ5UKWwBjBLUixCuKcIfXJnyYDkCGfv8dpW+tPxsc+qArwkBRrLCkCmIsVFuDhA0DM6C8QQG7upwhduY2yXjOHWTNV25szhIHPy/ombxFUdc7JLi4pXKHdnO/R9gVA7hnYo/VxQh9Vt9EVkWVWAzxuiQMpaM2B4= MASTER_KEY=encrypted:BLBGuUjUbaXdn4xAwdfGLdUYll+16X5pq1OLLTAMP/bjndIzE3oRtL1PCCRKsIRNzfv15FS1thgnrm9iXxOmVP0R0tysUV6YmlSghXO8IspMPGJtQeQD6x7uYbW1LB54b4icgnN490eyuUchF4p8o1Jo2FEMj674CXVbZ/AfnXhIE4P8Kqo9qqlfqi14DJx1DJHpBtW71Sebxp3PlWXqm54= PLC_ROTATION_KEY=encrypted:BC9fwjGYDu/q+OjigXmar89AOgoSs3oNpQYLKGpjJFIxf/KKEHKQO+Jqye/MU9jNj7r/tb7D8vxEfKacRFEk96YF/27kehuIrpV0CNKy6y4pUjtF9H+XW0KYYW4BeFxoeI48FTuG6SbBw6BZTxeYjTItxhZm282HxxvTVHOxma2fC2DsLNTHYUnmb+NfL+yA ## caching ## + CACHE_BACKEND=valkey # manage infra: https://cloud.redis.io/#/databases/14421126/subscription/3320496/view-bdb/configuration VALKEY_URL=encrypted:BKRyEJ1/flHm+3Avh9t1c9VmBQSYlmKHFPCaATn/IPk5KZmZ0Yi0C35r9va00QjoLp0FfN75JQb+9uVPMp7+O31JG+OIEYjbgYcYWRrt/+HYi+iU4h4TkswJjO5QvjsdZtvz4q8Ze4P7Kc51E+OikpYmsN3ytqjvXtkmbBhhYiberMHQMZDPp6IdcjwFJdu++Hz+08ScaaEGdynyUDOz8A/rhYd4+yMuylqsMwioa3lrF4KgHlFjzzOK03ddhKoGY3k= ## firehose + # Commented out to use defaults at https://gitlab.com/recaptime-dev/patches/tranquil-pds/-/blob/recaptime-dev/main/example.toml?ref_type=heads#L435 #CRAWLERS='https://relay.fire.hose.cam,https://relay3.fr.hose.cam,https://bsky.network,https://northamerica.firehose.network,https://europe.firehose.network,https://asia.firehose.network,https://atproto.africa,https://relay.upcloud.world' @@ -139,3 +142,4 @@ REPORT_SERVICE_DID= ## account data imports ## ACCEPTING_REPO_IMPORTS=true MAX_BLOB_SIZE=2147483648 +POSTGRESS_PASS="encrypted:BHWsJG2a1hZ9uBb9uN/gtof3XSuKFzwc4s7zI0Uqml5W2jXT4IAY3Y+95qosW/xLh0LKxNtc7FcZGoeZ0epZAqh8almAbJ4C+7mho0waNuVcwc94IX9RGeB7kx7Rd0/eFWqIrITIKQHDxHz4+/ddKjW5Wlf2VWWZGPt1SzJa3874numdjCI/npA=" diff --git a/.env.staging b/.env.staging index 6617563..1e2d9f1 100644 --- a/.env.staging +++ b/.env.staging @@ -5,6 +5,97 @@ DOTENV_PUBLIC_KEY_STAGING="0259e056af0a3f9ec903f16c2c403de81c887a3aa0b0ca9986013601bfc5d7cbb4" # .env.staging + +## basics + +# Self-explainatory. Changing this requires manual intervention by either admins or +# account holders themselves to ensure Bluesky and other Atmosphere apps can still +# find their accounts and its data in the form of doing PDS host migrations. +PDS_HOSTNAME=pds-test.ajhalili2006.dedyn.io +SERVER_PORT=4208 + +# Bypass age assurance related check for now, although we'll reevaulate this as +# legistation regarding age verification go through in the Philippines. +PDS_AGE_ASSURANCE_OVERRIDE=true + +# Enabled to prevent signup spam and service abuse. Request one at https://tally.so/r/J9X0dR. +INVITE_CODE_REQUIRED=true + +# Legalese docs +PRIVACY_POLICY_URL=https://policies.recaptime.dev/hosted-services/pds/privacy +TERMS_OF_SERVICE_URL=https://policies.recaptime.dev/hosted-services/pds/terms + +# Emails sent here are forwarded by Cloudflare Email Routing to GitLab Service Desk +# as confidential issuess. Note that +CONTACT_EMAIL=ajhalili2006@andreijiroh.dev + +# We limit the max blob size to 2 GB to avoid spiraling costs. +MAX_BLOB_SIZE=2147483648 + +# Required since we're behind Cloudflare proxy (aka Traefik/Caddy if we do spilt-horizion networking with Tailscale) +TRUSTED_PROXY_COUNT=1 + +## pds frontend settings ## + +FRONTEND_ENABLED=true +FRONTEND_DIR=/home/pdslabs/.local/share/tranquil-pds/frontend + + +## database settings ## + +# Tranquil PDS requires Postgres for data presistence, so we'll encrypting that via dotenvx +# Currently utilizing Uberspace 8 Beta's Postgres server for now :3 +POSTGRES_USER=pdslabs +POSTGRES_PASS=encrypted:BPqqKPx4X+VZSGOFVJ/WISQpnybk/HPpTpWrhDhzWnV94JeqErYEu2vOfwa5vdLg2cRPn9QmR6/H3vrK8sypv5pZ3adwn8zH9BriaKHc8XEa58xGdpYig9asB0rg/8E68KiR2uAQaLL0Q9E8/xqOSP6hLEgKKBVynAmD1lvvQCjst+j68aVlxUQ= +POSTGRES_HOST=localhost +POSTGRES_PORT=5432 +POSTGRES_DATABASE=pdslabs_pds +DATABASE_URL="postgres://${POSTGRES_USER}:${POSTGRES_PASS}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DATABASE}" + +## secrets ## + +JWT_SECRET="encrypted:BK60RtY+mWb7T8d5cd5ku0vHMR4QzLVDlEkOebl0PlqFePNT/ze1PjPfRF52i2t+tA9twsw3EYqSTHJdvZNtsFKTCja67G0gJdJnJAgVJUUA3xi2HebX2qkGp9JfcVIKVZ1EthRftP3ZrlEZ4T5PsNqsPuSSdapdJuXEUkcODD9w7qsk7vym2ARK14fkHHK0UTOYwACeU2WpDhKqrwXz46FY0P4JK9f2IEBKXIqqu3xkJZSJGO2ualsdL/dDFC1GZwRIoKVhL5Zp09FuYTmEBaWM6nVjfWUoshGv1Hw9JDmyccJUABeI" +DPOP_SECRET="encrypted:BA4pCtV6vozaHRIp94726HwhZOKTZHxyXBHLLjfOZCAED4xqoRKR30cMEvf34CLbOrfeERQOeVTq4Kbi6jj9JLWF7whu74vBYpgAKk4px9ZCNkRpuvzb/pFzu7ldngB5bSRJxZMC+z1pHLZn50ZvgmmEe4Jg+PQTj/uwpQFjQtjBKCiud09lUwi0KOo29DJhOS6rbHZ5VYxFlOzMOPDTFwHDKBvpNtHIH96hLoW+jYox7GTUpe99kpTEnIijlWkCgpEh0csC389g2cTPB97HJwy3XxQi4dE2fAlUYz8RvAFWDdqu1Mui" +MASTER_SECRET="encrypted:BCUqTGUf4878X2+8Gs6KLV3cGicjczcWyYChEnsC8aNPPYcVcCl7ze7G3MCWl1xE/Dr4+Imuay528wwGMJ8xfVYAq4gce7S4+U6+6IFcJrmmE+4gsbcRRyr//Z+8+3e8gk6agJV/Hjid/BjcIZJKQq6YzruGegQdkXm8ISLPDVoSNLKBGBlfeN6MbUOOZGwBFLKWDyCZeGbt2qlBxm1VkBcfnaCcWDX5uOIycEiVfCUvBZV3+Mqm1m9rEmeUfXj/T7pGKQf3LHT4fQ+BsGwB/QvVskz/R+++Kpv8dAmlnardO1bppBkX" +PLC_ROTATION_KEY=encrypted:BOe8mNIOrRSowATjgj8ixSAIGIqd+CDYhyuLGBUYH/91TS+erlOLxmozo6gTeDn6uAXi4HfWESEsqIk/0d1D66Nw85/cRcGO0xVNFsqUM74mdN0saKe+zhjogA2VxaJlYEc0h9KUC8mDZTmvZluPehGThCwmqb3+onEAZLHqziee1GuFq5GNdT7SK3CWIY/F + +## caching ## + +CACHE_BACKEND=valkey +# manage infra: https://cloud.redis.io/#/databases/14587764/subscription/3400128/view-bdb/configuration (Lairland HQ) +VALKEY_URL=encrypted:BA3BYx3M4m8lA5JCkEyTGfqaCWC35BfhDmQ60GgmE0I21t197FfX8RijjE7EfzFlbtkecnecQUDkxFduOQbvPAt4U8hwu6n/5CTLPko3l8TvEA6mdNKFlSSr95kqmThJO3Y6Jb+X26UJw1VK09s+GsMfPue76/CTO99ki9fAqhNFfhjw4HBwBYFpCdwaK1T0fBpwJ+k/BavoAaoPwVB10ty4RAZbzGrZ+9F2eGqNo0gBtcyZoH+7m4ukc7qNrDlpSHVVjipU + +## storage ## + +# Use the S3 backend for easy migration between hosts +BLOB_STORAGE_BACKEND=s3 +S3_BUCKET=pds-cdn-staging +S3_ENDPOINT=https://t3.storage.dev + +# Since it uses aws-sdk-s3, the usual AWS setup applies here +AWS_ACCESS_KEY_ID=encrypted:BO0MJs2UVTd3sPTRF23xBA0nXUgwGq3BKFMJhpJ1WgRzWCfxX60Q2cW2mVBC+VqO/o2212m/cMXxbU7ynxfUV3Nh+hjLc/AQ1jnhgNDldN/s/rJG3ok02+tdfMX7uL5a0tpoP8ljOlPH8yddNIn6wVJJkRn5kLV9DaYA2Tb3e7Sdgb4FyIbLIeYLoQy42Mz2bnXxm+ANSw== +AWS_SECRET_ACCESS_KEY=encrypted:BPbld8IW0ifc/Qi3TjgEXL/0JdTyHQzcuZWq1OeRiy5KRvzbFluQXJi6twi1JtCpoDQOSkKVWkHueF2nD6IObWSkELmxf/hRD1UPiXCTS0KCs/HBqDcUXlhkAqWY5ERA7l40n4L33kL8GfW+RFcyfWnAIj5R+EihmXWgofJ3U9ctJtSU6kNdrFVaRGuK1ypDNmNhFDk1I2Hwbf0wAA3/o494hEqNWa2AQsA72g== +AWS_ENDPOINT_URL_S3=https://t3.storage.dev +AWS_ENDPOINT_URL_IAM=https://iam.storage.dev +AWS_REGION=auto + +## email notifications ## +MAIL_FROM_ADDRESS=notifications-staging@pds.recaptime.dev +MAIL_FROM_NAME="Recap Time Squad PDS (staging)" +MAIL_SMARTHOST_HOST=smtp.atmos.email +MAIL_SMARTHOST_USERNAME=pds.recaptime.dev +MAIL_SMARTHOST_PASSWORD=encrypted:BDUPD9BPTD+PA+imtWmlGoa1w532k21wjNMcgWp4UkH8GcEbh5M2quxhUanbi2O+XeZzgNK5kIknfEATI7MMFTEWE3hoGPqVtR7thokwsGdW/X+r2COaAAW9tlflf6lcW6JFGvkfXVkKFly/2i4hqP6mJRyng6f1I3vEvOUNs1BnSyZepsmTGfUYwuGj1SRCXKM= +MAIL_SMARTHOST_TLS=implicit +MAIL_SMARTHOST_PORT=587 +MAIL_APPLY_ATMOS_CATEGORIES=true + +## OAuth / SSO ## + +# GitLab OAuth SSO_GITLAB_CLIENT_SECRET="encrypted:BGtEQTCsDPU9AiIPmmF1wOo1XatFRtY+gzjWc3zbyfKwHUtMmBPS8qBtAeOZQEK/Kezx3NGCJU5/Hj8Ize1ikpdoskaVfa7EZ4uCcG9+bdt9BcnmZdgHttuvrus8s81Jvobnkl/pPjY0pI/vHfSxVcG5DafpsjyGigl6qiOUmEE4aIqt2OTazt9bPj9e+YGFIv0oiZLUsXs2q9cSjjLS3Up+zATHA6w=" SSO_GITLAB_CLIENT_ID="7bef3732c65c48bc4747bb1c9dec21a2f3af17b17e5097af5f27d82831185c9b" SSO_GITLAB_CLIENT_ISSUER="https://gitlab.com" + +## account data imports ## +ACCEPTING_REPO_IMPORTS=true +MAX_BLOB_SIZE=2147483648