Page MenuHomePhabricator

D20779.id49546.diff
No OneTemporary

D20779.id49546.diff

diff --git a/src/applications/config/management/PhabricatorConfigManagementSetWorkflow.php b/src/applications/config/management/PhabricatorConfigManagementSetWorkflow.php
--- a/src/applications/config/management/PhabricatorConfigManagementSetWorkflow.php
+++ b/src/applications/config/management/PhabricatorConfigManagementSetWorkflow.php
@@ -140,11 +140,22 @@
'Wrote configuration key "%s" to database storage.',
$key);
} else {
- $config_source = id(new PhabricatorConfigLocalSource())
- ->setKeys(array($key => $value));
+ $config_source = new PhabricatorConfigLocalSource();
$local_path = $config_source->getReadablePath();
+ try {
+ Filesystem::assertWritable($local_path);
+ } catch (FilesystemException $ex) {
+ throw new PhutilArgumentUsageException(
+ pht(
+ 'Local path "%s" is not writable. This file must be writable '.
+ 'so that "bin/config" can store configuration.',
+ Filesystem::readablePath($local_path)));
+ }
+
+ $config_source->setKeys(array($key => $value));
+
$write_message = pht(
'Wrote configuration key "%s" to local storage (in file "%s").',
$key,

File Metadata

Mime Type
text/plain
Expires
Sun, Mar 9, 9:36 AM (3 w, 1 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7388006
Default Alt Text
D20779.id49546.diff (1 KB)

Event Timeline