This commit is contained in:
root 2016-02-23 20:34:59 +01:00
commit d2f5ae5c83
30 changed files with 3675 additions and 307 deletions

73
server/Test/AppTestClass.php Executable file
View file

@ -0,0 +1,73 @@
<?php
include_once("../core/Plugin_Api.php");
include_once("../core/LibOverride/genTokenOptions.php");
class AppTest{
protected $openstack;
protected $pluginsApi;
protected $tokenClass;
protected $tokenPost;
protected $output;
public function __construct($args){
$this->tokenPost = NULL;
$this->tokenClass = new genTokenOptions($args);
$this->openstack = new OpenStack\OpenStack([]);
$this->pluginsApi = plugin_api::getInstance();
$this->output = array();
}
public function setToken($token){
$this->tokenPost = $token;
$this->tokenClass->loadBackup($his->tokenPost);
}
public function getLibClass($service){
switch($service){
case "Identity":
if($this->tokenPost == NULL) $this->tokenClass->genIdentityToken();
$opt = $this->tokenClass->getOptions($service);
return $this->openstack->identityV3($opt);
break;
case "Image":
if($this->tokenPost == NULL) $this->tokenClass->genImageToken();
$opt = $this->tokenClass->getOptions($service);
return $this->openstack->imagesV2($opt);
break;
}
}
public function authenticate(){
try{
$this->tokenClass->genIdentityToken();
$this->tokenClass->genComputeToken();
$this->tokenClass->genImageToken();
$this->tokenClass->genNetworkToken();
$this->setOutput("token", $this->tokenClass->getBackup());
}catch(Exception $e){
echo $e;
exit();
}
}
public function setOutput($key, $out){
$this->output[$key] = $out;
}
public function show(){
echo json_encode($this->output);
}
}

30
server/Test/InitTest.php Executable file
View file

@ -0,0 +1,30 @@
<?php
require '../vendor/autoload.php';
include_once("../config.inc.php");
include_once("AppTestClass.php");
$user = "demo";
$password = "demopass";
$project = "demo";
$Args = Array(
"user" => Array(
"name" => $user,
"password" => $password,
"domain" => Array(
"name" => "Default")
),
"scope" => Array(
"project" => Array(
"name" => $project,
"domain" => Array(
"name" => "Default")
)
),
"authUrl" => $config["urlAuth"]
);
$App = new AppTest($Args);
?>

6
server/Test/genTokenOptionsTest.php Executable file → Normal file
View file

@ -1,8 +1,8 @@
<?php
include_once("../config.inc.php");
include_once("config.inc.php");
require "../vendor/autoload.php";
include_once("../core/Plugin_Api.php");
include_once("../core/LibOverride/genTokenOptions.php");
include_once("core/Plugin_Api.php");
include_once("core/LibOverride/genTokenOptions.php");
$user = "admin";
$password = "ae5or6cn";

View file

@ -0,0 +1,95 @@
<?php
require '../vendor/autoload.php';
include('/istic-openstack/server/init.php');
/*
$options = Array();
$options["user"] = Array("name"=>"admin", "password"=>"ae5or6cn", "domain"=>["id"=>"Default"]);
$options["scope"] = Array("project"=>Array("name"=>"admin", "domain"=>["id"=>"Default"]));
$options["authUrl"] = "http://148.60.11.31:5000/v3";
$openstack = new OpenStack\OpenStack($options);
//$identity = $openstack->identityV3();
//var_dump($identity);
// Since usernames will not be unique across an entire OpenStack installation,
// when authenticating with them you must also provide your domain ID. You do
// not have to do this if you authenticate with a user ID.
/*$token = $identity->generateToken([
'user' => [
'name' => 'admin',
'password' => 'ae5or6cn',
'domain' => [
'id' => 'Default'
]
]
]);
*/
//$compute = $openstack->computeV2(["region" => "RegionOne"]);
//$image= $openstack->imagesV2(["region" => "RegionOne"]);
//var_dump($compute->client);
//$servers = $compute->listServers(true);
echo 'toto';
$image = new Image($App);
$opt = Array();
$opt['name'] = "Test";
$opt['tags'] = ['test', 'openstack'];
//$opt['containerFormat'] = 'ami';
//$opt['diskFormat'] = 'iso';
$opt['visibility'] = 'public';
$opt['minDisk'] = 1;
$opt['protected'] = false;
$opt['minRam'] = 10;
//$new_image = $image->create_image($opt);
//Liste des images
$images = $image->list_images();
echo "Images présentes :";
echo "</br>";
foreach($images as $i){
echo $i->name;
if($i->name == "Test"){
$id_image = $i->id;
$list = $i->tags;
echo $i->status;
}
echo "</br>";
}
echo "</br>";
if(isset($list)){
foreach ($list as $l) {
echo $l;
echo "</br>";
}
}
// Détails Image
//$details = $image->image_details($id_image);
//$image->delete_image('123456');
//$image->desactivate_image($id_image);
//$image->reactivate_image($id_image);
//$file_name = "/home/yogg/Downloads/TinyCore-6.4.1.iso";
//$image->upload_image($id_image, $file_name);
//$image->download_image($id_image);
/*
$opt_update = Array();
$opt_update['name'] = "Test";
$opt_update['tags'] = null;
$update = $image->update_image($id_image, $opt_update);
echo $update->name;
*/
?>