Skip to content

Commit f363a6e

Browse files
author
Marcin Przepiorowski
committed
Merge branch 'ngix_upload' into develop
2 parents 80e76c8 + d2b413c commit f363a6e

File tree

2 files changed

+39
-24
lines changed

2 files changed

+39
-24
lines changed

bin/dx_ctl_engine_upgrade.pl

Lines changed: 38 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -90,25 +90,26 @@
9090

9191
my $file_version;
9292

93-
if ((lc $action eq 'upload') && (!defined($filename))) {
94-
print "Parameter -filename is required for upload action \n";
95-
pod2usage(-verbose => 1, -input=>\*DATA);
96-
exit (1);
97-
} else {
98-
99-
my $namechek = basename($filename);
100-
if ( ! (($file_version) = $namechek =~ /^delphix_(\d.\d.\d.\d)_\d\d\d\d-\d\d-\d\d-\d\d-\d\d.upgrade.tar.gz$/ )) {
101-
print "Filename is not matching delphix upgrade pattern \n";
93+
if (lc $action eq 'upload') {
94+
if (!defined($filename)) {
95+
print "Parameter -filename is required for upload action \n";
96+
pod2usage(-verbose => 1, -input=>\*DATA);
10297
exit (1);
103-
}
98+
} else {
10499

105-
if (!defined($file_version)) {
106-
print "Filename is not matching delphix upgrade pattern. Can't find version number \n";
107-
exit (1);
108-
}
100+
my $namechek = basename($filename);
101+
if ( ! (($file_version) = $namechek =~ /^delphix_(\d.\d.\d.\d)_\d\d\d\d-\d\d-\d\d-\d\d-\d\d.upgrade.tar.gz$/ )) {
102+
print "Filename is not matching delphix upgrade pattern \n";
103+
exit (1);
104+
}
109105

110-
}
106+
if (!defined($file_version)) {
107+
print "Filename is not matching delphix upgrade pattern. Can't find version number \n";
108+
exit (1);
109+
}
111110

111+
}
112+
}
112113

113114
# this array will have all engines to go through (if -d is specified it will be only one engine)
114115
my $engine_list = Toolkit_helpers::get_engine_list($all, $dx_host, $engine_obj);
@@ -142,7 +143,7 @@
142143
next;
143144
}
144145

145-
$jobstart = Toolkit_helpers::timestamp("-5min", $engine_obj);
146+
$jobstart = Toolkit_helpers::timestamp("-0min", $engine_obj);
146147

147148
my $rc = $engine_obj->uploadupdate($filename);
148149

@@ -160,16 +161,17 @@
160161
my $joblist;
161162

162163
do {
164+
$jobs->loadJobs();
163165
$joblist = $jobs->getJobList();
164166
if (version->parse($engine_obj->getApi()) >= version->parse(1.10.0)) {
165167
@refresh = grep { ($jobs->getJob($_)->getJobActionType()) eq 'UNPACK_VERSION' } @{$joblist};
166168
} else {
167169
@refresh = grep { ($jobs->getJob($_)->getJobActionType()) eq 'REFRESH_VERSIONS' } @{$joblist};
168170
}
169-
sleep 1;
171+
sleep 10;
170172
$counter = $counter + 1;
171-
if ($counter > 60) {
172-
print "There is no job - exiting\n";
173+
if ($counter > 18) {
174+
print "There is no job started for 3 minutes - exiting. File is uploaded please check GUI for job\n";
173175
$ret = $ret + 1;
174176
next;
175177
}
@@ -185,19 +187,33 @@
185187
next;
186188
}
187189

188-
$jobs = new Jobs($engine_obj, $jobstart, undef, undef, undef, undef, undef, undef, 1, undef, $debug);
189-
$joblist = $jobs->getJobList();
190-
@refresh = grep { ($jobs->getJob($_)->getJobActionType()) eq 'UPGRADE_VERIFY' } @{$joblist};
191190

192191
if (version->parse($engine_obj->getApi()) >= version->parse(1.9.0)) {
193192
# above 5.2 there is a verification job
193+
$counter = 0;
194+
$jobs = new Jobs($engine_obj, $jobstart, undef, undef, undef, undef, undef, undef, 1, undef, $debug);
195+
do {
196+
$jobs->loadJobs();
197+
$joblist = $jobs->getJobList();
198+
@refresh = grep { ($jobs->getJob($_)->getJobActionType()) eq 'UPGRADE_VERIFY' } @{$joblist};
199+
sleep 10;
200+
$counter = $counter + 1;
201+
if ($counter > 18) {
202+
print "There is no verification job started for 3 minutes - exiting. File is uploaded please check GUI for job\n";
203+
$ret = $ret + 1;
204+
next;
205+
}
206+
} while (scalar(@refresh)<1);
207+
194208
$job = $jobs->getJob($refresh[-1]);
195209
$retjob = $job->waitForJob();
196210
if ($retjob eq 'COMPLETED') {
197211
print "Verification job $job finished\n";
198212
} else {
199213
$ret = $ret + 1;
200214
}
215+
216+
201217
}
202218
}
203219

lib/Engine.pm

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1416,7 +1416,7 @@ sub uploadupdate {
14161416
my $fsize = $size;
14171417
# 6 for - char
14181418
# 63 is Content-Disposition plus end of lines
1419-
$size = $size + 2 * (length $boundary) + 6 + (length $filename) + 63;
1419+
$size = $size + 2 * (length $boundary) + 6 + (length basename($filename)) + 63;
14201420

14211421
my $h = HTTP::Headers->new(
14221422
Content_Length => $size,
@@ -1436,7 +1436,6 @@ sub uploadupdate {
14361436
# it's simple implementation and probably not a best one
14371437

14381438

1439-
14401439
my $content_provider_ref = &content_provider($filename, $size, $boundary, $self, $fsize);
14411440
$request->content($content_provider_ref);
14421441

0 commit comments

Comments
 (0)