Skip to content

Commit 56da27d

Browse files
committed
chore: Handle errors when reading config files in identities services
1 parent c1875d3 commit 56da27d

File tree

2 files changed

+53
-17
lines changed

2 files changed

+53
-17
lines changed

src/management/identities/jsonforms/identities.jsonforms.service.ts

Lines changed: 32 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -96,15 +96,28 @@ export class IdentitiesJsonformsService extends AbstractService {
9696
async generateAll(): Promise<any> {
9797
const hardConfigPath = './src/management/identities/validations/_config';
9898
const dynamicConfigPath = './configs/identities/validations';
99-
const hardConfigFiles = readdirSync(hardConfigPath).map((file) => ({ schema: file, path: hardConfigPath }));
100-
const dynamicConfigFiles = readdirSync(dynamicConfigPath).map((file) => ({
101-
schema: file,
102-
path: dynamicConfigPath,
103-
}));
99+
100+
let hardConfigFiles = [];
101+
try {
102+
hardConfigFiles = readdirSync(hardConfigPath).map((file) => ({ schema: file, path: hardConfigPath }));
103+
} catch (error) {
104+
console.log(`Error reading hard config files: ${error.message}`);
105+
}
106+
107+
let dynamicConfigFiles = [];
108+
try {
109+
dynamicConfigFiles = readdirSync(dynamicConfigPath).map((file) => ({
110+
schema: file,
111+
path: dynamicConfigPath,
112+
}));
113+
} catch (error) {
114+
console.log(`Error reading dynamic config files: ${error.message}`);
115+
}
104116

105117
console.log('Generating jsonforms for all schemas');
106118
console.log('Hard config files:', hardConfigFiles);
107119
console.log('Dynamic config files:', dynamicConfigFiles);
120+
108121
const files = [...hardConfigFiles, ...dynamicConfigFiles].filter((file) => file.schema.endsWith('.yml'));
109122
for (const file of files) {
110123
this.generate(file);
@@ -115,8 +128,20 @@ export class IdentitiesJsonformsService extends AbstractService {
115128
async findAll(): Promise<any> {
116129
const hardConfigPath = './src/management/identities/jsonforms/_config';
117130
const dynamicConfigPath = './configs/identities/jsonforms';
118-
const hardConfigFiles = readdirSync(hardConfigPath).map((file) => ({ file, path: hardConfigPath }));
119-
const dynamicConfigFiles = readdirSync(dynamicConfigPath).map((file) => ({ file, path: dynamicConfigPath }));
131+
132+
let hardConfigFiles = [];
133+
try {
134+
hardConfigFiles = readdirSync(hardConfigPath).map((file) => ({ file, path: hardConfigPath }));
135+
} catch (error) {
136+
console.log(`Error reading hard config files: ${error.message}`);
137+
}
138+
139+
let dynamicConfigFiles = [];
140+
try {
141+
dynamicConfigFiles = readdirSync(dynamicConfigPath).map((file) => ({ file, path: dynamicConfigPath }));
142+
} catch (error) {
143+
console.log(`Error reading dynamic config files: ${error.message}`);
144+
}
120145

121146
const files = [...hardConfigFiles, ...dynamicConfigFiles];
122147
const result = [];

src/management/identities/validations/identities.validation.service.ts

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -140,16 +140,27 @@ export class IdentitiesValidationService {
140140
const hardConfigPath = './src/management/identities/validations/_config';
141141
const dynamicConfigPath = './configs/identities/validations';
142142
// Retrieve files from each directory and tag them with their source
143-
const hardConfigFiles = readdirSync(hardConfigPath).map((file) => ({
144-
file,
145-
path: hardConfigPath,
146-
source: 'hardConfig',
147-
}));
148-
const dynamicConfigFiles = readdirSync(dynamicConfigPath).map((file) => ({
149-
file,
150-
path: dynamicConfigPath,
151-
source: 'dynamicConfig',
152-
}));
143+
let hardConfigFiles = [];
144+
try {
145+
hardConfigFiles = readdirSync(hardConfigPath).map((file) => ({
146+
file,
147+
path: hardConfigPath,
148+
source: 'hardConfig',
149+
}));
150+
} catch (error) {
151+
this.logger.error(`Error reading hard config files: ${error.message}`);
152+
}
153+
154+
let dynamicConfigFiles = [];
155+
try {
156+
dynamicConfigFiles = readdirSync(dynamicConfigPath).map((file) => ({
157+
file,
158+
path: dynamicConfigPath,
159+
source: 'dynamicConfig',
160+
}));
161+
} catch (error) {
162+
this.logger.error(`Error reading dynamic config files: ${error.message}`);
163+
}
153164

154165
// Combine the file arrays
155166
const files = [...hardConfigFiles, ...dynamicConfigFiles];

0 commit comments

Comments
 (0)