#!/usr/bin/php */ define ('CLIONLY', true); require 'include/main.php'; require 'Console/Getargs.php'; function Help() { echo "\nFedora Client Command Line usage\n\n"; echo "fdcli command options\n"; echo "\tbranch: branch info\n"; echo "\tbranches: list branches\n"; echo "\tcritpath: list critical path\n"; echo "\tpackage: package info\n"; echo "\tversion: class version\n"; echo "Also try fdcli command --help\n"; } function Branches() { $config = array( "server" => array('short' => 's', 'max' => 1, 'min' => 1, 'desc' => "server URL", 'default' => ""), "debug" => array('short' => 'd', 'max' => 1, 'min' => 1, 'desc' => "debug level", 'default' => "0"), "refresh" => array('short' => 'r', 'max' => 1, 'min' => 1, 'desc' => "refresh cache", 'default' => "0"), ); $args =& Console_Getargs::factory($config); if (PEAR::isError($args)) { die (Console_Getargs::getHelp($config)); } $client = new FedoraPkgdb(array('debug' => intval($args->getValue('debug')), 'server' => $args->getValue('server'))); $branches = $client->getBranches(intval($args->getValue('refresh'))); foreach ($branches as $name => $branch) { echo $name." "; } echo "\n"; } function Branch() { $config = array( "server" => array('short' => 's', 'max' => 1, 'min' => 1, 'desc' => "server URL", 'default' => ""), "branch" => array('short' => 'b', 'max' => 1, 'min' => 1, 'desc' => "branch name", 'default' => "devel"), "debug" => array('short' => 'd', 'max' => 1, 'min' => 1, 'desc' => "debug level", 'default' => "0"), "refresh" => array('short' => 'r', 'max' => 1, 'min' => 1, 'desc' => "refresh cache", 'default' => "0"), ); $args =& Console_Getargs::factory($config); if (PEAR::isError($args)) { die (Console_Getargs::getHelp($config)); } $client = new FedoraPkgdb(array('debug' => intval($args->getValue('debug')), 'server' => $args->getValue('server'))); $branch = $client->getBranch($args->getValue('branch'), intval($args->getValue('refresh'))); print_r($branch); } function CritPath() { $config = array( //"branch" => array('short' => 'b', 'max' => 1, 'min' => 1, 'desc' => "branch name", 'default' => "devel"), "server" => array('short' => 's', 'max' => 1, 'min' => 1, 'desc' => "server URL", 'default' => ""), "debug" => array('short' => 'd', 'max' => 1, 'min' => 1, 'desc' => "debug level", 'default' => "0"), "refresh" => array('short' => 'r', 'max' => 1, 'min' => 1, 'desc' => "refresh cache", 'default' => "0"), ); $args =& Console_Getargs::factory($config); if (PEAR::isError($args)) { die (Console_Getargs::getHelp($config)); } $client = new FedoraPkgdb(array('debug' => intval($args->getValue('debug')), 'server' => $args->getValue('server'))); $crit = $client->getCritPath(intval($args->getValue('refresh'))); foreach ($crit as $name => $pkgs) { echo "\n$name: ".implode(', ', $pkgs)."\n"; } } function Package() { $config = array( "server" => array('short' => 's', 'max' => 1, 'min' => 1, 'desc' => "server URL", 'default' => ""), "package" => array('short' => 'p', 'max' => 1, 'min' => 1, 'desc' => "package name"), "debug" => array('short' => 'd', 'max' => 1, 'min' => 1, 'desc' => "debug level", 'default' => "0"), "refresh" => array('short' => 'r', 'max' => 1, 'min' => 1, 'desc' => "refresh cache", 'default' => "0"), ); $args =& Console_Getargs::factory($config); if (PEAR::isError($args)) { die (Console_Getargs::getHelp($config)); } $client = new FedoraPkgdb(array('debug' => intval($args->getValue('debug')), 'server' => $args->getValue('server'))); $rep = $client->getPackageInfo($args->getValue('package'), intval($args->getValue('refresh'))); if (!$rep) { die("Package not found\n"); } $first = true; foreach ($rep as $branch => $pack) { if ($first) { $first = false; echo 'Name: '.$pack['package']['name']."\n"; echo 'Summary: '.$pack['package']['summary']."\n"; echo 'PkgDB: '.$client->getPackageURL($pack['package']['name'])."\n"; echo "Description:\n".$pack['package']['description']."\n"; } echo $branch.":\t".$pack['owner']; $i=0; $tmp = $pack['people']; if (count($tmp)) { sort($tmp); echo " (".implode($tmp, ', ').")\n"; } else { echo "\n"; } } } function Version() { $config = array( "server" => array('short' => 's', 'max' => 1, 'min' => 1, 'desc' => "server URL", 'default' => ""), "debug" => array('short' => 'd', 'max' => 1, 'min' => 1, 'desc' => "debug level", 'default' => "0") ); $args =& Console_Getargs::factory($config); if (PEAR::isError($args)) { die (Console_Getargs::getHelp($config)."\n"); } echo "PHP Fedora Client class version ".FedoraClient::VERSION."\n"; $client = new FedoraPkgdb(array('debug' => intval($args->getValue('debug')), 'server' => $args->getValue('server'))); echo "pkgdb version ".$client->getVersion()."\n"; } error_reporting(E_ALL & ~E_DEPRECATED & ~E_STRICT); $cmd = array_shift($_SERVER['argv']); $cmd = array_shift($_SERVER['argv']); switch ($cmd) { case 'branches' : Branches(); break; case 'branch' : Branch(); break; case 'critpath' : CritPath(); break; case 'package' : Package(); break; case 'version' : Version(); break; default : Help(); }