@@ -164,12 +164,15 @@ def create_subdirectories(self):
164
164
self .directories .userconfig ,
165
165
self .directories .resources
166
166
]
167
+
167
168
if NodeFeatures .API in self .config .node .features :
168
- directories .append (self .directories .dbdata )
169
169
directories .append (self .directories .rest_cache )
170
170
if self .config .node .api_https :
171
171
directories .append (self .directories .https_proxy )
172
172
173
+ if self .config .node .full_api :
174
+ directories .append (self .directories .dbdata )
175
+
173
176
if NodeFeatures .VOTER in self .config .node .features :
174
177
directories .append (self .directories .voting_keys )
175
178
@@ -217,7 +220,7 @@ def prepare_resources(self):
217
220
218
221
self ._copy_properties_files (PEER_EXTENSIONS )
219
222
220
- if NodeFeatures . API in self .config .node .features :
223
+ if self .config .node .full_api :
221
224
self ._copy_properties_files (API_EXTENSIONS )
222
225
223
226
if NodeFeatures .HARVESTER in self .config .node .features :
@@ -231,6 +234,14 @@ def configure_resources(self, user_patches=None):
231
234
"""Configures resources based on enabled features."""
232
235
233
236
if NodeFeatures .API in self .config .node .features :
237
+ self ._patch_resources ({
238
+ 'node' : [
239
+ ('node' , 'trustedHosts' , '127.0.0.1,172.20.0.25' ),
240
+ ('node' , 'localNetworks' , '127.0.0.1,172.20' ),
241
+ ]
242
+ })
243
+
244
+ if self .config .node .full_api :
234
245
self ._patch_resources ({
235
246
'extensions-server' : [
236
247
('extensions' , 'extension.filespooling' , 'true' ),
@@ -243,8 +254,6 @@ def configure_resources(self, user_patches=None):
243
254
],
244
255
'node' : [
245
256
('node' , 'enableAutoSyncCleanup' , 'false' ),
246
- ('node' , 'trustedHosts' , '127.0.0.1,172.20.0.25' ),
247
- ('node' , 'localNetworks' , '127.0.0.1,172.20' ),
248
257
('localnode' , 'roles' , 'Peer,Api' ),
249
258
]
250
259
})
@@ -273,10 +282,12 @@ def configure_rest(self, rest_overrides_filename=None):
273
282
if NodeFeatures .API not in self .config .node .features :
274
283
return
275
284
276
- self . _copy_tree_readonly ( self . directories . temp / 'mongo' , self .directories . mongo )
277
- self ._make_files_readonly (self .directories .mongo )
285
+ rest_file_name = 'rest' if self .config . node . full_api else 'rest-light'
286
+ self ._copy_file (self .directories .temp / 'rest' / f' { rest_file_name } .json' , self . directories . userconfig / 'rest.json' )
278
287
279
- self ._copy_file (self .directories .temp / 'rest' / 'rest.json' , self .directories .userconfig )
288
+ if self .config .node .full_api :
289
+ self ._copy_tree_readonly (self .directories .temp / 'mongo' , self .directories .mongo )
290
+ self ._make_files_readonly (self .directories .mongo )
280
291
281
292
if rest_overrides_filename :
282
293
rest_json_filepath = self .directories .userconfig / 'rest.json'
@@ -340,10 +351,12 @@ def generate_certificates(self, ca_key_path, require_ca=True):
340
351
def configure_docker (self , template_mapping ):
341
352
"""Prepares docker-compose file."""
342
353
343
- if NodeFeatures . API in self .config .node .features :
354
+ if self .config .node .full_api :
344
355
self ._copy_tree_readonly (_qualify_resource ('startup' ), self .directories .startup )
356
+ compose_template_filename_postfix = 'dual'
357
+ else :
358
+ compose_template_filename_postfix = 'peer'
345
359
346
- compose_template_filename_postfix = 'dual' if NodeFeatures .API in self .config .node .features else 'peer'
347
360
compose_template_filename = _qualify_resource (f'templates/docker-compose-{ compose_template_filename_postfix } .yaml' )
348
361
compose_output_filepath = self .directory / 'docker-compose.yaml'
349
362
apply_template (compose_template_filename , template_mapping , compose_output_filepath )
0 commit comments