summaryrefslogtreecommitdiffstats
path: root/tools/infra-dashboard/utils/jenkinsAdapter.php
diff options
context:
space:
mode:
authorjose.lausuch <jose.lausuch@ericsson.com>2016-09-01 10:44:01 +0200
committerjose.lausuch <jose.lausuch@ericsson.com>2016-09-01 10:44:01 +0200
commitd6f164dc96576a93d5472a95878a79b8167b5898 (patch)
tree9d2918ade259342efa057b9b19db7400d4250dc9 /tools/infra-dashboard/utils/jenkinsAdapter.php
parentdd44ecc402ca86cbcd02042229a42d3346e53d3d (diff)
Remove first prototype of the Pharos Dashboard
The Dashboard implementation from Max is im progress and more advanced than the initial one. It doesn't make sense to maintain both of them. Change-Id: Iabea63a7e5b6e8d64cb72b8de2264c5c4484eae8 Signed-off-by: jose.lausuch <jose.lausuch@ericsson.com>
Diffstat (limited to 'tools/infra-dashboard/utils/jenkinsAdapter.php')
-rw-r--r--tools/infra-dashboard/utils/jenkinsAdapter.php204
1 files changed, 0 insertions, 204 deletions
diff --git a/tools/infra-dashboard/utils/jenkinsAdapter.php b/tools/infra-dashboard/utils/jenkinsAdapter.php
deleted file mode 100644
index c238feb7..00000000
--- a/tools/infra-dashboard/utils/jenkinsAdapter.php
+++ /dev/null
@@ -1,204 +0,0 @@
-<?php
-
- function getSlaves() {
- $query="https://build.opnfv.org/ci/computer/api/xml?tree=computer[displayName,offline,idle]";
- $output = file_get_contents($query);
- $xml = simplexml_load_string($output);
- if ($xml) return $xml;
- else return "";
- }
-
- function getCiSlaves(){
- $query="https://build.opnfv.org/ci/label/ci-pod/api/xml?xpath=labelAtom/node[nodeName]&wrapper=nodes";
- $output = file_get_contents($query);
- $xml = simplexml_load_string($output);
- if ($xml) return $xml;
- else return "";
- }
-
- function getAllBuilds(){
- $query="https://build.opnfv.org/ci/api/xml?tree=jobs[displayName,url,lastBuild[fullDisplayName,building,builtOn,timestamp,result]]";
- $output = file_get_contents($query);
- $xml = simplexml_load_string($output);
- if ($xml) return $xml;
- else return "";
- }
-
- $SLAVES = getSlaves();
- $CI_PODS = getCiSlaves();
- $ALL_BUILDS = getAllBuilds();
-
- function getActiveBuilds() {
- global $ALL_BUILDS;
- //$query="https://build.opnfv.org/ci/api/xml?tree=jobs[displayName,url,lastBuild[fullDisplayName,building,builtOn,timestamp]]&xpath=hudson/job[lastBuild/building=%27true%27]&wrapper=hudson";
- $xml = $ALL_BUILDS->xpath('job[lastBuild/building="true"]');
- if ($xml) return $xml;
- else return "";
- }
-
- $ACTIVE_BUILDS = getActiveBuilds();
-
- function slaveExists($slave) {
- global $SLAVES;
- $slave = $SLAVES->xpath('computer[displayName="'.$slave.'"]');
- if ($slave) return true;
- else return false;
- }
-
- function getSlaveStatus($slave) {
- global $SLAVES;
- $status = "unknown";
- if (!slaveExists($slave)) return $status;
- $slave = $SLAVES->xpath('computer[displayName="'.$slave.'"]');
- $offline = $slave[0]->offline;
-
- if ($offline == "true") $status = "offline";
- else $status = "online";
- return $status;
- }
-
- function getSlaveUrl($slave) {
- if (slaveExists($slave)) return "https://build.opnfv.org/ci/computer/".$slave;
- else return "";
- }
-
-
- function isCiPod($slave) {
- global $CI_PODS;
- $result = $CI_PODS->xpath('node[nodeName="'.$slave.'"]');
- if ($result) return true;
- else return false;
- }
-
- function isDevPod($slave) {
- global $CI_PODS;
- if (isCiPod($slave)) return false;
- else if (strpos($slave, 'pod') !== false) return true;
- else return false;
- }
-
- function parseJobString($str) {
- $scenario = '';
- $installer = '';
- $branch = '';
- $installers = array("fuel", "joid", "apex", "compass");
- $branches = array("master","arno", "brahmaputra", "colorado");
- $arr = split ('[ -]', $str);
- for($x = 0; $x < count($arr); $x++) {
- if (strcmp($arr[$x],"os") == 0) //all the scenarios start with 'os'
- $scenario = $arr[$x].'-'.$arr[$x+1].'-'.$arr[$x+2].'-'.$arr[$x+3];
- else if (in_array($arr[$x], $installers))
- $installer = $arr[$x];
- else if (in_array($arr[$x], $branches))
- $branch = $arr[$x];
- }
- $arr2 = explode(' ', $str);
- $jobname = $arr2[0]; //take first word as job name
-
- return array(
- "jobname"=>$jobname,
- "installer"=>$installer,
- "branch"=>$branch,
- "scenario"=>$scenario
- );
- }
-
-
- function getJJob($slave) {
- global $ALL_BUILDS;
- if (!slaveExists($slave)) return "";
-
- //$builds = $ALL_BUILDS;
- //$xml = $ALL_BUILDS->xpath('job[lastBuild/building="true"][lastBuild/builtOn="'.$slave.'"]');
- $builds = $ALL_BUILDS->xpath('job[lastBuild/builtOn="'.$slave.'"]');
- if (! $builds) { //the slave does not have jobs in building state
- //echo "NO JOBS FOUND";
- return "";
- }
- else {
- //is there any active build?
- $builds = $ALL_BUILDS->xpath('job[lastBuild/building="true"][lastBuild/builtOn="'.$slave.'"]');
- if ($builds) { // there are active builds for this slave
- //print_r($builds);
-
- $child_job = simplexml_import_dom($builds[0]);
- foreach ($builds as &$build) {
- $int1 = intval($build->lastBuild->timestamp);
- $int2 = intval($child_job->lastBuild->timestamp);
- if ($int1 > $int2) {
- $child_job = simplexml_import_dom($build);
- }
- }
- $url = strval($child_job->url);
- $fullDisplayName = $child_job->lastBuild->fullDisplayName;
- //echo $fullDisplayName."<br>";
-
- $params = parseJobString($fullDisplayName);
-
- $type = 0; // type=0 means the job is running
- $job_params = array(
- "name"=>$params['jobname'],
- "url"=>$url,
- "scenario"=>$params['scenario'],
- "installer"=>$params['installer'],
- "branch"=>$params['branch'],
- "type"=>$type
- );
- //print_r($job_params);
- return $job_params;
-
- }
- else { // there are NO active builds for this slave, we take the latest build
- //echo "NO Active builds";
- $builds = $ALL_BUILDS->xpath('job[lastBuild/building="false"][lastBuild/builtOn="'.$slave.'"]');
- $last_job = simplexml_import_dom($builds[0]);
- //print_r($last_job);
- foreach ($builds as &$build) {
- $int1 = intval($build->lastBuild->timestamp);
- $int2 = intval($last_job->lastBuild->timestamp);
- if ($int1 > $int2) {
- $last_job = simplexml_import_dom($build);
- }
- }
- $url = strval($last_job->url);
- $result = strval($last_job->lastBuild->result);
- $fullDisplayName = $last_job->lastBuild->fullDisplayName;
-
- $params = parseJobString($fullDisplayName);
-
- $type = 3;
- if ($result == "SUCCESS") $type = 1; // type=1 means it's the last job and it succeded
- if ($result == "FAILURE") $type = 2; // type=2 means it's the last job and it failed
- if ($result == "UNSTABLE") $type = 3; // type=3 means it's the last job is unstable
-
- $job_params = array(
- "name"=>$params['jobname'],
- "url"=>$url,
- "scenario"=>$params['scenario'],
- "installer"=>$params['installer'],
- "branch"=>$params['branch'],
- "type"=>$type
- );
-
- return $job_params;
- //print_r($job_params);
- }
-
- }
- }
-
- /*
- $slave = "lf-pod2";
- $job_params = getJJob($slave);
-
- $status = getSlaveStatus($slave);
- echo "Status slave ".$slave.": ".$status."<br>";
- echo "Job: ".$job_params['name']."<br>";
- echo "URL: ".$job_params['url']."<br>";
- echo "Scenario: ".$job_params['scenario']."<br>";
- echo "Installer: ".$job_params['installer']."<br>";
- echo "Branch: ".$job_params['branch']."<br>";
- echo "Type: ".$job_params['type']."<br>";
- */
-
-?>