@@ -134,10 +134,20 @@ sub getdSourceBackup
134
134
135
135
my $osuser = $self -> getOSUser();
136
136
137
+ my $exludes = $self -> getExludelist();
138
+
137
139
$restore_args = " dx_ctl_dsource$suffix -d $engine -action create -group \" $groupname \" -creategroup " ;
138
140
$restore_args = $restore_args . " -dsourcename \" $dbn \" -type $vendor -sourcename \" $dbhostname \" " ;
139
141
$restore_args = $restore_args . " -sourceinst \" $rephome \" -sourceenv \" " . $self -> getEnvironmentName() . " \" -source_os_user \" $osuser \" " ;
140
142
143
+ if (scalar (@{$exludes }) > 0) {
144
+ $exclude_str = ' ' ;
145
+ for my $i (@{$exludes }) {
146
+ $exclude_str = $exclude_str . " -exclude \" " . $i . " \" " ;
147
+ }
148
+ $restore_args = $restore_args . $exclude_str ;
149
+ }
150
+
141
151
$output -> addLine(
142
152
$restore_args
143
153
);
@@ -374,6 +384,7 @@ sub createVDB {
374
384
# - source_osuser - name of source OS user
375
385
# - dsource_name - name of dsource in environment
376
386
# - group - dsource group
387
+ # - exclude - exclude list
377
388
# Start job to add AppData dSource
378
389
# all above parameters are required. Additional parameters should by set by setXXXX procedures before this one is called
379
390
# Return job number if provisioning has been started, otherwise return undef
@@ -386,6 +397,7 @@ sub addSource {
386
397
my $source_osuser = shift ;
387
398
my $dsource_name = shift ;
388
399
my $group = shift ;
400
+ my $exclude = shift ;
389
401
390
402
391
403
logger($self -> {_debug }, " Entering AppDataVDB_obj::addSource" ,1);
@@ -412,7 +424,7 @@ sub addSource {
412
424
}
413
425
414
426
my @followarray ;
415
- my @excludes ;
427
+ # my @excludes;
416
428
my %dsource_params ;
417
429
418
430
if (version-> parse($self -> {_dlpxObject }-> getApi()) < version-> parse(1.8.0)) {
@@ -427,7 +439,7 @@ sub addSource {
427
439
" source" => {
428
440
" type" => " AppDataLinkedDirectSource" ,
429
441
" config" => $config -> {reference },
430
- " excludes" => \ @excludes ,
442
+ " excludes" => $exclude ,
431
443
" followSymlinks" => \@followarray
432
444
},
433
445
" environmentUser" => $source_os_ref
@@ -446,7 +458,7 @@ sub addSource {
446
458
" type" => " AppDataDirectLinkData" ,
447
459
" config" => $config -> {reference },
448
460
" environmentUser" => $source_os_ref ,
449
- " excludes" => \ @excludes ,
461
+ " excludes" => $exclude ,
450
462
" followSymlinks" => \@followarray ,
451
463
" parameters" => {}
452
464
}
@@ -461,7 +473,7 @@ sub addSource {
461
473
" type" => " AppDataDirectLinkData" ,
462
474
" config" => $config -> {reference },
463
475
" environmentUser" => $source_os_ref ,
464
- " excludes" => \ @excludes ,
476
+ " excludes" => $exclude ,
465
477
" followSymlinks" => \@followarray ,
466
478
" parameters" => {},
467
479
" syncParameters" => {
@@ -502,6 +514,20 @@ sub setName {
502
514
503
515
}
504
516
517
+
518
+ # Procedure getExludelist
519
+ # parameters: none
520
+ # Return an array with combained list of excludes
521
+
522
+ sub getExludelist
523
+ {
524
+ my $self = shift ;
525
+ logger($self -> {_debug }, " Entering AppDataVDB_obj::getExludelist" ,1);
526
+ my $exludearray = $self -> {source }-> {excludes };
527
+ return $exludearray ;
528
+ }
529
+
530
+
505
531
# Procedure getAdditionalMountpoints
506
532
# parameters: none
507
533
# Return an array with combained list of additional mount point env,path,sharedPath
0 commit comments