[freeside-commits] branch FREESIDE_3_BRANCH updated. a111293b6aa333fdfe727df17eaf4a66ba9c6672

Jonathan Prykop jonathan at 420.am
Tue Nov 24 12:54:48 PST 2015


The branch, FREESIDE_3_BRANCH has been updated
       via  a111293b6aa333fdfe727df17eaf4a66ba9c6672 (commit)
      from  6cd1eaed3f43ff8d3e649f76eb2083587d8d63d1 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit a111293b6aa333fdfe727df17eaf4a66ba9c6672
Author: Jonathan Prykop <jonathan at freeside.biz>
Date:   Tue Nov 24 02:32:41 2015 -0600

    RT#38989: Incorrect paths when cacti is installed from source

diff --git a/FS/FS/part_export/cacti.pm b/FS/FS/part_export/cacti.pm
index a1447ac..0220ff7 100644
--- a/FS/FS/part_export/cacti.pm
+++ b/FS/FS/part_export/cacti.pm
@@ -55,6 +55,8 @@ tie my %options, 'Tie::IxHash',
   'delete_graphs'     => { label   => 'Delete associated graphs and data sources when unprovisioning', 
                            type    => 'checkbox',
                          },
+  'include_path'      => { label   => 'Path to cacti include dir (relative to script_path)',
+                           default => '../site/include/' },
   'cacti_graph_template_id'  => { 
     'label'    => 'Graph Template',
     'type'     => 'custom',
@@ -193,6 +195,7 @@ sub _delete_queue {
     'hostname'      => $svc_broadband->ip_addr,
     'script_path'   => $self->option('script_path'),
     'delete_graphs' => $self->option('delete_graphs'),
+    'include_path'  => $self->option('include_path'),
   );
   return ($queue,$error);
 }
@@ -251,6 +254,8 @@ sub ssh_insert {
        . trailslash($opt{'script_path'}) 
        . q(freeside_cacti.php --get-graph-templates --host-template=)
        . $opt{'template_id'};
+  $cmd .= q( --include-path=') . $self->option('include_path') . q(')
+    if $self->option('include_path');
   my $ginfo = { map { $_ ? ($_ => undef) : () } split(/\n/,ssh_cmd(%opt, 'command' => $cmd)) };
 
   # Add extra config info
@@ -343,6 +348,8 @@ sub ssh_delete {
           . q(');
   $cmd .= q( --delete-graphs)
     if $opt{'delete_graphs'};
+  $cmd .= q( --include-path=') . $opt{'include_path'} . q(')
+    if $opt{'include_path'};
   my $response = ssh_cmd(%opt, 'command' => $cmd);
   die "Error removing from cacti: " . $response
     if $response;
@@ -420,6 +427,8 @@ sub process_graphs {
           . q(freeside_cacti.php --get-graphs --ip=')
           . $svc->ip_addr
           . q(');
+  $cmd .= q( --include-path=') . $self->option('include_path') . q(')
+    if $self->option('include_path');
   my @graphs = map { [ split(/\t/,$_) ] } 
                  split(/\n/, ssh_cmd(
                    'host'          => $self->machine,
@@ -501,7 +510,7 @@ sub process_graphs {
       }
       unlink($thumbfile);
     } else {
-      $svchtml .= qq(<P STYLE="color: #FF0000">File $thumbfile does not exist, skipping</P>);
+      $svchtml .= qq(<P STYLE="color: #FF0000">Error loading graph: $$graph[0]</P>);
     }
     $job->update_statustext(49 + int($i / @graphs) * 50);
   }
diff --git a/bin/freeside_cacti.php b/bin/freeside_cacti.php
index 9f8e4dd..be9ea4e 100755
--- a/bin/freeside_cacti.php
+++ b/bin/freeside_cacti.php
@@ -31,22 +31,11 @@ if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD'])  || isset($
 /* We are not talking to the browser */
 $no_http_headers = true;
 
-/* 
-Currently, only drop-device and get-graphs is actually being used by Freeside integration,
-but keeping commented out code for potential future development.
-*/
-
-include(dirname(__FILE__)."/../site/include/global.php");
-include_once($config["base_path"]."/lib/api_device.php");
-include_once($config["base_path"]."/lib/api_automation_tools.php");
-include_once($config["base_path"]."/lib/api_data_source.php");
-include_once($config["base_path"]."/lib/api_graph.php");
-include_once($config["base_path"]."/lib/functions.php");
-
 /* process calling arguments */
 $action = '';
 $ip = '';
 $host_template = '';
+$include_path = "../site/include/";
 $delete_graphs = FALSE;
 $parms = $_SERVER["argv"];
 array_shift($parms);
@@ -77,6 +66,9 @@ if (sizeof($parms)) {
 		case "--delete-graphs":
 			$delete_graphs = TRUE;
 			break;
+		case "--include-path":
+			$include_path = trim($value);
+			break;
 		case "--version":
 		case "-V":
 		case "-H":
@@ -90,6 +82,17 @@ if (sizeof($parms)) {
   die(default_die());
 }
 
+$include_path = dirname(__FILE__).'/'.$include_path.'/global.php';
+if (!file_exists($include_path)) {
+  die("File " . $include_path . "/global.php not found (check include_path in freeside export config)");
+}
+include($include_path);
+include_once($config["base_path"]."/lib/api_device.php");
+include_once($config["base_path"]."/lib/api_automation_tools.php");
+include_once($config["base_path"]."/lib/api_data_source.php");
+include_once($config["base_path"]."/lib/api_graph.php");
+include_once($config["base_path"]."/lib/functions.php");
+
 /* Now take an action */
 switch ($action) {
 case "get-graphs":

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/part_export/cacti.pm |   11 ++++++++++-
 bin/freeside_cacti.php     |   27 +++++++++++++++------------
 2 files changed, 25 insertions(+), 13 deletions(-)




More information about the freeside-commits mailing list