Registry / security / le-challenge-redis

le-challenge-redis

JSON →
library3.0.1jsnpmunverified

A Redis-based ACME challenge strategy for greenlock (Let's Encrypt) that stores, retrieves, and clears challenges in Redis. Designed for ephemeral/load-balanced environments like AWS Lambda. Current stable version is 3.0.1, released 2020. Ships TypeScript types. Key differentiator: supports clustering and ephemeral services where in-memory storage is insufficient.

npm install le-challenge-redis
INSTALL
IMPORT
SIG · LE-CHALLENGE-REDIS
L
le-challenge-redis
securityjavascriptv3.0.1
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

GreenlockRedisChallenge
import { GreenlockRedisChallenge } from 'le-challenge-redis'
const GreenlockRedisChallenge = require('le-challenge-redis')
Package exports a named class. CommonJS require will not work directly; use named destructuring or default import is not exported.
create
GreenlockRedisChallenge.create({ prefix: 'my-prefix' })
new GreenlockRedisChallenge()
The class constructor is not exposed; use static create method.
RedisClientOptions
import type { RedisClientOptions } from 'redis'
TypeScript users: redis client options are inferred from the 'redis' package, not re-exported.

Initialize a Redis-backed ACME challenge store for greenlock with a custom prefix and Redis connection URL.

import Greenlock from 'greenlock'; import { GreenlockRedisChallenge } from 'le-challenge-redis'; const challenge = GreenlockRedisChallenge.create({ prefix: 'my-acme', redisOptions: { url: process.env.REDIS_URL ?? 'redis://localhost:6379' } }); const greenlock = Greenlock.create({ challenges: { 'http-01': challenge } }); greenlock.retain('example.com').then(() => { console.log('Certificate retained'); });
Debug
Known issues
deprecatedThe greenlock package (v3) is deprecated and no longer maintained. Consider using acme-client or other modern ACME clients.
fix
Migrate to a maintained ACME client like 'acme-client' and a compatible challenge strategy.
affects: >=3.0.0
gotchaDo NOT require('le-challenge-redis') and use as a constructor; package exports a named class, not a default export.
fix
Use { GreenlockRedisChallenge } = require('le-challenge-redis') (CommonJS) or import { GreenlockRedisChallenge } from 'le-challenge-redis' (ESM).
affects: >=3.0.0
breakingVersion 3.0.0 migrated to TypeScript and changed export from default to named.
fix
Update imports from 'const le = require('le-challenge-redis')' to 'const { GreenlockRedisChallenge } = require('le-challenge-redis')'.
affects: >=3.0.0
Errors
Common errors & fixes
TypeError: le_challenge_redis_1.default is not a constructor
Default import used when package exports a named class.
fix
Use named import: import { GreenlockRedisChallenge } from 'le-challenge-redis'
Error: Cannot find module 'greenlock'
Missing peer dependency greenlock.
fix
Install peer dependency: npm install greenlock@3.x
TypeError: challenge.set is not a function
create() method was not called; object is not initialized correctly.
fix
Use GreenlockRedisChallenge.create() to get a challenge instance.
Upgrade
Version history
3.0.1latest on npm
Audit
Dependencies
greenlockrequiredPeer dependency – plugin for greenlock ACME client
Agent activity
7 hits · last 30 days
node
6
OpenAI (training)
1
Resources
le-challenge-redis — npm install le-challenge-redis · libregistry