@@ -2,29 +2,11 @@ import { createClient, RedisClientOptions } from 'redis';
2
2
import { CacheHandlerValue } from 'next/dist/server/lib/incremental-cache' ;
3
3
import { logger } from 'srcCommon/logger' ;
4
4
5
- type AppEnv = typeof process . env . ENV ;
6
-
7
- const clientOptions : Record < AppEnv , RedisClientOptions > = {
8
- localhost : {
9
- url : process . env . REDIS_URI_PAGECACHE ,
10
- username : process . env . REDIS_USERNAME_PAGECACHE ,
11
- password : process . env . REDIS_PASSWORD_PAGECACHE ,
12
- } ,
13
- prod : {
14
- url : process . env . REDIS_URI_PAGECACHE ,
15
- username : process . env . REDIS_USERNAME_PAGECACHE ,
16
- password : process . env . REDIS_PASSWORD_PAGECACHE ,
17
- } ,
18
- dev1 : {
19
- url : process . env . REDIS_URI_PAGECACHE_DEV1 ,
20
- username : process . env . REDIS_USERNAME_PAGECACHE_DEV1 ,
21
- password : process . env . REDIS_PASSWORD_PAGECACHE_DEV1 ,
22
- } ,
23
- dev2 : {
24
- url : process . env . REDIS_URI_PAGECACHE_DEV2 ,
25
- username : process . env . REDIS_USERNAME_PAGECACHE_DEV2 ,
26
- password : process . env . REDIS_PASSWORD_PAGECACHE_DEV2 ,
27
- } ,
5
+ const clientOptions : RedisClientOptions = {
6
+ url : process . env . REDIS_URI_PAGECACHE ,
7
+ username : process . env . REDIS_USERNAME_PAGECACHE ,
8
+ password : process . env . REDIS_PASSWORD_PAGECACHE ,
9
+ socket : { keepAlive : 5000 , connectTimeout : 10000 } ,
28
10
} as const ;
29
11
30
12
interface IRedisCache {
@@ -45,21 +27,9 @@ export class RedisCache implements IRedisCache {
45
27
private keyPrefix : string = '' ;
46
28
47
29
constructor ( { ttl } : ConstructorProps ) {
48
- const env = process . env . ENV ;
49
- const options = clientOptions [ env ] ;
50
-
51
- if ( ! options ) {
52
- throw Error (
53
- `Redis client options were not defined for the current app environment: ${ env } `
54
- ) ;
55
- }
56
-
57
30
this . ttl = ttl ;
58
31
59
- this . client = createClient ( {
60
- ...options ,
61
- socket : { keepAlive : 5000 , connectTimeout : 10000 } ,
62
- } )
32
+ this . client = createClient ( clientOptions )
63
33
. on ( 'connect' , ( ) => {
64
34
logger . info ( 'Redis client connected' ) ;
65
35
} )
@@ -76,11 +46,11 @@ export class RedisCache implements IRedisCache {
76
46
logger . error ( `Redis client error: ${ err } ` ) ;
77
47
} ) ;
78
48
79
- logger . info ( `Created redis client with url ${ options . url } ` ) ;
49
+ logger . info ( `Created redis client with url ${ clientOptions . url } ` ) ;
80
50
}
81
51
82
52
public async init ( keyPrefix : string ) {
83
- this . keyPrefix = keyPrefix ;
53
+ this . keyPrefix = ` ${ process . env . ENV } : ${ keyPrefix } ` ;
84
54
85
55
return this . client . connect ( ) . then ( ( ) => {
86
56
logger . info (
0 commit comments