1515 *
1616 */
1717
18- import * as fs from 'fs/promises ' ;
18+ import * as fs from 'fs' ;
1919import * as logging from './logging' ;
2020import { LogVerbosity } from './constants' ;
21+ import { promisify } from 'util' ;
2122
2223const TRACER_NAME = 'certificate_provider' ;
2324
@@ -56,6 +57,8 @@ export interface FileWatcherCertificateProviderConfig {
5657 refreshIntervalMs : number ;
5758}
5859
60+ const readFilePromise = promisify ( fs . readFile ) ;
61+
5962export class FileWatcherCertificateProvider implements CertificateProvider {
6063 private refreshTimer : NodeJS . Timeout | null = null ;
6164 private fileResultPromise : Promise < [ PromiseSettledResult < Buffer > , PromiseSettledResult < Buffer > , PromiseSettledResult < Buffer > ] > | null = null ;
@@ -82,9 +85,9 @@ export class FileWatcherCertificateProvider implements CertificateProvider {
8285 return ;
8386 }
8487 this . fileResultPromise = Promise . allSettled ( [
85- this . config . certificateFile ? fs . readFile ( this . config . certificateFile ) : Promise . reject < Buffer > ( ) ,
86- this . config . privateKeyFile ? fs . readFile ( this . config . privateKeyFile ) : Promise . reject < Buffer > ( ) ,
87- this . config . caCertificateFile ? fs . readFile ( this . config . caCertificateFile ) : Promise . reject < Buffer > ( )
88+ this . config . certificateFile ? readFilePromise ( this . config . certificateFile ) : Promise . reject < Buffer > ( ) ,
89+ this . config . privateKeyFile ? readFilePromise ( this . config . privateKeyFile ) : Promise . reject < Buffer > ( ) ,
90+ this . config . caCertificateFile ? readFilePromise ( this . config . caCertificateFile ) : Promise . reject < Buffer > ( )
8891 ] ) ;
8992 this . fileResultPromise . then ( ( [ certificateResult , privateKeyResult , caCertificateResult ] ) => {
9093 if ( ! this . refreshTimer ) {
0 commit comments