-
-
Save TruDan/0eb2abf064045f853b16 to your computer and use it in GitHub Desktop.
Update BukkitDev Images
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$ROOT = "/home/admin/SpyroDev"; | |
function updateReleaseImage($project) { | |
global $ROOT; | |
// Get last successful build info | |
$xml = file_get_contents('http://dev.bukkit.org/server-mods/'.strtolower($project).'/files.rss'); | |
$xmlobj = simplexml_load_string($xml); | |
//var_dump($xmlobj->channel); | |
foreach($xmlobj->channel->item as $item) { | |
$version = trim(preg_replace('/\s*\([^)]*\)/', '', $item->title)); | |
$vars = explode('-',$version, 2); | |
$version = trim($vars[1]); | |
$project = trim($vars[0]); | |
$ciVersion = trim(strip_tags(end(explode("Jenkins CI Build Version:",$item->description)))); | |
// http://jenkins.roguedraco.net/job/JumpPorts/lastSuccessfulBuild/net.roguedraco$JumpPorts/artifact/net.roguedraco/JumpPorts/2.1-R1/JumpPorts-2.1-R1.pom | |
$pomxml = file_get_contents("http://jenkins.roguedraco.net/job/".$project."/".$ciVersion."/net.roguedraco$".$project."/artifact/net.roguedraco/".$project."/".$version."/".$project."-".$version.".pom"); | |
$pom = simplexml_load_string($pomxml); | |
$bukkitVersion = "Unknown"; | |
// Get Bukkit version | |
foreach($pom->dependencies->dependency as $depend) { | |
if($depend->artifactId == 'bukkit') { | |
$bukkitVersion = $depend->version; | |
} | |
} | |
$projectVersion = $pom->version; | |
// The image! :O | |
$img = imagecreatefrompng($ROOT.'/img/latest-release-tpl.png'); | |
// Colours | |
$white = imagecolorallocate($img, 255, 255, 255); | |
// Fonts | |
$font = $ROOT."/fonts/Lithos_Pro.otf"; | |
// Draw on the Project Version | |
imagefttext($img, 14, 0, 75, 60, $white, $font, $projectVersion); | |
// Draw on the bukkit Version | |
imagefttext($img, 10, 0, 75, 75, $white, $font, "(MC ".$bukkitVersion.")"); | |
imagealphablending( $img, false ); | |
imagesavealpha( $img, true ); | |
header('Content-type: image/png'); | |
imagepng($img,$ROOT."/projects/".$project."/static/latestrelease.png"); | |
imagedestroy($img); | |
break; | |
} | |
} | |
function updateDevImage($project) { | |
global $ROOT; | |
$xml = file_get_contents('http://jenkins.roguedraco.net/job/'.$project.'/rssAll'); | |
$xmlobj = simplexml_load_string($xml); | |
foreach($xmlobj->entry as $item) { | |
if(stripos($item->title,"stable") || stripos($item->title,"normal")) { | |
$version = trim(preg_replace('/\s*\([^)]*\)/', '', $item->title)); | |
$vars = explode('#',$version); | |
$version = trim($vars[1]); | |
$project = trim($vars[0]); | |
//$pomxml = file_get_contents("http://jenkins.roguedraco.net/job/".$project."/".$ciVersion."/net.roguedraco$".$project."/artifact/net.roguedraco/".$project."/".$version."/".$project."-".$version.".pom"); | |
//$pom = simplexml_load_string($pomxml); | |
$url = trim("https://raw.github.com/SpyroDev/".$project."/master/pom.xml"); | |
$pomxml = file_get_contents($url); | |
$pom = simplexml_load_string($pomxml); | |
$bukkitVersion = "Unknown"; | |
// Get Bukkit version | |
foreach($pom->dependencies->dependency as $depend) { | |
if($depend->artifactId == 'bukkit') { | |
$bukkitVersion = $depend->version; | |
} | |
} | |
$projectVersion = $pom->version; | |
// The image! :O | |
$img = imagecreatefrompng($ROOT.'/img/latest-dev-tpl.png'); | |
// Colours | |
$white = imagecolorallocate($img, 255, 255, 255); | |
// Fonts | |
$font = $ROOT."/fonts/Lithos_Pro.otf"; | |
// Draw on the Dev build number | |
imagefttext($img, 18, 25, 80, 75, $white, $font, "#".$version); | |
// Draw on the Project Version | |
imagefttext($img, 14, 0, 130, 60, $white, $font, $projectVersion); | |
// Draw on the bukkit Version | |
imagefttext($img, 10, 0, 130, 75, $white, $font, "(MC ".$bukkitVersion.")"); | |
imagealphablending( $img, false ); | |
imagesavealpha( $img, true ); | |
imagepng($img,$ROOT."/projects/".$project."/static/latestdev.png"); | |
imagedestroy($img); | |
break; | |
} | |
} | |
} | |
if ($fh = opendir($ROOT."/projects/")) { | |
while (false !== ($dir = readdir($fh))) { | |
if($dir != "." && $dir != "..") { | |
// Update Release Image | |
echo "Starting ".$dir.".<br />"; | |
updateReleaseImage($dir); | |
updateDevImage($dir); | |
echo "Updated ".$dir.".<hr />"; | |
} | |
} | |
closedir($fh); | |
} | |
?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment