Page MenuHomePhabricator

D14507.id.diff
No OneTemporary

D14507.id.diff

diff --git a/src/applications/drydock/logtype/DrydockLeaseActivationFailureLogType.php b/src/applications/drydock/logtype/DrydockLeaseActivationFailureLogType.php
--- a/src/applications/drydock/logtype/DrydockLeaseActivationFailureLogType.php
+++ b/src/applications/drydock/logtype/DrydockLeaseActivationFailureLogType.php
@@ -15,8 +15,40 @@
public function renderLog(array $data) {
$class = idx($data, 'class');
$message = idx($data, 'message');
+ $stdout = idx($data, 'stdout', null);
+ $stderr = idx($data, 'stderr', null);
- return pht('Lease activation failed: [%s] %s', $class, $message);
+ $primary = pht('Lease activation failed: [%s] %s', $class, $message);
+ if ($stdout !== null || $stderr !== null) {
+ $stdout = phutil_split_lines($stdout);
+ $stderr = phutil_split_lines($stderr);
+
+ $formatted_stdout = array();
+ $formatted_stderr = array();
+ foreach ($stdout as $line) {
+ $formatted_stdout[] = $line;
+ $formatted_stdout[] = phutil_tag('br', array(), null);
+ }
+ foreach ($stderr as $line) {
+ $formatted_stderr[] = $line;
+ $formatted_stderr[] = phutil_tag('br', array(), null);
+ }
+
+ array_pop($formatted_stderr);
+
+ $primary = array(
+ $primary,
+ phutil_tag('br', array(), null),
+ pht('STDOUT'),
+ phutil_tag('br', array(), null),
+ $formatted_stdout,
+ pht('STDERR'),
+ phutil_tag('br', array(), null),
+ $formatted_stderr,
+ );
+ }
+
+ return $primary;
}
}
diff --git a/src/applications/drydock/logtype/DrydockResourceActivationFailureLogType.php b/src/applications/drydock/logtype/DrydockResourceActivationFailureLogType.php
--- a/src/applications/drydock/logtype/DrydockResourceActivationFailureLogType.php
+++ b/src/applications/drydock/logtype/DrydockResourceActivationFailureLogType.php
@@ -15,8 +15,40 @@
public function renderLog(array $data) {
$class = idx($data, 'class');
$message = idx($data, 'message');
+ $stdout = idx($data, 'stdout', null);
+ $stderr = idx($data, 'stderr', null);
- return pht('Resource activation failed: [%s] %s', $class, $message);
+ $primary = pht('Resource activation failed: [%s] %s', $class, $message);
+ if ($stdout !== null || $stderr !== null) {
+ $stdout = phutil_split_lines($stdout);
+ $stderr = phutil_split_lines($stderr);
+
+ $formatted_stdout = array();
+ $formatted_stderr = array();
+ foreach ($stdout as $line) {
+ $formatted_stdout[] = $line;
+ $formatted_stdout[] = phutil_tag('br', array(), null);
+ }
+ foreach ($stderr as $line) {
+ $formatted_stderr[] = $line;
+ $formatted_stderr[] = phutil_tag('br', array(), null);
+ }
+
+ array_pop($formatted_stderr);
+
+ $primary = array(
+ $primary,
+ phutil_tag('br', array(), null),
+ pht('STDOUT'),
+ phutil_tag('br', array(), null),
+ $formatted_stdout,
+ pht('STDERR'),
+ phutil_tag('br', array(), null),
+ $formatted_stderr,
+ );
+ }
+
+ return $primary;
}
}
diff --git a/src/applications/drydock/worker/DrydockLeaseUpdateWorker.php b/src/applications/drydock/worker/DrydockLeaseUpdateWorker.php
--- a/src/applications/drydock/worker/DrydockLeaseUpdateWorker.php
+++ b/src/applications/drydock/worker/DrydockLeaseUpdateWorker.php
@@ -757,6 +757,8 @@
array(
'class' => get_class($ex),
'message' => $ex->getMessage(),
+ 'stdout' => ($ex instanceof CommandException) ? $ex->getStdout() : null,
+ 'stderr' => ($ex instanceof CommandException) ? $ex->getStderr() : null,
));
$lease->awakenTasks();
diff --git a/src/applications/drydock/worker/DrydockResourceUpdateWorker.php b/src/applications/drydock/worker/DrydockResourceUpdateWorker.php
--- a/src/applications/drydock/worker/DrydockResourceUpdateWorker.php
+++ b/src/applications/drydock/worker/DrydockResourceUpdateWorker.php
@@ -252,6 +252,8 @@
array(
'class' => get_class($ex),
'message' => $ex->getMessage(),
+ 'stdout' => ($ex instanceof CommandException) ? $ex->getStdout() : null,
+ 'stderr' => ($ex instanceof CommandException) ? $ex->getStderr() : null,
));
throw new PhabricatorWorkerPermanentFailureException(

File Metadata

Mime Type
text/plain
Expires
Oct 15 2025, 11:50 AM (13 w, 5 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
8880124
Default Alt Text
D14507.id.diff (4 KB)

Event Timeline