summaryrefslogtreecommitdiffstats
path: root/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
commit2481f29a0f558f2d1b0140b9ab34615d96a4f222 (patch)
treee46ef3f2b7b03370672c091bec86aab913142ee7 /infra-dashboard/utils/jenkinsAdapter.php
parent2a634c9262e7f51a7802b69b9ba51641711f2ad4 (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 'infra-dashboard/utils/jenkinsAdapter.php')
-rw-r--r--infra-dashboard/utils/jenkinsAdapter.php204
1 files changed, 0 insertions, 204 deletions
diff --git a/infra-dashboard/utils/jenkinsAdapter.php b/infra-dashboard/utils/jenkinsAdapter.php
deleted file mode 100644
index c238feb..0000000
--- a/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>";
- */
-
-?>