Merge remote-tracking branch 'upstream/master' into app_dhcp_enhancement

This commit is contained in:
SourceDoctor
2020-06-09 20:37:30 +02:00
4 changed files with 18 additions and 4 deletions
@@ -34,6 +34,7 @@ use LibreNMS\Interfaces\UI\DeviceTab;
class ShowConfigController extends Controller implements DeviceTab
{
private $rancidPath;
private $rancidFile;
public function visible(Device $device): bool
@@ -63,6 +64,7 @@ class ShowConfigController extends Controller implements DeviceTab
public function data(Device $device): array
{
return [
'rancid_path' => $this->getRancidPath(),
'rancid_file' => $this->getRancidConfigFile(),
];
}
@@ -74,6 +76,15 @@ class ShowConfigController extends Controller implements DeviceTab
&& $device->getAttrib('override_Oxidized_disable') !== 'true';
}
private function getRancidPath()
{
if (is_null($this->rancidPath)) {
$this->rancidFile = $this->findRancidConfigFile();
}
return $this->rancidPath;
}
private function getRancidConfigFile()
{
if (is_null($this->rancidFile)) {
@@ -97,12 +108,15 @@ class ShowConfigController extends Controller implements DeviceTab
}
if (is_file($configs . $device['hostname'])) {
$this->rancidPath = $configs;
return $configs . $device['hostname'];
} elseif (is_file($configs . strtok($device['hostname'], '.'))) { // Strip domain
$this->rancidPath = $configs;
return $configs . strtok($device['hostname'], '.');
} else {
if (!empty(Config::get('mydomain'))) { // Try with domain name if set
if (is_file($configs . $device['hostname'] . '.' . Config::get('mydomain'))) {
$this->rancidPath = $configs;
return $configs . $device['hostname'] . '.' . Config::get('mydomain');
}
}
+1 -1
View File
@@ -230,7 +230,7 @@ echo "
<div class='form-group'>
<label for='sysName' class='col-sm-2 control-label'>sysName (optional)</label>
<div class='col-sm-4'>
<input id='sysName' class='form-control' name='sysName' value='".htmspecialchars($device['sysName'])."'/>
<input id='sysName' class='form-control' name='sysName' value='".htmlspecialchars($device['sysName'])."'/>
</div>
</div>
<div class='form-group'>
@@ -46,7 +46,7 @@ if (Auth::user()->hasGlobalAdmin()) {
if (Config::get('rancid_repo_type') == 'git') {
$sep = ' | ';
$process = new Process(array('git', 'log', '-n 8', '--pretty=format:%h;%ct', $rancid_file), $configs);
$process = new Process(array('git', 'log', '-n 8', '--pretty=format:%h;%ct', $rancid_file), $rancid_path);
$process->run();
$gitlogs_raw = explode(PHP_EOL, $process->getOutput());
$gitlogs = array();
@@ -100,7 +100,7 @@ if (Auth::user()->hasGlobalAdmin()) {
}
} elseif (Config::get('rancid_repo_type') == 'git') {
if (in_array($vars['rev'], $revlist)) {
$process = new Process(array('git', 'diff', $vars['rev'] . '^', $vars['rev'], $rancid_file), $configs);
$process = new Process(array('git', 'diff', $vars['rev'] . '^', $vars['rev'], $rancid_file), $rancid_path);
$process->run();
$diff = $process->getOutput();
if (!$diff) {
+1 -1
View File
@@ -30,7 +30,7 @@
"features": null,
"os": "arista_eos",
"type": "network",
"serial": null,
"serial": "serial",
"icon": "arista.svg",
"location": "<private>"
}