Page MenuHomePhabricator

D19674.diff
No OneTemporary

D19674.diff

diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php
--- a/src/__phutil_library_map__.php
+++ b/src/__phutil_library_map__.php
@@ -1206,6 +1206,7 @@
'DrydockSlotLockException' => 'applications/drydock/exception/DrydockSlotLockException.php',
'DrydockSlotLockFailureLogType' => 'applications/drydock/logtype/DrydockSlotLockFailureLogType.php',
'DrydockTestRepositoryOperation' => 'applications/drydock/operation/DrydockTestRepositoryOperation.php',
+ 'DrydockTextLogType' => 'applications/drydock/logtype/DrydockTextLogType.php',
'DrydockWebrootInterface' => 'applications/drydock/interface/webroot/DrydockWebrootInterface.php',
'DrydockWorker' => 'applications/drydock/worker/DrydockWorker.php',
'DrydockWorkingCopyBlueprintImplementation' => 'applications/drydock/blueprint/DrydockWorkingCopyBlueprintImplementation.php',
@@ -6620,6 +6621,7 @@
'DrydockSlotLockException' => 'Exception',
'DrydockSlotLockFailureLogType' => 'DrydockLogType',
'DrydockTestRepositoryOperation' => 'DrydockRepositoryOperationType',
+ 'DrydockTextLogType' => 'DrydockLogType',
'DrydockWebrootInterface' => 'DrydockInterface',
'DrydockWorker' => 'PhabricatorWorker',
'DrydockWorkingCopyBlueprintImplementation' => 'DrydockBlueprintImplementation',
diff --git a/src/applications/drydock/logtype/DrydockTextLogType.php b/src/applications/drydock/logtype/DrydockTextLogType.php
new file mode 100644
--- /dev/null
+++ b/src/applications/drydock/logtype/DrydockTextLogType.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * Simple convenience log type for logging arbitrary text.
+ *
+ * Drydock logs can be given formal types, which allows them to be translated
+ * and filtered. If you don't particularly care about fancy logging features,
+ * you can use this log type to just dump some text into the log. Maybe you
+ * could upgrade to more formal logging later.
+ */
+final class DrydockTextLogType extends DrydockLogType {
+
+ const LOGCONST = 'core.text';
+
+ public function getLogTypeName() {
+ return pht('Text');
+ }
+
+ public function getLogTypeIcon(array $data) {
+ return 'fa-file-text-o grey';
+ }
+
+ public function renderLog(array $data) {
+ return idx($data, 'text');
+ }
+
+}
diff --git a/src/applications/drydock/storage/DrydockRepositoryOperation.php b/src/applications/drydock/storage/DrydockRepositoryOperation.php
--- a/src/applications/drydock/storage/DrydockRepositoryOperation.php
+++ b/src/applications/drydock/storage/DrydockRepositoryOperation.php
@@ -203,6 +203,14 @@
return $this->getProperty('exec.workingcopy.error');
}
+ public function logText($text) {
+ return $this->logEvent(
+ DrydockTextLogType::LOGCONST,
+ array(
+ 'text' => $text,
+ ));
+ }
+
public function logEvent($type, array $data = array()) {
$log = id(new DrydockLog())
->setEpoch(PhabricatorTime::getNow())

File Metadata

Mime Type
text/plain
Expires
Fri, Apr 11, 2:25 AM (1 w, 5 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7226821
Default Alt Text
D19674.diff (2 KB)

Event Timeline