appsmithorg/appsmith · critical · Error
Redis URL not found. Please check APPSMITH_REDIS_URL configu
Error message
Redis URL not found. Please check APPSMITH_REDIS_URL configuration.
What it means
Thrown immediately after the DB-URL check in enable_form_login.ts run(). utils.getRedisUrl() must return a Redis URL (APPSMITH_REDIS_URL) because enabling form login coordinates with the supervisor/Redis-backed state; a falsy value aborts before any mongosh call.
Source
Thrown at app/client/packages/rts/src/ctl/enable_form_login.ts:15
import * as utils from "./utils";
export async function run() {
const dbUrl = utils.getDburl();
const redisUrl = utils.getRedisUrl();
// Validate required configuration
if (!dbUrl) {
throw new Error(
"Database URL not found. Please check APPSMITH_DB_URL or APPSMITH_MONGODB_URI configuration.",
);
}
if (!redisUrl) {
throw new Error(
"Redis URL not found. Please check APPSMITH_REDIS_URL configuration.",
);
}
await utils.ensureSupervisorIsRunning();
let organizationId: string;
try {
// First, check if the organization exists
const orgCheckResult = await utils.execCommandReturningOutput([
"mongosh",
dbUrl,
"--eval",
"db.organization.findOne({slug:'default'},{_id:1,slug:1})",
"--json",
]);
View on GitHub (pinned to 8cd9021c24)
Solutions
- Set APPSMITH_REDIS_URL to a valid redis:// URL before running the ctl.
- Source the runtime env: '. /appsmith-stacks/runtime.env' then re-run.
- Confirm Redis is actually reachable at the configured URL ('redis-cli -u "$APPSMITH_REDIS_URL" ping') — by exit code, never by printing the value.
- Re-run the ctl once both DB and Redis URLs resolve.
Example fix
# before $ appsmith ctl enable-form-login # -> Redis URL not found... # after $ export APPSMITH_REDIS_URL='redis://...' $ appsmith ctl enable-form-login
Defensive patterns
Strategy: validation
Validate before calling
if (!process.env.APPSMITH_REDIS_URL) throw new Error('Set APPSMITH_REDIS_URL before running the ctl.'); Type guard
const hasRedisUrl = (env: NodeJS.ProcessEnv): boolean => Boolean(env.APPSMITH_REDIS_URL);
Prevention
- Source runtime.env in container shells before running ctls.
- Add Redis reachability (exit-code) checks in health scripts.
- Keep a single required-env validator shared across ctls.
When it happens
Trigger: Running the enable-form-login ctl without APPSMITH_REDIS_URL exported in the environment.
Common situations: Same shell/env gaps as the DB-URL error: one-off exec without sourcing runtime.env; Redis not yet provisioned on a fresh install; env var dropped during a config migration.
Related errors
- Database URL not found. Please check APPSMITH_DB_URL or APPS
- Failed to send error mail. Email provider is not configured,
- Failed to send error mail. Admin email(s) not configured, pl
- The NODE_ENV environment variable is required but was not sp
- Not enough space available at /appsmith-stacks. Please ensur
AI-assisted analysis of appsmithorg/appsmith@8cd9021c24 (2026-08-12).
Data as JSON: /api/errors/3ac8eb0731b0e3ab.
Report an issue: GitHub.