mirror of
https://github.com/OpenNebula/one.git
synced 2025-03-19 06:50:07 +03:00
Merge branch 'master' of git.opennebula.org:one
This commit is contained in:
commit
0171c28d92
@ -97,9 +97,10 @@ private:
|
||||
* Execute an INSERT or REPLACE Sql query.
|
||||
* @param db The SQL DB
|
||||
* @param replace Execute an INSERT or a REPLACE
|
||||
* @param error_str Returns the error reason, if any
|
||||
* @return 0 one success
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace);
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace, string& error_str);
|
||||
|
||||
/**
|
||||
* Bootstraps the database table(s) associated to the Group
|
||||
@ -119,16 +120,7 @@ private:
|
||||
*/
|
||||
int insert(SqlDB *db, string& error_str)
|
||||
{
|
||||
int rc;
|
||||
|
||||
rc = insert_replace(db, false);
|
||||
|
||||
if ( rc != 0 )
|
||||
{
|
||||
error_str = "Error inserting Group in DB.";
|
||||
}
|
||||
|
||||
return rc;
|
||||
return insert_replace(db, false, error_str);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -138,7 +130,8 @@ private:
|
||||
*/
|
||||
int update(SqlDB *db)
|
||||
{
|
||||
return insert_replace(db, true);
|
||||
string error_str;
|
||||
return insert_replace(db, true, error_str);
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -371,9 +371,10 @@ private:
|
||||
* Execute an INSERT or REPLACE Sql query.
|
||||
* @param db The SQL DB
|
||||
* @param replace Execute an INSERT or a REPLACE
|
||||
* @param error_str Returns the error reason, if any
|
||||
* @return 0 one success
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace);
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace, string& error_str);
|
||||
|
||||
/**
|
||||
* Bootstraps the database table(s) associated to the Host
|
||||
@ -391,14 +392,21 @@ private:
|
||||
* @param db pointer to the db
|
||||
* @return 0 on success
|
||||
*/
|
||||
int insert(SqlDB *db, string& error_str);
|
||||
int insert(SqlDB *db, string& error_str)
|
||||
{
|
||||
return insert_replace(db, false, error_str);
|
||||
};
|
||||
|
||||
/**
|
||||
* Writes/updates the Hosts data fields in the database.
|
||||
* @param db pointer to the db
|
||||
* @return 0 on success
|
||||
*/
|
||||
int update(SqlDB *db);
|
||||
int update(SqlDB *db)
|
||||
{
|
||||
string error_str;
|
||||
return insert_replace(db, true, error_str);
|
||||
};
|
||||
};
|
||||
|
||||
#endif /*HOST_H_*/
|
||||
|
@ -349,9 +349,10 @@ private:
|
||||
* Execute an INSERT or REPLACE Sql query.
|
||||
* @param db The SQL DB
|
||||
* @param replace Execute an INSERT or a REPLACE
|
||||
* @param error_str Returns the error reason, if any
|
||||
* @return 0 on success
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace);
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace, string& error_str);
|
||||
|
||||
/**
|
||||
* Bootstraps the database table(s) associated to the Image
|
||||
|
@ -152,6 +152,14 @@ public:
|
||||
*/
|
||||
int update_from_node(const xmlNodePtr node);
|
||||
|
||||
/**
|
||||
* Validates the xml string
|
||||
*
|
||||
* @param xml_doc string to parse
|
||||
* @return 0 if the xml validates
|
||||
*/
|
||||
static int validate_xml(const string &xml_doc);
|
||||
|
||||
// ---------------------------------------------------------
|
||||
// Lex & bison parser for requirements and rank expressions
|
||||
// ---------------------------------------------------------
|
||||
|
@ -210,7 +210,7 @@ public:
|
||||
HostAllocate():
|
||||
RequestManagerAllocate("HostAllocate",
|
||||
"Allocates a new host",
|
||||
"A:sssss",
|
||||
"A:ssssss",
|
||||
false)
|
||||
{
|
||||
Nebula& nd = Nebula::instance();
|
||||
|
@ -250,9 +250,10 @@ private:
|
||||
* Execute an INSERT or REPLACE Sql query.
|
||||
* @param db The SQL DB
|
||||
* @param replace Execute an INSERT or a REPLACE
|
||||
* @param error_str Returns the error reason, if any
|
||||
* @return 0 one success
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace);
|
||||
int insert_replace(SqlDB *db, bool replace, string& error_str);
|
||||
|
||||
/**
|
||||
* Bootstraps the database table(s) associated to the User
|
||||
@ -320,7 +321,10 @@ protected:
|
||||
* @param db pointer to the db
|
||||
* @return 0 on success
|
||||
*/
|
||||
int insert(SqlDB *db, string& error_str);
|
||||
int insert(SqlDB *db, string& error_str)
|
||||
{
|
||||
return insert_replace(db, false, error_str);
|
||||
};
|
||||
|
||||
/**
|
||||
* Writes/updates the User data fields in the database.
|
||||
@ -329,7 +333,8 @@ protected:
|
||||
*/
|
||||
int update(SqlDB *db)
|
||||
{
|
||||
return insert_replace(db, true);
|
||||
string error_str;
|
||||
return insert_replace(db, true, error_str);
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -102,9 +102,10 @@ private:
|
||||
* Execute an INSERT or REPLACE Sql query.
|
||||
* @param db The SQL DB
|
||||
* @param replace Execute an INSERT or a REPLACE
|
||||
* @param error_str Returns the error reason, if any
|
||||
* @return 0 one success
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace);
|
||||
int insert_replace(SqlDB *db, bool replace, string& error_str);
|
||||
|
||||
/**
|
||||
* Bootstraps the database table(s) associated to the VMTemplate
|
||||
@ -152,6 +153,7 @@ protected:
|
||||
/**
|
||||
* Writes the VMTemplate in the database.
|
||||
* @param db pointer to the db
|
||||
* @param error_str Returns the error reason, if any
|
||||
* @return 0 on success
|
||||
*/
|
||||
int insert(SqlDB *db, string& error_str);
|
||||
@ -163,7 +165,8 @@ protected:
|
||||
*/
|
||||
int update(SqlDB *db)
|
||||
{
|
||||
return insert_replace(db, true);
|
||||
string err;
|
||||
return insert_replace(db, true, err);
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -834,9 +834,10 @@ private:
|
||||
* Execute an INSERT or REPLACE Sql query.
|
||||
* @param db The SQL DB
|
||||
* @param replace Execute an INSERT or a REPLACE
|
||||
* @param error_str Returns the error reason, if any
|
||||
* @return 0 one success
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace);
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace, string& error_str);
|
||||
|
||||
/**
|
||||
* Updates the VM history record
|
||||
@ -954,7 +955,8 @@ protected:
|
||||
*/
|
||||
int update(SqlDB * db)
|
||||
{
|
||||
return insert_replace(db, true);
|
||||
string error_str;
|
||||
return insert_replace(db, true, error_str);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -257,9 +257,10 @@ private:
|
||||
* Execute an INSERT or REPLACE Sql query.
|
||||
* @param db The SQL DB
|
||||
* @param replace Execute an INSERT or a REPLACE
|
||||
* @param error_str Returns the error reason, if any
|
||||
* @return 0 on success
|
||||
*/
|
||||
int insert_replace(SqlDB *db, bool replace);
|
||||
int insert_replace(SqlDB *db, bool replace, string& error_str);
|
||||
|
||||
/**
|
||||
* Bootstraps the database table(s) associated to the Virtual Network
|
||||
@ -355,7 +356,8 @@ private:
|
||||
*/
|
||||
int update(SqlDB * db)
|
||||
{
|
||||
return insert_replace(db, true);
|
||||
string error_str;
|
||||
return insert_replace(db, true, error_str);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -180,7 +180,8 @@ fi
|
||||
SHARE_DIRS="$SHARE_LOCATION/examples \
|
||||
$SHARE_LOCATION/examples/tm"
|
||||
|
||||
ETC_DIRS="$ETC_LOCATION/im_ec2 \
|
||||
ETC_DIRS="$ETC_LOCATION/image \
|
||||
$ETC_LOCATION/im_ec2 \
|
||||
$ETC_LOCATION/vmm_ec2 \
|
||||
$ETC_LOCATION/vmm_exec \
|
||||
$ETC_LOCATION/tm_shared \
|
||||
@ -469,6 +470,7 @@ INSTALL_ETC_FILES=(
|
||||
VMWARE_ETC_FILES:$ETC_LOCATION
|
||||
VMM_EC2_ETC_FILES:$ETC_LOCATION/vmm_ec2
|
||||
VMM_EXEC_ETC_FILES:$ETC_LOCATION/vmm_exec
|
||||
IMAGE_DRIVER_FS_ETC_FILES:$ETC_LOCATION/image/
|
||||
IM_EC2_ETC_FILES:$ETC_LOCATION/im_ec2
|
||||
TM_SHARED_ETC_FILES:$ETC_LOCATION/tm_shared
|
||||
TM_SSH_ETC_FILES:$ETC_LOCATION/tm_ssh
|
||||
@ -731,6 +733,9 @@ VMWARE_TM_COMMANDS_LIB_FILES="src/tm_mad/vmware/tm_clone.sh \
|
||||
# Image Repository drivers, to be installed under $REMOTES_LOCATION/image
|
||||
# - FS based Image Repository, $REMOTES_LOCATION/image/fs
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
IMAGE_DRIVER_FS_ETC_FILES="src/image_mad/remotes/fs/fs.conf"
|
||||
|
||||
IMAGE_DRIVER_FS_SCRIPTS="src/image_mad/remotes/fs/cp \
|
||||
src/image_mad/remotes/fs/mkfs \
|
||||
src/image_mad/remotes/fs/mv \
|
||||
|
9
share/doc/xsd/README.txt
Normal file
9
share/doc/xsd/README.txt
Normal file
@ -0,0 +1,9 @@
|
||||
These XML Schemas define the XMLs returned by OpenNebula's XML-RPC API.
|
||||
|
||||
The included XML samples are not actual responses from OpenNebula, as it does
|
||||
not include the headers (namespace, schema location).
|
||||
|
||||
|
||||
To learn more, please read the API reference documentation at
|
||||
http://opennebula.org/documentation:documentation:api
|
||||
|
19
share/doc/xsd/group.xsd
Normal file
19
share/doc/xsd/group.xsd
Normal file
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:element name="GROUP">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" type="xs:integer"/>
|
||||
<xs:element name="NAME" type="xs:string"/>
|
||||
<xs:element name="USERS">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" type="xs:integer" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
12
share/doc/xsd/group_pool.xsd
Normal file
12
share/doc/xsd/group_pool.xsd
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:include schemaLocation="group.xsd"/>
|
||||
<xs:element name="GROUP_POOL">
|
||||
<xs:complexType>
|
||||
<xs:sequence maxOccurs="1" minOccurs="1">
|
||||
<xs:element ref="GROUP" maxOccurs="unbounded" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
37
share/doc/xsd/host.xsd
Normal file
37
share/doc/xsd/host.xsd
Normal file
@ -0,0 +1,37 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://opennebula.org/XMLSchema" elementFormDefault="qualified" targetNamespace="http://opennebula.org/XMLSchema">
|
||||
<xs:element name="HOST">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" type="xs:integer"/>
|
||||
<xs:element name="NAME" type="xs:string"/>
|
||||
<xs:element name="STATE" type="xs:integer"/>
|
||||
<xs:element name="IM_MAD" type="xs:string"/>
|
||||
<xs:element name="VM_MAD" type="xs:string"/>
|
||||
<xs:element name="VN_MAD" type="xs:string"/>
|
||||
<xs:element name="TM_MAD" type="xs:string"/>
|
||||
<xs:element name="LAST_MON_TIME" type="xs:integer"/>
|
||||
<xs:element name="HOST_SHARE">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="DISK_USAGE" type="xs:integer"/>
|
||||
<xs:element name="MEM_USAGE" type="xs:integer"/>
|
||||
<xs:element name="CPU_USAGE" type="xs:integer"/>
|
||||
<xs:element name="MAX_DISK" type="xs:integer"/>
|
||||
<xs:element name="MAX_MEM" type="xs:integer"/>
|
||||
<xs:element name="MAX_CPU" type="xs:integer"/>
|
||||
<xs:element name="FREE_DISK" type="xs:integer"/>
|
||||
<xs:element name="FREE_MEM" type="xs:integer"/>
|
||||
<xs:element name="FREE_CPU" type="xs:integer"/>
|
||||
<xs:element name="USED_DISK" type="xs:integer"/>
|
||||
<xs:element name="USED_MEM" type="xs:integer"/>
|
||||
<xs:element name="USED_CPU" type="xs:integer"/>
|
||||
<xs:element name="RUNNING_VMS" type="xs:integer"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="TEMPLATE" type="xs:anyType"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
12
share/doc/xsd/host_pool.xsd
Normal file
12
share/doc/xsd/host_pool.xsd
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:include schemaLocation="host.xsd"/>
|
||||
<xs:element name="HOST_POOL">
|
||||
<xs:complexType>
|
||||
<xs:sequence maxOccurs="1" minOccurs="1">
|
||||
<xs:element ref="HOST" maxOccurs="unbounded" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
26
share/doc/xsd/image.xsd
Normal file
26
share/doc/xsd/image.xsd
Normal file
@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://opennebula.org/XMLSchema" elementFormDefault="qualified" targetNamespace="http://opennebula.org/XMLSchema">
|
||||
<xs:element name="IMAGE">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" type="xs:integer"/>
|
||||
<xs:element name="UID" type="xs:integer"/>
|
||||
<xs:element name="GID" type="xs:integer"/>
|
||||
<xs:element name="UNAME" type="xs:string"/>
|
||||
<xs:element name="GNAME" type="xs:string"/>
|
||||
<xs:element name="NAME" type="xs:string"/>
|
||||
<xs:element name="TYPE" type="xs:integer"/>
|
||||
<xs:element name="PUBLIC" type="xs:integer"/>
|
||||
<xs:element name="PERSISTENT" type="xs:integer"/>
|
||||
<xs:element name="REGTIME" type="xs:integer"/>
|
||||
<xs:element name="SOURCE" type="xs:string"/>
|
||||
<xs:element name="PATH" type="xs:string"/>
|
||||
<xs:element name="FSTYPE" type="xs:string"/>
|
||||
<xs:element name="SIZE" type="xs:integer"/>
|
||||
<xs:element name="STATE" type="xs:integer"/>
|
||||
<xs:element name="RUNNING_VMS" type="xs:integer"/>
|
||||
<xs:element name="TEMPLATE" type="xs:anyType"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
12
share/doc/xsd/image_pool.xsd
Normal file
12
share/doc/xsd/image_pool.xsd
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:include schemaLocation="image.xsd"/>
|
||||
<xs:element name="IMAGE_POOL">
|
||||
<xs:complexType>
|
||||
<xs:sequence maxOccurs="1" minOccurs="1">
|
||||
<xs:element ref="IMAGE" maxOccurs="unbounded" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
12
share/doc/xsd/samples/group/1.xml
Normal file
12
share/doc/xsd/samples/group/1.xml
Normal file
@ -0,0 +1,12 @@
|
||||
<GROUP xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../group.xsd">
|
||||
<ID>1</ID>
|
||||
<NAME>users</NAME>
|
||||
<USERS>
|
||||
<ID>2</ID>
|
||||
<ID>3</ID>
|
||||
<ID>4</ID>
|
||||
<ID>5</ID>
|
||||
</USERS>
|
||||
</GROUP>
|
7
share/doc/xsd/samples/group/2.xml
Normal file
7
share/doc/xsd/samples/group/2.xml
Normal file
@ -0,0 +1,7 @@
|
||||
<GROUP xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../group.xsd">
|
||||
<ID>100</ID>
|
||||
<NAME>new</NAME>
|
||||
<USERS/>
|
||||
</GROUP>
|
37
share/doc/xsd/samples/group_pool/1.xml
Normal file
37
share/doc/xsd/samples/group_pool/1.xml
Normal file
@ -0,0 +1,37 @@
|
||||
<GROUP_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../group.xsd">
|
||||
<GROUP>
|
||||
<ID>0</ID>
|
||||
<NAME>oneadmin</NAME>
|
||||
<USERS>
|
||||
<ID>0</ID>
|
||||
<ID>1</ID>
|
||||
</USERS>
|
||||
</GROUP>
|
||||
<GROUP>
|
||||
<ID>1</ID>
|
||||
<NAME>users</NAME>
|
||||
<USERS>
|
||||
<ID>2</ID>
|
||||
<ID>3</ID>
|
||||
<ID>4</ID>
|
||||
<ID>5</ID>
|
||||
</USERS>
|
||||
</GROUP>
|
||||
<GROUP>
|
||||
<ID>100</ID>
|
||||
<NAME>new</NAME>
|
||||
<USERS/>
|
||||
</GROUP>
|
||||
<GROUP>
|
||||
<ID>101</ID>
|
||||
<NAME>test</NAME>
|
||||
<USERS/>
|
||||
</GROUP>
|
||||
<GROUP>
|
||||
<ID>102</ID>
|
||||
<NAME>abc</NAME>
|
||||
<USERS/>
|
||||
</GROUP>
|
||||
</GROUP_POOL>
|
27
share/doc/xsd/samples/host/1.xml
Normal file
27
share/doc/xsd/samples/host/1.xml
Normal file
@ -0,0 +1,27 @@
|
||||
<HOST xmlns="http://opennebula.org/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../image.xsd">
|
||||
<ID>0</ID>
|
||||
<NAME>localhost</NAME>
|
||||
<STATE>3</STATE>
|
||||
<IM_MAD>im_dummy</IM_MAD>
|
||||
<VM_MAD>vmm_dummy</VM_MAD>
|
||||
<VN_MAD>fw</VN_MAD>
|
||||
<TM_MAD>tm_shared</TM_MAD>
|
||||
<LAST_MON_TIME>0</LAST_MON_TIME>
|
||||
<HOST_SHARE>
|
||||
<DISK_USAGE>0</DISK_USAGE>
|
||||
<MEM_USAGE>0</MEM_USAGE>
|
||||
<CPU_USAGE>0</CPU_USAGE>
|
||||
<MAX_DISK>0</MAX_DISK>
|
||||
<MAX_MEM>0</MAX_MEM>
|
||||
<MAX_CPU>0</MAX_CPU>
|
||||
<FREE_DISK>0</FREE_DISK>
|
||||
<FREE_MEM>0</FREE_MEM>
|
||||
<FREE_CPU>0</FREE_CPU>
|
||||
<USED_DISK>0</USED_DISK>
|
||||
<USED_MEM>0</USED_MEM>
|
||||
<USED_CPU>0</USED_CPU>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
</HOST_SHARE>
|
||||
<TEMPLATE/>
|
||||
</HOST>
|
27
share/doc/xsd/samples/host/2.xml
Normal file
27
share/doc/xsd/samples/host/2.xml
Normal file
@ -0,0 +1,27 @@
|
||||
<HOST xmlns="http://opennebula.org/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../image.xsd">
|
||||
<ID>0</ID>
|
||||
<NAME>localhost</NAME>
|
||||
<STATE>3</STATE>
|
||||
<IM_MAD>im_dummy</IM_MAD>
|
||||
<VM_MAD>vmm_dummy</VM_MAD>
|
||||
<VN_MAD>fw</VN_MAD>
|
||||
<TM_MAD>tm_shared</TM_MAD>
|
||||
<LAST_MON_TIME>0</LAST_MON_TIME>
|
||||
<HOST_SHARE>
|
||||
<DISK_USAGE>0</DISK_USAGE>
|
||||
<MEM_USAGE>0</MEM_USAGE>
|
||||
<CPU_USAGE>0</CPU_USAGE>
|
||||
<MAX_DISK>0</MAX_DISK>
|
||||
<MAX_MEM>0</MAX_MEM>
|
||||
<MAX_CPU>0</MAX_CPU>
|
||||
<FREE_DISK>0</FREE_DISK>
|
||||
<FREE_MEM>0</FREE_MEM>
|
||||
<FREE_CPU>0</FREE_CPU>
|
||||
<USED_DISK>0</USED_DISK>
|
||||
<USED_MEM>0</USED_MEM>
|
||||
<USED_CPU>0</USED_CPU>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
</HOST_SHARE>
|
||||
<TEMPLATE/>
|
||||
</HOST>
|
38
share/doc/xsd/samples/host/3.xml
Normal file
38
share/doc/xsd/samples/host/3.xml
Normal file
@ -0,0 +1,38 @@
|
||||
<HOST xmlns="http://opennebula.org/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../image.xsd">
|
||||
<ID>0</ID>
|
||||
<NAME>localhost</NAME>
|
||||
<STATE>2</STATE>
|
||||
<IM_MAD>im_dummy</IM_MAD>
|
||||
<VM_MAD>vmm_dummy</VM_MAD>
|
||||
<VN_MAD>fw</VN_MAD>
|
||||
<TM_MAD>tm_shared</TM_MAD>
|
||||
<LAST_MON_TIME>1324039779</LAST_MON_TIME>
|
||||
<HOST_SHARE>
|
||||
<DISK_USAGE>0</DISK_USAGE>
|
||||
<MEM_USAGE>0</MEM_USAGE>
|
||||
<CPU_USAGE>0</CPU_USAGE>
|
||||
<MAX_DISK>0</MAX_DISK>
|
||||
<MAX_MEM>16777216</MAX_MEM>
|
||||
<MAX_CPU>800</MAX_CPU>
|
||||
<FREE_DISK>0</FREE_DISK>
|
||||
<FREE_MEM>16777216</FREE_MEM>
|
||||
<FREE_CPU>800</FREE_CPU>
|
||||
<USED_DISK>0</USED_DISK>
|
||||
<USED_MEM>0</USED_MEM>
|
||||
<USED_CPU>0</USED_CPU>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
</HOST_SHARE>
|
||||
<TEMPLATE>
|
||||
<CPUSPEED><![CDATA[2.2GHz]]></CPUSPEED>
|
||||
<FREECPU><![CDATA[800]]></FREECPU>
|
||||
<FREEMEMORY><![CDATA[16777216]]></FREEMEMORY>
|
||||
<HOSTNAME><![CDATA[localhost]]></HOSTNAME>
|
||||
<HYPERVISOR><![CDATA[dummy]]></HYPERVISOR>
|
||||
<TEST><![CDATA[TEST]]></TEST>
|
||||
<TOTALCPU><![CDATA[800]]></TOTALCPU>
|
||||
<TOTALMEMORY><![CDATA[16777216]]></TOTALMEMORY>
|
||||
<USEDCPU><![CDATA[0]]></USEDCPU>
|
||||
<USEDMEMORY><![CDATA[0]]></USEDMEMORY>
|
||||
</TEMPLATE>
|
||||
</HOST>
|
41
share/doc/xsd/samples/host_pool/1.xml
Normal file
41
share/doc/xsd/samples/host_pool/1.xml
Normal file
@ -0,0 +1,41 @@
|
||||
<HOST_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../host_pool.xsd">
|
||||
<HOST>
|
||||
<ID>0</ID>
|
||||
<NAME>localhost</NAME>
|
||||
<STATE>2</STATE>
|
||||
<IM_MAD>im_dummy</IM_MAD>
|
||||
<VM_MAD>vmm_dummy</VM_MAD>
|
||||
<VN_MAD>fw</VN_MAD>
|
||||
<TM_MAD>tm_shared</TM_MAD>
|
||||
<LAST_MON_TIME>1324048185</LAST_MON_TIME>
|
||||
<HOST_SHARE>
|
||||
<DISK_USAGE>0</DISK_USAGE>
|
||||
<MEM_USAGE>0</MEM_USAGE>
|
||||
<CPU_USAGE>0</CPU_USAGE>
|
||||
<MAX_DISK>0</MAX_DISK>
|
||||
<MAX_MEM>16777216</MAX_MEM>
|
||||
<MAX_CPU>800</MAX_CPU>
|
||||
<FREE_DISK>0</FREE_DISK>
|
||||
<FREE_MEM>16777216</FREE_MEM>
|
||||
<FREE_CPU>800</FREE_CPU>
|
||||
<USED_DISK>0</USED_DISK>
|
||||
<USED_MEM>0</USED_MEM>
|
||||
<USED_CPU>0</USED_CPU>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
</HOST_SHARE>
|
||||
<TEMPLATE>
|
||||
<CPUSPEED><![CDATA[2.2GHz]]></CPUSPEED>
|
||||
<FREECPU><![CDATA[800]]></FREECPU>
|
||||
<FREEMEMORY><![CDATA[16777216]]></FREEMEMORY>
|
||||
<HOSTNAME><![CDATA[localhost]]></HOSTNAME>
|
||||
<HYPERVISOR><![CDATA[dummy]]></HYPERVISOR>
|
||||
<TEST><![CDATA[TEST]]></TEST>
|
||||
<TOTALCPU><![CDATA[800]]></TOTALCPU>
|
||||
<TOTALMEMORY><![CDATA[16777216]]></TOTALMEMORY>
|
||||
<USEDCPU><![CDATA[0]]></USEDCPU>
|
||||
<USEDMEMORY><![CDATA[0]]></USEDMEMORY>
|
||||
</TEMPLATE>
|
||||
</HOST>
|
||||
</HOST_POOL>
|
67
share/doc/xsd/samples/host_pool/2.xml
Normal file
67
share/doc/xsd/samples/host_pool/2.xml
Normal file
@ -0,0 +1,67 @@
|
||||
<HOST_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../host_pool.xsd">
|
||||
<HOST>
|
||||
<ID>0</ID>
|
||||
<NAME>localhost</NAME>
|
||||
<STATE>2</STATE>
|
||||
<IM_MAD>im_dummy</IM_MAD>
|
||||
<VM_MAD>vmm_dummy</VM_MAD>
|
||||
<VN_MAD>fw</VN_MAD>
|
||||
<TM_MAD>tm_shared</TM_MAD>
|
||||
<LAST_MON_TIME>1324048436</LAST_MON_TIME>
|
||||
<HOST_SHARE>
|
||||
<DISK_USAGE>0</DISK_USAGE>
|
||||
<MEM_USAGE>0</MEM_USAGE>
|
||||
<CPU_USAGE>0</CPU_USAGE>
|
||||
<MAX_DISK>0</MAX_DISK>
|
||||
<MAX_MEM>16777216</MAX_MEM>
|
||||
<MAX_CPU>800</MAX_CPU>
|
||||
<FREE_DISK>0</FREE_DISK>
|
||||
<FREE_MEM>16777216</FREE_MEM>
|
||||
<FREE_CPU>800</FREE_CPU>
|
||||
<USED_DISK>0</USED_DISK>
|
||||
<USED_MEM>0</USED_MEM>
|
||||
<USED_CPU>0</USED_CPU>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
</HOST_SHARE>
|
||||
<TEMPLATE>
|
||||
<CPUSPEED><![CDATA[2.2GHz]]></CPUSPEED>
|
||||
<FREECPU><![CDATA[800]]></FREECPU>
|
||||
<FREEMEMORY><![CDATA[16777216]]></FREEMEMORY>
|
||||
<HOSTNAME><![CDATA[localhost]]></HOSTNAME>
|
||||
<HYPERVISOR><![CDATA[dummy]]></HYPERVISOR>
|
||||
<TEST><![CDATA[TEST]]></TEST>
|
||||
<TOTALCPU><![CDATA[800]]></TOTALCPU>
|
||||
<TOTALMEMORY><![CDATA[16777216]]></TOTALMEMORY>
|
||||
<USEDCPU><![CDATA[0]]></USEDCPU>
|
||||
<USEDMEMORY><![CDATA[0]]></USEDMEMORY>
|
||||
</TEMPLATE>
|
||||
</HOST>
|
||||
<HOST>
|
||||
<ID>1</ID>
|
||||
<NAME>vm</NAME>
|
||||
<STATE>0</STATE>
|
||||
<IM_MAD>im_dummy</IM_MAD>
|
||||
<VM_MAD>vmm_dummy</VM_MAD>
|
||||
<VN_MAD>fw</VN_MAD>
|
||||
<TM_MAD>tm_shared</TM_MAD>
|
||||
<LAST_MON_TIME>0</LAST_MON_TIME>
|
||||
<HOST_SHARE>
|
||||
<DISK_USAGE>0</DISK_USAGE>
|
||||
<MEM_USAGE>0</MEM_USAGE>
|
||||
<CPU_USAGE>0</CPU_USAGE>
|
||||
<MAX_DISK>0</MAX_DISK>
|
||||
<MAX_MEM>0</MAX_MEM>
|
||||
<MAX_CPU>0</MAX_CPU>
|
||||
<FREE_DISK>0</FREE_DISK>
|
||||
<FREE_MEM>0</FREE_MEM>
|
||||
<FREE_CPU>0</FREE_CPU>
|
||||
<USED_DISK>0</USED_DISK>
|
||||
<USED_MEM>0</USED_MEM>
|
||||
<USED_CPU>0</USED_CPU>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
</HOST_SHARE>
|
||||
<TEMPLATE/>
|
||||
</HOST>
|
||||
</HOST_POOL>
|
3
share/doc/xsd/samples/host_pool/3.xml
Normal file
3
share/doc/xsd/samples/host_pool/3.xml
Normal file
@ -0,0 +1,3 @@
|
||||
<HOST_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../host_pool.xsd"/>
|
23
share/doc/xsd/samples/image/1.xml
Normal file
23
share/doc/xsd/samples/image/1.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<IMAGE xmlns="http://opennebula.org/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../image.xsd">
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>Ubuntu Desktop</NAME>
|
||||
<TYPE>0</TYPE>
|
||||
<PUBLIC>1</PUBLIC>
|
||||
<PERSISTENT>0</PERSISTENT>
|
||||
<REGTIME>1324047583</REGTIME>
|
||||
<SOURCE>/var/lib/one/images/590815350477644ac13f7800f6a6789c</SOURCE>
|
||||
<PATH>/boot/initrd.img-2.6.32-34-generic</PATH>
|
||||
<FSTYPE/>
|
||||
<SIZE>8</SIZE>
|
||||
<STATE>1</STATE>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
<TEMPLATE>
|
||||
<DESCRIPTION><![CDATA[Ubuntu 10.04 desktop for students.]]></DESCRIPTION>
|
||||
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
|
||||
</TEMPLATE>
|
||||
</IMAGE>
|
22
share/doc/xsd/samples/image/2.xml
Normal file
22
share/doc/xsd/samples/image/2.xml
Normal file
@ -0,0 +1,22 @@
|
||||
<IMAGE xmlns="http://opennebula.org/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../image.xsd">
|
||||
<ID>1</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>Experiment results</NAME>
|
||||
<TYPE>2</TYPE>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<PERSISTENT>0</PERSISTENT>
|
||||
<REGTIME>1324048803</REGTIME>
|
||||
<SOURCE>/var/lib/one/images/5a785bd223a970ec3536733514f2c3db</SOURCE>
|
||||
<PATH/>
|
||||
<FSTYPE>ext3</FSTYPE>
|
||||
<SIZE>30</SIZE>
|
||||
<STATE>1</STATE>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
<TEMPLATE>
|
||||
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
|
||||
</TEMPLATE>
|
||||
</IMAGE>
|
3
share/doc/xsd/samples/image_pool/1.xml
Normal file
3
share/doc/xsd/samples/image_pool/1.xml
Normal file
@ -0,0 +1,3 @@
|
||||
<IMAGE_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../image_pool.xsd"/>
|
47
share/doc/xsd/samples/image_pool/2.xml
Normal file
47
share/doc/xsd/samples/image_pool/2.xml
Normal file
@ -0,0 +1,47 @@
|
||||
<IMAGE_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../image_pool.xsd">
|
||||
<IMAGE>
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>Ubuntu Desktop</NAME>
|
||||
<TYPE>0</TYPE>
|
||||
<PUBLIC>1</PUBLIC>
|
||||
<PERSISTENT>0</PERSISTENT>
|
||||
<REGTIME>1324047583</REGTIME>
|
||||
<SOURCE>/var/lib/one/images/590815350477644ac13f7800f6a6789c</SOURCE>
|
||||
<PATH>/boot/initrd.img-2.6.32-34-generic</PATH>
|
||||
<FSTYPE/>
|
||||
<SIZE>8</SIZE>
|
||||
<STATE>1</STATE>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
<TEMPLATE>
|
||||
<DESCRIPTION><![CDATA[Ubuntu 10.04 desktop for students.]]></DESCRIPTION>
|
||||
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
|
||||
</TEMPLATE>
|
||||
</IMAGE>
|
||||
<IMAGE>
|
||||
<ID>1</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>Experiment results</NAME>
|
||||
<TYPE>2</TYPE>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<PERSISTENT>0</PERSISTENT>
|
||||
<REGTIME>1324048803</REGTIME>
|
||||
<SOURCE>/var/lib/one/images/5a785bd223a970ec3536733514f2c3db</SOURCE>
|
||||
<PATH/>
|
||||
<FSTYPE>ext3</FSTYPE>
|
||||
<SIZE>30</SIZE>
|
||||
<STATE>1</STATE>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
<TEMPLATE>
|
||||
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
|
||||
</TEMPLATE>
|
||||
</IMAGE>
|
||||
</IMAGE_POOL>
|
25
share/doc/xsd/samples/image_pool/3.xml
Normal file
25
share/doc/xsd/samples/image_pool/3.xml
Normal file
@ -0,0 +1,25 @@
|
||||
<IMAGE_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../image_pool.xsd">
|
||||
<IMAGE>
|
||||
<ID>1</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>Experiment results</NAME>
|
||||
<TYPE>2</TYPE>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<PERSISTENT>0</PERSISTENT>
|
||||
<REGTIME>1324048803</REGTIME>
|
||||
<SOURCE>/var/lib/one/images/5a785bd223a970ec3536733514f2c3db</SOURCE>
|
||||
<PATH/>
|
||||
<FSTYPE>ext3</FSTYPE>
|
||||
<SIZE>30</SIZE>
|
||||
<STATE>1</STATE>
|
||||
<RUNNING_VMS>0</RUNNING_VMS>
|
||||
<TEMPLATE>
|
||||
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
|
||||
</TEMPLATE>
|
||||
</IMAGE>
|
||||
</IMAGE_POOL>
|
16
share/doc/xsd/samples/template/1.xml
Normal file
16
share/doc/xsd/samples/template/1.xml
Normal file
@ -0,0 +1,16 @@
|
||||
<VMTEMPLATE xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../template.xsd">
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>vm-example</NAME>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<REGTIME>1324050180</REGTIME>
|
||||
<TEMPLATE>
|
||||
<NAME><![CDATA[vm-example]]></NAME>
|
||||
<TEMPLATE_ID><![CDATA[0]]></TEMPLATE_ID>
|
||||
</TEMPLATE>
|
||||
</VMTEMPLATE>
|
16
share/doc/xsd/samples/template/2.xml
Normal file
16
share/doc/xsd/samples/template/2.xml
Normal file
@ -0,0 +1,16 @@
|
||||
<VMTEMPLATE xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../template.xsd">
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>vm-example</NAME>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<REGTIME>1324050180</REGTIME>
|
||||
<TEMPLATE>
|
||||
<NEW_ATT><![CDATA[NEW]]></NEW_ATT>
|
||||
<NEW_NUM><![CDATA[123]]></NEW_NUM>
|
||||
</TEMPLATE>
|
||||
</VMTEMPLATE>
|
13
share/doc/xsd/samples/template/3.xml
Normal file
13
share/doc/xsd/samples/template/3.xml
Normal file
@ -0,0 +1,13 @@
|
||||
<VMTEMPLATE xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../template.xsd">
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>vm-example</NAME>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<REGTIME>1324050180</REGTIME>
|
||||
<TEMPLATE/>
|
||||
</VMTEMPLATE>
|
35
share/doc/xsd/samples/template_pool/1.xml
Normal file
35
share/doc/xsd/samples/template_pool/1.xml
Normal file
@ -0,0 +1,35 @@
|
||||
<VMTEMPLATE_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../template_pool.xsd">
|
||||
<VMTEMPLATE>
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>vm-example</NAME>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<REGTIME>1324050180</REGTIME>
|
||||
<TEMPLATE>
|
||||
<NEW_ATT><![CDATA[NEW]]></NEW_ATT>
|
||||
<NEW_NUM><![CDATA[123]]></NEW_NUM>
|
||||
</TEMPLATE>
|
||||
</VMTEMPLATE>
|
||||
<VMTEMPLATE>
|
||||
<ID>1</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>ONE</NAME>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<REGTIME>1324050461</REGTIME>
|
||||
<TEMPLATE>
|
||||
<DISK>
|
||||
<IMAGE_ID><![CDATA[0]]></IMAGE_ID>
|
||||
</DISK>
|
||||
<NAME><![CDATA[ONE]]></NAME>
|
||||
<TEMPLATE_ID><![CDATA[1]]></TEMPLATE_ID>
|
||||
</TEMPLATE>
|
||||
</VMTEMPLATE>
|
||||
</VMTEMPLATE_POOL>
|
3
share/doc/xsd/samples/template_pool/2.xml
Normal file
3
share/doc/xsd/samples/template_pool/2.xml
Normal file
@ -0,0 +1,3 @@
|
||||
<VMTEMPLATE_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../template_pool.xsd"/>
|
12
share/doc/xsd/samples/user/1.xml
Normal file
12
share/doc/xsd/samples/user/1.xml
Normal file
@ -0,0 +1,12 @@
|
||||
<USER xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../user.xsd">
|
||||
<ID>1</ID>
|
||||
<GID>0</GID>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>serveradmin</NAME>
|
||||
<PASSWORD>f72281eda1b97393f46041288b0baea528483b51</PASSWORD>
|
||||
<AUTH_DRIVER>server_cipher</AUTH_DRIVER>
|
||||
<ENABLED>1</ENABLED>
|
||||
<TEMPLATE/>
|
||||
</USER>
|
12
share/doc/xsd/samples/user/2.xml
Normal file
12
share/doc/xsd/samples/user/2.xml
Normal file
@ -0,0 +1,12 @@
|
||||
<USER xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../user.xsd">
|
||||
<ID>2</ID>
|
||||
<GID>1</GID>
|
||||
<GNAME>users</GNAME>
|
||||
<NAME>abc</NAME>
|
||||
<PASSWORD>a9993e364706816aba3e25717850c26c9cd0d89d</PASSWORD>
|
||||
<AUTH_DRIVER>core</AUTH_DRIVER>
|
||||
<ENABLED>1</ENABLED>
|
||||
<TEMPLATE/>
|
||||
</USER>
|
21
share/doc/xsd/samples/user/3.xml
Normal file
21
share/doc/xsd/samples/user/3.xml
Normal file
@ -0,0 +1,21 @@
|
||||
<USER xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../user.xsd">
|
||||
<ID>3</ID>
|
||||
<GID>1</GID>
|
||||
<GNAME>users</GNAME>
|
||||
<NAME>1234</NAME>
|
||||
<PASSWORD>7110eda4d09e062aa5e4a390b0a572ac0d2c0220</PASSWORD>
|
||||
<AUTH_DRIVER>core</AUTH_DRIVER>
|
||||
<ENABLED>1</ENABLED>
|
||||
<TEMPLATE>
|
||||
<ATT><![CDATA[OTHER VALUE]]></ATT>
|
||||
<COMPLEX>
|
||||
<ATT1><![CDATA[VAL1]]></ATT1>
|
||||
<ATT2><![CDATA[VAL2]]></ATT2>
|
||||
<NUM3><![CDATA[3]]></NUM3>
|
||||
</COMPLEX>
|
||||
<EXTRA><![CDATA[VALUE]]></EXTRA>
|
||||
<NUM><![CDATA[123]]></NUM>
|
||||
</TEMPLATE>
|
||||
</USER>
|
53
share/doc/xsd/samples/user_pool/1.xml
Normal file
53
share/doc/xsd/samples/user_pool/1.xml
Normal file
@ -0,0 +1,53 @@
|
||||
<USER_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../user_pool.xsd">
|
||||
<USER>
|
||||
<ID>0</ID>
|
||||
<GID>0</GID>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>oneadmin</NAME>
|
||||
<PASSWORD>f72281eda1b97393f46041288b0baea528483b51</PASSWORD>
|
||||
<AUTH_DRIVER>core</AUTH_DRIVER>
|
||||
<ENABLED>1</ENABLED>
|
||||
<TEMPLATE/>
|
||||
</USER>
|
||||
<USER>
|
||||
<ID>1</ID>
|
||||
<GID>0</GID>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>serveradmin</NAME>
|
||||
<PASSWORD>f72281eda1b97393f46041288b0baea528483b51</PASSWORD>
|
||||
<AUTH_DRIVER>server_cipher</AUTH_DRIVER>
|
||||
<ENABLED>1</ENABLED>
|
||||
<TEMPLATE/>
|
||||
</USER>
|
||||
<USER>
|
||||
<ID>2</ID>
|
||||
<GID>1</GID>
|
||||
<GNAME>users</GNAME>
|
||||
<NAME>abc</NAME>
|
||||
<PASSWORD>a9993e364706816aba3e25717850c26c9cd0d89d</PASSWORD>
|
||||
<AUTH_DRIVER>core</AUTH_DRIVER>
|
||||
<ENABLED>1</ENABLED>
|
||||
<TEMPLATE/>
|
||||
</USER>
|
||||
<USER>
|
||||
<ID>3</ID>
|
||||
<GID>1</GID>
|
||||
<GNAME>users</GNAME>
|
||||
<NAME>1234</NAME>
|
||||
<PASSWORD>7110eda4d09e062aa5e4a390b0a572ac0d2c0220</PASSWORD>
|
||||
<AUTH_DRIVER>core</AUTH_DRIVER>
|
||||
<ENABLED>1</ENABLED>
|
||||
<TEMPLATE>
|
||||
<ATT><![CDATA[OTHER VALUE]]></ATT>
|
||||
<COMPLEX>
|
||||
<ATT1><![CDATA[VAL1]]></ATT1>
|
||||
<ATT2><![CDATA[VAL2]]></ATT2>
|
||||
<NUM3><![CDATA[3]]></NUM3>
|
||||
</COMPLEX>
|
||||
<EXTRA><![CDATA[VALUE]]></EXTRA>
|
||||
<NUM><![CDATA[123]]></NUM>
|
||||
</TEMPLATE>
|
||||
</USER>
|
||||
</USER_POOL>
|
26
share/doc/xsd/samples/vm/1.xml
Normal file
26
share/doc/xsd/samples/vm/1.xml
Normal file
@ -0,0 +1,26 @@
|
||||
<VM xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vm.xsd">
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>one-0</NAME>
|
||||
<LAST_POLL>0</LAST_POLL>
|
||||
<STATE>1</STATE>
|
||||
<LCM_STATE>0</LCM_STATE>
|
||||
<STIME>1324050700</STIME>
|
||||
<ETIME>0</ETIME>
|
||||
<DEPLOY_ID/>
|
||||
<MEMORY>0</MEMORY>
|
||||
<CPU>0</CPU>
|
||||
<NET_TX>0</NET_TX>
|
||||
<NET_RX>0</NET_RX>
|
||||
<TEMPLATE>
|
||||
<NAME><![CDATA[one-0]]></NAME>
|
||||
<TEMPLATE_ID><![CDATA[2]]></TEMPLATE_ID>
|
||||
<VMID><![CDATA[0]]></VMID>
|
||||
</TEMPLATE>
|
||||
<HISTORY_RECORDS/>
|
||||
</VM>
|
81
share/doc/xsd/samples/vm/2.xml
Normal file
81
share/doc/xsd/samples/vm/2.xml
Normal file
@ -0,0 +1,81 @@
|
||||
<VM xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vm.xsd">
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>one-0</NAME>
|
||||
<LAST_POLL>1324050881</LAST_POLL>
|
||||
<STATE>3</STATE>
|
||||
<LCM_STATE>3</LCM_STATE>
|
||||
<STIME>1324050700</STIME>
|
||||
<ETIME>0</ETIME>
|
||||
<DEPLOY_ID>vm:one-0:dummy</DEPLOY_ID>
|
||||
<MEMORY>0</MEMORY>
|
||||
<CPU>0</CPU>
|
||||
<NET_TX>0</NET_TX>
|
||||
<NET_RX>0</NET_RX>
|
||||
<TEMPLATE>
|
||||
<NAME><![CDATA[one-0]]></NAME>
|
||||
<TEMPLATE_ID><![CDATA[2]]></TEMPLATE_ID>
|
||||
<VMID><![CDATA[0]]></VMID>
|
||||
</TEMPLATE>
|
||||
<HISTORY_RECORDS>
|
||||
<HISTORY>
|
||||
<SEQ>0</SEQ>
|
||||
<HOSTNAME>vm</HOSTNAME>
|
||||
<VM_DIR>/var/lib/one/</VM_DIR>
|
||||
<HID>1</HID>
|
||||
<STIME>1324050881</STIME>
|
||||
<ETIME>1324050891</ETIME>
|
||||
<VMMMAD>vmm_dummy</VMMMAD>
|
||||
<VNMMAD>fw</VNMMAD>
|
||||
<TMMAD>tm_shared</TMMAD>
|
||||
<PSTIME>1324050881</PSTIME>
|
||||
<PETIME>1324050881</PETIME>
|
||||
<RSTIME>1324050881</RSTIME>
|
||||
<RETIME>1324050891</RETIME>
|
||||
<ESTIME>0</ESTIME>
|
||||
<EETIME>0</EETIME>
|
||||
<REASON>3</REASON>
|
||||
</HISTORY>
|
||||
<HISTORY>
|
||||
<SEQ>1</SEQ>
|
||||
<HOSTNAME>localhost</HOSTNAME>
|
||||
<VM_DIR>/var/lib/one/</VM_DIR>
|
||||
<HID>0</HID>
|
||||
<STIME>1324050891</STIME>
|
||||
<ETIME>1324050899</ETIME>
|
||||
<VMMMAD>vmm_dummy</VMMMAD>
|
||||
<VNMMAD>fw</VNMMAD>
|
||||
<TMMAD>tm_shared</TMMAD>
|
||||
<PSTIME>1324050891</PSTIME>
|
||||
<PETIME>1324050892</PETIME>
|
||||
<RSTIME>1324050892</RSTIME>
|
||||
<RETIME>1324050899</RETIME>
|
||||
<ESTIME>0</ESTIME>
|
||||
<EETIME>0</EETIME>
|
||||
<REASON>3</REASON>
|
||||
</HISTORY>
|
||||
<HISTORY>
|
||||
<SEQ>2</SEQ>
|
||||
<HOSTNAME>localhost</HOSTNAME>
|
||||
<VM_DIR>/var/lib/one/</VM_DIR>
|
||||
<HID>0</HID>
|
||||
<STIME>1324050899</STIME>
|
||||
<ETIME>0</ETIME>
|
||||
<VMMMAD>vmm_dummy</VMMMAD>
|
||||
<VNMMAD>fw</VNMMAD>
|
||||
<TMMAD>tm_shared</TMMAD>
|
||||
<PSTIME>0</PSTIME>
|
||||
<PETIME>0</PETIME>
|
||||
<RSTIME>1324050899</RSTIME>
|
||||
<RETIME>0</RETIME>
|
||||
<ESTIME>0</ESTIME>
|
||||
<EETIME>0</EETIME>
|
||||
<REASON>0</REASON>
|
||||
</HISTORY>
|
||||
</HISTORY_RECORDS>
|
||||
</VM>
|
81
share/doc/xsd/samples/vm/3.xml
Normal file
81
share/doc/xsd/samples/vm/3.xml
Normal file
@ -0,0 +1,81 @@
|
||||
<VM xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vm.xsd">
|
||||
<ID>3</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>one-3</NAME>
|
||||
<LAST_POLL>1324052447</LAST_POLL>
|
||||
<STATE>6</STATE>
|
||||
<LCM_STATE>0</LCM_STATE>
|
||||
<STIME>1324052427</STIME>
|
||||
<ETIME>1324052465</ETIME>
|
||||
<DEPLOY_ID>localhost:one-3:dummy</DEPLOY_ID>
|
||||
<MEMORY>0</MEMORY>
|
||||
<CPU>0</CPU>
|
||||
<NET_TX>0</NET_TX>
|
||||
<NET_RX>0</NET_RX>
|
||||
<TEMPLATE>
|
||||
<NAME><![CDATA[one-3]]></NAME>
|
||||
<TEMPLATE_ID><![CDATA[2]]></TEMPLATE_ID>
|
||||
<VMID><![CDATA[3]]></VMID>
|
||||
</TEMPLATE>
|
||||
<HISTORY_RECORDS>
|
||||
<HISTORY>
|
||||
<SEQ>0</SEQ>
|
||||
<HOSTNAME>localhost</HOSTNAME>
|
||||
<VM_DIR>/var/lib/one/</VM_DIR>
|
||||
<HID>0</HID>
|
||||
<STIME>1324052447</STIME>
|
||||
<ETIME>1324052452</ETIME>
|
||||
<VMMMAD>vmm_dummy</VMMMAD>
|
||||
<VNMMAD>fw</VNMMAD>
|
||||
<TMMAD>tm_shared</TMMAD>
|
||||
<PSTIME>1324052447</PSTIME>
|
||||
<PETIME>1324052447</PETIME>
|
||||
<RSTIME>1324052447</RSTIME>
|
||||
<RETIME>1324052452</RETIME>
|
||||
<ESTIME>0</ESTIME>
|
||||
<EETIME>0</EETIME>
|
||||
<REASON>3</REASON>
|
||||
</HISTORY>
|
||||
<HISTORY>
|
||||
<SEQ>1</SEQ>
|
||||
<HOSTNAME>vm</HOSTNAME>
|
||||
<VM_DIR>/var/lib/one/</VM_DIR>
|
||||
<HID>1</HID>
|
||||
<STIME>1324052452</STIME>
|
||||
<ETIME>1324052456</ETIME>
|
||||
<VMMMAD>vmm_dummy</VMMMAD>
|
||||
<VNMMAD>fw</VNMMAD>
|
||||
<TMMAD>tm_shared</TMMAD>
|
||||
<PSTIME>1324052452</PSTIME>
|
||||
<PETIME>1324052452</PETIME>
|
||||
<RSTIME>1324052452</RSTIME>
|
||||
<RETIME>1324052456</RETIME>
|
||||
<ESTIME>0</ESTIME>
|
||||
<EETIME>0</EETIME>
|
||||
<REASON>3</REASON>
|
||||
</HISTORY>
|
||||
<HISTORY>
|
||||
<SEQ>2</SEQ>
|
||||
<HOSTNAME>localhost</HOSTNAME>
|
||||
<VM_DIR>/var/lib/one/</VM_DIR>
|
||||
<HID>0</HID>
|
||||
<STIME>1324052456</STIME>
|
||||
<ETIME>1324052465</ETIME>
|
||||
<VMMMAD>vmm_dummy</VMMMAD>
|
||||
<VNMMAD>fw</VNMMAD>
|
||||
<TMMAD>tm_shared</TMMAD>
|
||||
<PSTIME>1324052456</PSTIME>
|
||||
<PETIME>1324052456</PETIME>
|
||||
<RSTIME>1324052456</RSTIME>
|
||||
<RETIME>1324052465</RETIME>
|
||||
<ESTIME>1324052465</ESTIME>
|
||||
<EETIME>1324052465</EETIME>
|
||||
<REASON>4</REASON>
|
||||
</HISTORY>
|
||||
</HISTORY_RECORDS>
|
||||
</VM>
|
161
share/doc/xsd/samples/vm_pool/1.xml
Normal file
161
share/doc/xsd/samples/vm_pool/1.xml
Normal file
@ -0,0 +1,161 @@
|
||||
<VM_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vm_pool.xsd">
|
||||
<VM>
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>one-0</NAME>
|
||||
<LAST_POLL>1324052091</LAST_POLL>
|
||||
<STATE>3</STATE>
|
||||
<LCM_STATE>3</LCM_STATE>
|
||||
<STIME>1324050700</STIME>
|
||||
<ETIME>0</ETIME>
|
||||
<DEPLOY_ID>vm:one-0:dummy</DEPLOY_ID>
|
||||
<MEMORY>0</MEMORY>
|
||||
<CPU>0</CPU>
|
||||
<NET_TX>12345</NET_TX>
|
||||
<NET_RX>0</NET_RX>
|
||||
<TEMPLATE>
|
||||
<NAME><![CDATA[one-0]]></NAME>
|
||||
<TEMPLATE_ID><![CDATA[2]]></TEMPLATE_ID>
|
||||
<VMID><![CDATA[0]]></VMID>
|
||||
</TEMPLATE>
|
||||
<HISTORY_RECORDS>
|
||||
<HISTORY>
|
||||
<SEQ>2</SEQ>
|
||||
<HOSTNAME>localhost</HOSTNAME>
|
||||
<VM_DIR>/var/lib/one/</VM_DIR>
|
||||
<HID>0</HID>
|
||||
<STIME>1324050899</STIME>
|
||||
<ETIME>0</ETIME>
|
||||
<VMMMAD>vmm_dummy</VMMMAD>
|
||||
<VNMMAD>fw</VNMMAD>
|
||||
<TMMAD>tm_shared</TMMAD>
|
||||
<PSTIME>0</PSTIME>
|
||||
<PETIME>0</PETIME>
|
||||
<RSTIME>1324050899</RSTIME>
|
||||
<RETIME>0</RETIME>
|
||||
<ESTIME>0</ESTIME>
|
||||
<EETIME>0</EETIME>
|
||||
<REASON>0</REASON>
|
||||
</HISTORY>
|
||||
</HISTORY_RECORDS>
|
||||
</VM>
|
||||
<VM>
|
||||
<ID>1</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>one-1</NAME>
|
||||
<LAST_POLL>0</LAST_POLL>
|
||||
<STATE>1</STATE>
|
||||
<LCM_STATE>0</LCM_STATE>
|
||||
<STIME>1324052403</STIME>
|
||||
<ETIME>0</ETIME>
|
||||
<DEPLOY_ID/>
|
||||
<MEMORY>0</MEMORY>
|
||||
<CPU>0</CPU>
|
||||
<NET_TX>0</NET_TX>
|
||||
<NET_RX>0</NET_RX>
|
||||
<TEMPLATE>
|
||||
<NAME><![CDATA[one-1]]></NAME>
|
||||
<TEMPLATE_ID><![CDATA[2]]></TEMPLATE_ID>
|
||||
<VMID><![CDATA[1]]></VMID>
|
||||
</TEMPLATE>
|
||||
<HISTORY_RECORDS/>
|
||||
</VM>
|
||||
<VM>
|
||||
<ID>2</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>one-2</NAME>
|
||||
<LAST_POLL>1324052436</LAST_POLL>
|
||||
<STATE>3</STATE>
|
||||
<LCM_STATE>3</LCM_STATE>
|
||||
<STIME>1324052411</STIME>
|
||||
<ETIME>0</ETIME>
|
||||
<DEPLOY_ID>vm:one-2:dummy</DEPLOY_ID>
|
||||
<MEMORY>0</MEMORY>
|
||||
<CPU>0</CPU>
|
||||
<NET_TX>0</NET_TX>
|
||||
<NET_RX>0</NET_RX>
|
||||
<TEMPLATE>
|
||||
<NAME><![CDATA[one-2]]></NAME>
|
||||
<TEMPLATE_ID><![CDATA[2]]></TEMPLATE_ID>
|
||||
<VMID><![CDATA[2]]></VMID>
|
||||
</TEMPLATE>
|
||||
<HISTORY_RECORDS>
|
||||
<HISTORY>
|
||||
<SEQ>0</SEQ>
|
||||
<HOSTNAME>vm</HOSTNAME>
|
||||
<VM_DIR>/var/lib/one/</VM_DIR>
|
||||
<HID>1</HID>
|
||||
<STIME>1324052436</STIME>
|
||||
<ETIME>0</ETIME>
|
||||
<VMMMAD>vmm_dummy</VMMMAD>
|
||||
<VNMMAD>fw</VNMMAD>
|
||||
<TMMAD>tm_shared</TMMAD>
|
||||
<PSTIME>1324052436</PSTIME>
|
||||
<PETIME>1324052436</PETIME>
|
||||
<RSTIME>1324052436</RSTIME>
|
||||
<RETIME>0</RETIME>
|
||||
<ESTIME>0</ESTIME>
|
||||
<EETIME>0</EETIME>
|
||||
<REASON>0</REASON>
|
||||
</HISTORY>
|
||||
</HISTORY_RECORDS>
|
||||
</VM>
|
||||
<VM>
|
||||
<ID>4</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>one-4</NAME>
|
||||
<LAST_POLL>1324052488</LAST_POLL>
|
||||
<STATE>7</STATE>
|
||||
<LCM_STATE>0</LCM_STATE>
|
||||
<STIME>1324052484</STIME>
|
||||
<ETIME>1324052510</ETIME>
|
||||
<DEPLOY_ID>localhost:one-4:dummy</DEPLOY_ID>
|
||||
<MEMORY>0</MEMORY>
|
||||
<CPU>0</CPU>
|
||||
<NET_TX>0</NET_TX>
|
||||
<NET_RX>0</NET_RX>
|
||||
<TEMPLATE>
|
||||
<ERROR>
|
||||
<MESSAGE><![CDATA[Error excuting image transfer script: Could not move /var/lib/one//4/images to /var/lib/one/4]]></MESSAGE>
|
||||
<TIMESTAMP><![CDATA[Fri Dec 16 08:21:50 2011]]></TIMESTAMP>
|
||||
</ERROR>
|
||||
<NAME><![CDATA[one-4]]></NAME>
|
||||
<TEMPLATE_ID><![CDATA[2]]></TEMPLATE_ID>
|
||||
<VMID><![CDATA[4]]></VMID>
|
||||
</TEMPLATE>
|
||||
<HISTORY_RECORDS>
|
||||
<HISTORY>
|
||||
<SEQ>2</SEQ>
|
||||
<HOSTNAME>vm</HOSTNAME>
|
||||
<VM_DIR>/var/lib/one/</VM_DIR>
|
||||
<HID>1</HID>
|
||||
<STIME>1324052502</STIME>
|
||||
<ETIME>1324052510</ETIME>
|
||||
<VMMMAD>vmm_dummy</VMMMAD>
|
||||
<VNMMAD>fw</VNMMAD>
|
||||
<TMMAD>tm_shared</TMMAD>
|
||||
<PSTIME>1324052502</PSTIME>
|
||||
<PETIME>1324052502</PETIME>
|
||||
<RSTIME>1324052502</RSTIME>
|
||||
<RETIME>1324052510</RETIME>
|
||||
<ESTIME>1324052510</ESTIME>
|
||||
<EETIME>1324052510</EETIME>
|
||||
<REASON>1</REASON>
|
||||
</HISTORY>
|
||||
</HISTORY_RECORDS>
|
||||
</VM>
|
||||
</VM_POOL>
|
3
share/doc/xsd/samples/vm_pool/2.xml
Normal file
3
share/doc/xsd/samples/vm_pool/2.xml
Normal file
@ -0,0 +1,3 @@
|
||||
<VM_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vm_pool.xsd"/>
|
48
share/doc/xsd/samples/vnet/1.xml
Normal file
48
share/doc/xsd/samples/vnet/1.xml
Normal file
@ -0,0 +1,48 @@
|
||||
<VNET xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vnet.xsd">
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>Blue LAN</NAME>
|
||||
<TYPE>1</TYPE>
|
||||
<BRIDGE>vbr1</BRIDGE>
|
||||
<VLAN>0</VLAN>
|
||||
<PHYDEV/>
|
||||
<VLAN_ID/>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<TOTAL_LEASES>0</TOTAL_LEASES>
|
||||
<TEMPLATE>
|
||||
<DNS><![CDATA[130.10.0.1]]></DNS>
|
||||
<GATEWAY><![CDATA[130.10.0.1]]></GATEWAY>
|
||||
<LOAD_BALANCER><![CDATA[130.10.0.4]]></LOAD_BALANCER>
|
||||
</TEMPLATE>
|
||||
<LEASES>
|
||||
<LEASE>
|
||||
<IP>130.10.0.1</IP>
|
||||
<MAC>02:00:82:0a:00:01</MAC>
|
||||
<USED>0</USED>
|
||||
<VID>-1</VID>
|
||||
</LEASE>
|
||||
<LEASE>
|
||||
<IP>130.10.0.2</IP>
|
||||
<MAC>50:20:20:20:20:21</MAC>
|
||||
<USED>0</USED>
|
||||
<VID>-1</VID>
|
||||
</LEASE>
|
||||
<LEASE>
|
||||
<IP>130.10.0.3</IP>
|
||||
<MAC>02:00:82:0a:00:03</MAC>
|
||||
<USED>0</USED>
|
||||
<VID>-1</VID>
|
||||
</LEASE>
|
||||
<LEASE>
|
||||
<IP>130.10.0.4</IP>
|
||||
<MAC>02:00:82:0a:00:04</MAC>
|
||||
<USED>0</USED>
|
||||
<VID>-1</VID>
|
||||
</LEASE>
|
||||
</LEASES>
|
||||
</VNET>
|
26
share/doc/xsd/samples/vnet/2.xml
Normal file
26
share/doc/xsd/samples/vnet/2.xml
Normal file
@ -0,0 +1,26 @@
|
||||
<VNET xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vnet.xsd">
|
||||
<ID>1</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>R</NAME>
|
||||
<TYPE>0</TYPE>
|
||||
<BRIDGE>vbr0</BRIDGE>
|
||||
<VLAN>0</VLAN>
|
||||
<PHYDEV/>
|
||||
<VLAN_ID/>
|
||||
<RANGE>
|
||||
<IP_START>10.10.10.1</IP_START>
|
||||
<IP_END>10.10.10.254</IP_END>
|
||||
</RANGE>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<TOTAL_LEASES>0</TOTAL_LEASES>
|
||||
<TEMPLATE>
|
||||
<CUSTOM><![CDATA[CARLOS]]></CUSTOM>
|
||||
<NETWORK_MASK><![CDATA[255.255.255.0]]></NETWORK_MASK>
|
||||
</TEMPLATE>
|
||||
<LEASES/>
|
||||
</VNET>
|
23
share/doc/xsd/samples/vnet/3.xml
Normal file
23
share/doc/xsd/samples/vnet/3.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<VNET xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vnet.xsd">
|
||||
<ID>3</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>Empty</NAME>
|
||||
<TYPE>1</TYPE>
|
||||
<BRIDGE>vbr1</BRIDGE>
|
||||
<VLAN>1</VLAN>
|
||||
<PHYDEV>eth0</PHYDEV>
|
||||
<VLAN_ID>34</VLAN_ID>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<TOTAL_LEASES>0</TOTAL_LEASES>
|
||||
<TEMPLATE>
|
||||
<DNS><![CDATA[130.10.0.1]]></DNS>
|
||||
<GATEWAY><![CDATA[130.10.0.1]]></GATEWAY>
|
||||
<LOAD_BALANCER><![CDATA[130.10.0.4]]></LOAD_BALANCER>
|
||||
</TEMPLATE>
|
||||
<LEASES/>
|
||||
</VNET>
|
3
share/doc/xsd/samples/vnet_pool/1.xml
Normal file
3
share/doc/xsd/samples/vnet_pool/1.xml
Normal file
@ -0,0 +1,3 @@
|
||||
<VNET_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vnet_pool.xsd"/>
|
63
share/doc/xsd/samples/vnet_pool/2.xml
Normal file
63
share/doc/xsd/samples/vnet_pool/2.xml
Normal file
@ -0,0 +1,63 @@
|
||||
<VNET_POOL xmlns="http://opennebula.org/XMLSchema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://opennebula.org/XMLSchema ../../vnet_pool.xsd">
|
||||
<VNET>
|
||||
<ID>0</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>Blue LAN</NAME>
|
||||
<TYPE>1</TYPE>
|
||||
<BRIDGE>vbr1</BRIDGE>
|
||||
<VLAN>0</VLAN>
|
||||
<PHYDEV/>
|
||||
<VLAN_ID/>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<TOTAL_LEASES>0</TOTAL_LEASES>
|
||||
<TEMPLATE/>
|
||||
</VNET>
|
||||
<VNET>
|
||||
<ID>1</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>R</NAME>
|
||||
<TYPE>0</TYPE>
|
||||
<BRIDGE>vbr0</BRIDGE>
|
||||
<VLAN>0</VLAN>
|
||||
<PHYDEV/>
|
||||
<VLAN_ID/>
|
||||
<RANGE>
|
||||
<IP_START>10.10.10.1</IP_START>
|
||||
<IP_END>10.10.10.254</IP_END>
|
||||
</RANGE>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<TOTAL_LEASES>0</TOTAL_LEASES>
|
||||
<TEMPLATE>
|
||||
<CUSTOM><![CDATA[CARLOS]]></CUSTOM>
|
||||
<NETWORK_MASK><![CDATA[255.255.255.0]]></NETWORK_MASK>
|
||||
</TEMPLATE>
|
||||
</VNET>
|
||||
<VNET>
|
||||
<ID>3</ID>
|
||||
<UID>0</UID>
|
||||
<GID>0</GID>
|
||||
<UNAME>oneadmin</UNAME>
|
||||
<GNAME>oneadmin</GNAME>
|
||||
<NAME>Empty</NAME>
|
||||
<TYPE>1</TYPE>
|
||||
<BRIDGE>vbr1</BRIDGE>
|
||||
<VLAN>1</VLAN>
|
||||
<PHYDEV>eth0</PHYDEV>
|
||||
<VLAN_ID>34</VLAN_ID>
|
||||
<PUBLIC>0</PUBLIC>
|
||||
<TOTAL_LEASES>0</TOTAL_LEASES>
|
||||
<TEMPLATE>
|
||||
<DNS><![CDATA[130.10.0.1]]></DNS>
|
||||
<GATEWAY><![CDATA[130.10.0.1]]></GATEWAY>
|
||||
<LOAD_BALANCER><![CDATA[130.10.0.4]]></LOAD_BALANCER>
|
||||
</TEMPLATE>
|
||||
</VNET>
|
||||
</VNET_POOL>
|
18
share/doc/xsd/template.xsd
Normal file
18
share/doc/xsd/template.xsd
Normal file
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://opennebula.org/XMLSchema" elementFormDefault="qualified" targetNamespace="http://opennebula.org/XMLSchema">
|
||||
<xs:element name="VMTEMPLATE">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" type="xs:integer"/>
|
||||
<xs:element name="UID" type="xs:integer"/>
|
||||
<xs:element name="GID" type="xs:integer"/>
|
||||
<xs:element name="UNAME" type="xs:string"/>
|
||||
<xs:element name="GNAME" type="xs:string"/>
|
||||
<xs:element name="NAME" type="xs:string"/>
|
||||
<xs:element name="PUBLIC" type="xs:integer"/>
|
||||
<xs:element name="REGTIME" type="xs:integer"/>
|
||||
<xs:element name="TEMPLATE" type="xs:anyType"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
12
share/doc/xsd/template_pool.xsd
Normal file
12
share/doc/xsd/template_pool.xsd
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:include schemaLocation="template.xsd"/>
|
||||
<xs:element name="VMTEMPLATE_POOL">
|
||||
<xs:complexType>
|
||||
<xs:sequence maxOccurs="1" minOccurs="1">
|
||||
<xs:element ref="VMTEMPLATE" maxOccurs="unbounded" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
5
share/doc/xsd/test.sh
Executable file
5
share/doc/xsd/test.sh
Executable file
@ -0,0 +1,5 @@
|
||||
|
||||
for i in group_pool group host_pool host image_pool image template_pool template user_pool user vm_pool vm vnet_pool vnet
|
||||
do
|
||||
xmllint --noout --schema $i.xsd samples/$i/*
|
||||
done
|
18
share/doc/xsd/user.xsd
Normal file
18
share/doc/xsd/user.xsd
Normal file
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:element name="USER">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" type="xs:integer"/>
|
||||
<xs:element name="GID" type="xs:integer"/>
|
||||
<xs:element name="GNAME" type="xs:string"/>
|
||||
<xs:element name="NAME" type="xs:string"/>
|
||||
<xs:element name="PASSWORD" type="xs:string"/>
|
||||
<xs:element name="AUTH_DRIVER" type="xs:string"/>
|
||||
<xs:element name="ENABLED" type="xs:integer"/>
|
||||
<xs:element name="TEMPLATE" type="xs:anyType"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
12
share/doc/xsd/user_pool.xsd
Normal file
12
share/doc/xsd/user_pool.xsd
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:include schemaLocation="user.xsd"/>
|
||||
<xs:element name="USER_POOL">
|
||||
<xs:complexType>
|
||||
<xs:sequence maxOccurs="1" minOccurs="1">
|
||||
<xs:element ref="USER" maxOccurs="unbounded" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
55
share/doc/xsd/vm.xsd
Normal file
55
share/doc/xsd/vm.xsd
Normal file
@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:element name="VM">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" type="xs:integer"/>
|
||||
<xs:element name="UID" type="xs:integer"/>
|
||||
<xs:element name="GID" type="xs:integer"/>
|
||||
<xs:element name="UNAME" type="xs:string"/>
|
||||
<xs:element name="GNAME" type="xs:string"/>
|
||||
<xs:element name="NAME" type="xs:string"/>
|
||||
<xs:element name="LAST_POLL" type="xs:integer"/>
|
||||
<xs:element name="STATE" type="xs:integer"/>
|
||||
<xs:element name="LCM_STATE" type="xs:integer"/>
|
||||
<xs:element name="STIME" type="xs:integer"/>
|
||||
<xs:element name="ETIME" type="xs:integer"/>
|
||||
<xs:element name="DEPLOY_ID" type="xs:string"/>
|
||||
<xs:element name="MEMORY" type="xs:integer"/>
|
||||
<xs:element name="CPU" type="xs:integer"/>
|
||||
<xs:element name="NET_TX" type="xs:integer"/>
|
||||
<xs:element name="NET_RX" type="xs:integer"/>
|
||||
<xs:element name="TEMPLATE" type="xs:anyType"/>
|
||||
<xs:element name="HISTORY_RECORDS">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="HISTORY" maxOccurs="unbounded" minOccurs="0">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="SEQ" type="xs:integer"/>
|
||||
<xs:element name="HOSTNAME" type="xs:string"/>
|
||||
<xs:element name="VM_DIR" type="xs:string"/>
|
||||
<xs:element name="HID" type="xs:integer"/>
|
||||
<xs:element name="STIME" type="xs:integer"/>
|
||||
<xs:element name="ETIME" type="xs:integer"/>
|
||||
<xs:element name="VMMMAD" type="xs:string"/>
|
||||
<xs:element name="VNMMAD" type="xs:string"/>
|
||||
<xs:element name="TMMAD" type="xs:string"/>
|
||||
<xs:element name="PSTIME" type="xs:integer"/>
|
||||
<xs:element name="PETIME" type="xs:integer"/>
|
||||
<xs:element name="RSTIME" type="xs:integer"/>
|
||||
<xs:element name="RETIME" type="xs:integer"/>
|
||||
<xs:element name="ESTIME" type="xs:integer"/>
|
||||
<xs:element name="EETIME" type="xs:integer"/>
|
||||
<xs:element name="REASON" type="xs:integer"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
12
share/doc/xsd/vm_pool.xsd
Normal file
12
share/doc/xsd/vm_pool.xsd
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:include schemaLocation="vm.xsd"/>
|
||||
<xs:element name="VM_POOL">
|
||||
<xs:complexType>
|
||||
<xs:sequence maxOccurs="1" minOccurs="1">
|
||||
<xs:element ref="VM" maxOccurs="unbounded" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
48
share/doc/xsd/vnet.xsd
Normal file
48
share/doc/xsd/vnet.xsd
Normal file
@ -0,0 +1,48 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:element name="VNET">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" type="xs:integer"/>
|
||||
<xs:element name="UID" type="xs:integer"/>
|
||||
<xs:element name="GID" type="xs:integer"/>
|
||||
<xs:element name="UNAME" type="xs:string"/>
|
||||
<xs:element name="GNAME" type="xs:string"/>
|
||||
<xs:element name="NAME" type="xs:string"/>
|
||||
<xs:element name="TYPE" type="xs:integer"/>
|
||||
<xs:element name="BRIDGE" type="xs:string"/>
|
||||
<xs:element name="VLAN" type="xs:integer"/>
|
||||
<xs:element name="PHYDEV" type="xs:string"/>
|
||||
<xs:element name="VLAN_ID" type="xs:string"/>
|
||||
<xs:element name="RANGE" minOccurs="0" maxOccurs="1">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="IP_START" type="xs:string"/>
|
||||
<xs:element name="IP_END" type="xs:string"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="PUBLIC" type="xs:integer"/>
|
||||
<xs:element name="TOTAL_LEASES" type="xs:integer"/>
|
||||
<xs:element name="TEMPLATE" type="xs:anyType"/>
|
||||
<xs:element name="LEASES" minOccurs="0" maxOccurs="1">
|
||||
<xs:complexType>
|
||||
<xs:sequence minOccurs="0">
|
||||
<xs:element name="LEASE" minOccurs="0" maxOccurs="unbounded">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="IP" type="xs:string"/>
|
||||
<xs:element name="MAC" type="xs:string"/>
|
||||
<xs:element name="USED" type="xs:integer"/>
|
||||
<xs:element name="VID" type="xs:integer"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
12
share/doc/xsd/vnet_pool.xsd
Normal file
12
share/doc/xsd/vnet_pool.xsd
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
||||
targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
|
||||
<xs:include schemaLocation="vnet.xsd"/>
|
||||
<xs:element name="VNET_POOL">
|
||||
<xs:complexType>
|
||||
<xs:sequence maxOccurs="1" minOccurs="1">
|
||||
<xs:element ref="VNET" maxOccurs="unbounded" minOccurs="0"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
@ -34,7 +34,7 @@ const char * Group::db_bootstrap = "CREATE TABLE IF NOT EXISTS group_pool ("
|
||||
/* Group :: Database Access Functions */
|
||||
/* ************************************************************************ */
|
||||
|
||||
int Group::insert_replace(SqlDB *db, bool replace)
|
||||
int Group::insert_replace(SqlDB *db, bool replace, string& error_str)
|
||||
{
|
||||
ostringstream oss;
|
||||
|
||||
@ -60,6 +60,11 @@ int Group::insert_replace(SqlDB *db, bool replace)
|
||||
goto error_body;
|
||||
}
|
||||
|
||||
if ( validate_xml(sql_xml) != 0 )
|
||||
{
|
||||
goto error_xml;
|
||||
}
|
||||
|
||||
if ( replace )
|
||||
{
|
||||
oss << "REPLACE";
|
||||
@ -83,9 +88,24 @@ int Group::insert_replace(SqlDB *db, bool replace)
|
||||
|
||||
return rc;
|
||||
|
||||
error_xml:
|
||||
db->free_str(sql_name);
|
||||
db->free_str(sql_xml);
|
||||
|
||||
error_str = "Error transforming the Group to XML.";
|
||||
|
||||
goto error_common;
|
||||
|
||||
error_body:
|
||||
db->free_str(sql_name);
|
||||
goto error_generic;
|
||||
|
||||
error_name:
|
||||
goto error_generic;
|
||||
|
||||
error_generic:
|
||||
error_str = "Error inserting Group in DB.";
|
||||
error_common:
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -69,36 +69,7 @@ const char * Host::db_bootstrap = "CREATE TABLE IF NOT EXISTS host_pool ("
|
||||
/* ------------------------------------------------------------------------ */
|
||||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
int Host::insert(SqlDB *db, string& error_str)
|
||||
{
|
||||
int rc;
|
||||
|
||||
rc = insert_replace(db, false);
|
||||
|
||||
if ( rc != 0 )
|
||||
{
|
||||
error_str = "Error inserting Host in DB.";
|
||||
}
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------ */
|
||||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
int Host::update(SqlDB *db)
|
||||
{
|
||||
int rc;
|
||||
|
||||
rc = insert_replace(db, true);
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------ */
|
||||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
int Host::insert_replace(SqlDB *db, bool replace)
|
||||
int Host::insert_replace(SqlDB *db, bool replace, string& error_str)
|
||||
{
|
||||
ostringstream oss;
|
||||
|
||||
@ -124,6 +95,11 @@ int Host::insert_replace(SqlDB *db, bool replace)
|
||||
goto error_body;
|
||||
}
|
||||
|
||||
if ( validate_xml(sql_xml) != 0 )
|
||||
{
|
||||
goto error_xml;
|
||||
}
|
||||
|
||||
if(replace)
|
||||
{
|
||||
oss << "REPLACE";
|
||||
@ -149,9 +125,24 @@ int Host::insert_replace(SqlDB *db, bool replace)
|
||||
|
||||
return rc;
|
||||
|
||||
error_xml:
|
||||
db->free_str(sql_hostname);
|
||||
db->free_str(sql_xml);
|
||||
|
||||
error_str = "Error transforming the Group to XML.";
|
||||
|
||||
goto error_common;
|
||||
|
||||
error_body:
|
||||
db->free_str(sql_hostname);
|
||||
goto error_generic;
|
||||
|
||||
error_hostname:
|
||||
goto error_generic;
|
||||
|
||||
error_generic:
|
||||
error_str = "Error inserting Group in DB.";
|
||||
error_common:
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -190,12 +190,7 @@ int Image::insert(SqlDB *db, string& error_str)
|
||||
// Insert the Image
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
rc = insert_replace(db, false);
|
||||
|
||||
if ( rc == -1 )
|
||||
{
|
||||
error_str = "Error inserting Image in DB.";
|
||||
}
|
||||
rc = insert_replace(db, false, error_str);
|
||||
|
||||
return rc;
|
||||
|
||||
@ -237,13 +232,14 @@ error_common:
|
||||
|
||||
int Image::update(SqlDB *db)
|
||||
{
|
||||
return insert_replace(db, true);;
|
||||
string error_str;
|
||||
return insert_replace(db, true, error_str);
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------ */
|
||||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
int Image::insert_replace(SqlDB *db, bool replace)
|
||||
int Image::insert_replace(SqlDB *db, bool replace, string& error_str)
|
||||
{
|
||||
ostringstream oss;
|
||||
|
||||
@ -270,6 +266,11 @@ int Image::insert_replace(SqlDB *db, bool replace)
|
||||
goto error_body;
|
||||
}
|
||||
|
||||
if ( validate_xml(sql_xml) != 0 )
|
||||
{
|
||||
goto error_xml;
|
||||
}
|
||||
|
||||
if(replace)
|
||||
{
|
||||
oss << "REPLACE";
|
||||
@ -296,9 +297,24 @@ int Image::insert_replace(SqlDB *db, bool replace)
|
||||
|
||||
return rc;
|
||||
|
||||
error_xml:
|
||||
db->free_str(sql_name);
|
||||
db->free_str(sql_xml);
|
||||
|
||||
error_str = "Error transforming the Image to XML.";
|
||||
|
||||
goto error_common;
|
||||
|
||||
error_body:
|
||||
db->free_str(sql_name);
|
||||
goto error_generic;
|
||||
|
||||
error_name:
|
||||
goto error_generic;
|
||||
|
||||
error_generic:
|
||||
error_str = "Error inserting Image in DB.";
|
||||
error_common:
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
38
src/image_mad/remotes/fs/fs.conf
Normal file
38
src/image_mad/remotes/fs/fs.conf
Normal file
@ -0,0 +1,38 @@
|
||||
# -------------------------------------------------------------------------- #
|
||||
# Copyright 2002-2011, OpenNebula Project Leads (OpenNebula.org) #
|
||||
# #
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may #
|
||||
# not use this file except in compliance with the License. You may obtain #
|
||||
# a copy of the License at #
|
||||
# #
|
||||
# http://www.apache.org/licenses/LICENSE-2.0 #
|
||||
# #
|
||||
# Unless required by applicable law or agreed to in writing, software #
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, #
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
|
||||
# See the License for the specific language governing permissions and #
|
||||
# limitations under the License. #
|
||||
#--------------------------------------------------------------------------- #
|
||||
|
||||
# PRESERVE BASH SYNTAX
|
||||
|
||||
#*******************************************************************************
|
||||
# Configuration File for File-System based Image Repositories
|
||||
#-------------------------------------------------------------------------------
|
||||
# IMAGE_REPOSITORY: Path where the images will be stored. If not defined
|
||||
# defaults to /var/lib/one/images or $ONE_LOCATION/var/images
|
||||
#
|
||||
# RESTRICTED_DIRS: Paths that can not be used to register images. A space
|
||||
# separated list of paths. This prevents users to access important files like
|
||||
# oned.db or /etc/shadow. OpenNebula will automatically add its configuration
|
||||
# dirs:/var/lib/one, /etc/one and oneadmin's home ($HOME).
|
||||
#
|
||||
# SAFE_DIRS: Paths that are safe to specify image paths. This will allow you to
|
||||
# open specific paths within RESTRICTED_DIRS
|
||||
#*******************************************************************************
|
||||
|
||||
#IMAGE_REPOSITORY_PATH=/var/lib/one/images
|
||||
|
||||
RESTRICTED_DIRS="/etc/"
|
||||
|
||||
SAFE_DIRS="$HOME/public/"
|
@ -22,12 +22,6 @@
|
||||
# - RESTRICTED_DIRS: Paths that can not be used to register images
|
||||
# - SAFE_DIRS: Paths that are safe to specify image paths
|
||||
#------------------------------------------------------------------------------
|
||||
if [ -z "${ONE_LOCATION}" ]; then
|
||||
export IMAGE_REPOSITORY_PATH=/var/lib/one/images
|
||||
else
|
||||
export IMAGE_REPOSITORY_PATH=$ONE_LOCATION/var/images
|
||||
fi
|
||||
|
||||
if [ -z "${ONE_LOCATION}" ]; then
|
||||
VAR_LOCATION=/var/lib/one/
|
||||
ETC_LOCATION=/etc/one/
|
||||
@ -36,8 +30,23 @@ else
|
||||
ETC_LOCATION=$ONE_LOCATION/etc/
|
||||
fi
|
||||
|
||||
export RESTRICTED_DIRS="$VAR_LOCATION $ETC_LOCATION $HOME/ /etc/"
|
||||
export SAFE_DIRS="$HOME/public/"
|
||||
CONF_FILE=$ETC_LOCATION/image/fs.conf
|
||||
|
||||
source $CONF_FILE
|
||||
|
||||
if [ -z "${IMAGE_REPOSITORY_PATH}" ]; then
|
||||
if [ -z "${ONE_LOCATION}" ]; then
|
||||
IMAGE_REPOSITORY_PATH=/var/lib/one/images
|
||||
else
|
||||
IMAGE_REPOSITORY_PATH=$ONE_LOCATION/var/images
|
||||
fi
|
||||
fi
|
||||
|
||||
RESTRICTED_DIRS="$VAR_LOCATION $ETC_LOCATION $HOME/ $RESTRICTED_DIRS"
|
||||
|
||||
export IMAGE_REPOSITORY_PATH
|
||||
export RESTRICTED_DIRS
|
||||
export SAFE_DIRS
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Function used to generate Image names, you should not need to override this
|
||||
@ -86,7 +95,6 @@ function check_restricted {
|
||||
|
||||
# Change the permissions of all the files inside directoriers (= VMware disks)
|
||||
function fix_owner_perms {
|
||||
|
||||
find $IMAGE_REPOSITORY_PATH -type d \
|
||||
-mindepth 1 \
|
||||
-maxdepth 1 \
|
||||
|
@ -44,6 +44,9 @@ module DriverExecHelper
|
||||
# dummy paths
|
||||
@remote_scripts_path = File.join(@remote_scripts_base_path, directory)
|
||||
@local_scripts_path = File.join(@local_scripts_base_path, directory)
|
||||
|
||||
# mutex for logging
|
||||
@send_mutex = Mutex.new
|
||||
end
|
||||
|
||||
#
|
||||
@ -94,6 +97,14 @@ module DriverExecHelper
|
||||
#
|
||||
# METHODS FOR LOGS & COMMAND OUTPUT
|
||||
#
|
||||
# Sends a message to the OpenNebula core through stdout
|
||||
def send_message(action="-", result=RESULT[:failure], id="-", info="-")
|
||||
@send_mutex.synchronize {
|
||||
STDOUT.puts "#{action} #{result} #{id} #{info}"
|
||||
STDOUT.flush
|
||||
}
|
||||
end
|
||||
|
||||
# Sends a log message to ONE. The +message+ can be multiline, it will
|
||||
# be automatically splitted by lines.
|
||||
def log(number, message)
|
||||
|
@ -57,23 +57,15 @@ class OpenNebulaDriver < ActionManager
|
||||
|
||||
super(@options[:concurrency], @options[:threaded])
|
||||
|
||||
@retries = @options[:retries]
|
||||
@retries = @options[:retries]
|
||||
|
||||
@send_mutex = Mutex.new
|
||||
|
||||
#Set default values
|
||||
initialize_helper(directory, @options)
|
||||
|
||||
register_action(:INIT, method("init"))
|
||||
end
|
||||
|
||||
# Sends a message to the OpenNebula core through stdout
|
||||
def send_message(action="-", result=RESULT[:failure], id="-", info="-")
|
||||
@send_mutex.synchronize {
|
||||
STDOUT.puts "#{action} #{result} #{id} #{info}"
|
||||
STDOUT.flush
|
||||
}
|
||||
end
|
||||
|
||||
|
||||
# Calls remotes or local action checking the action name and
|
||||
# @local_actions. Optional arguments can be specified as a hash
|
||||
|
@ -34,8 +34,8 @@ module Migrator
|
||||
|
||||
vn_mad = ""
|
||||
|
||||
while !( ["802.1Q", "dummy", "ebtables", "ovswitch"].include?(vn_mad) ) do
|
||||
print " Driver name (802.1Q, dummy, ebtables, ovswitch): "
|
||||
while !( ["802.1Q", "dummy", "ebtables", "ovswitch", "fw"].include?(vn_mad) ) do
|
||||
print " Driver name (802.1Q, dummy, ebtables, ovswitch, fw): "
|
||||
vn_mad = gets.chomp
|
||||
vn_mad = "dummy" if vn_mad.empty?
|
||||
end
|
||||
|
@ -750,20 +750,17 @@ function setupCreateVMDialog(){
|
||||
if (!template_id.length){
|
||||
notifyError("You have not selected a template");
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
if (n_times.length){
|
||||
n_times_int=parseInt(n_times,10);
|
||||
}
|
||||
};
|
||||
|
||||
if (n_times_int>1){
|
||||
if (!vm_name.length){
|
||||
vm_name = $('#template_id option:selected',this).text();
|
||||
}
|
||||
for (var i=0; i< n_times_int; i++){
|
||||
Sunstone.runAction("Template.instantiate",template_id,vm_name+"_"+i);
|
||||
};
|
||||
} else {
|
||||
if (!vm_name.length){
|
||||
vm_name = $('#template_id option:selected',this).text();
|
||||
};
|
||||
|
||||
for (var i=0; i< n_times_int; i++){
|
||||
Sunstone.runAction("Template.instantiate",template_id,vm_name);
|
||||
};
|
||||
|
||||
|
@ -44,25 +44,7 @@ const char * User::db_bootstrap = "CREATE TABLE IF NOT EXISTS user_pool ("
|
||||
/* -------------------------------------------------------------------------- */
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
||||
int User::insert(SqlDB *db, string& error_str)
|
||||
{
|
||||
int rc;
|
||||
|
||||
rc = insert_replace(db, false);
|
||||
|
||||
if ( rc != 0 )
|
||||
{
|
||||
error_str = "Error inserting User in DB.";
|
||||
return rc;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
||||
int User::insert_replace(SqlDB *db, bool replace)
|
||||
int User::insert_replace(SqlDB *db, bool replace, string& error_str)
|
||||
{
|
||||
ostringstream oss;
|
||||
|
||||
@ -88,6 +70,11 @@ int User::insert_replace(SqlDB *db, bool replace)
|
||||
goto error_body;
|
||||
}
|
||||
|
||||
if ( validate_xml(sql_xml) != 0 )
|
||||
{
|
||||
goto error_xml;
|
||||
}
|
||||
|
||||
// Construct the SQL statement to Insert or Replace
|
||||
if(replace)
|
||||
{
|
||||
@ -110,9 +97,24 @@ int User::insert_replace(SqlDB *db, bool replace)
|
||||
|
||||
return rc;
|
||||
|
||||
error_xml:
|
||||
db->free_str(sql_username);
|
||||
db->free_str(sql_xml);
|
||||
|
||||
error_str = "Error transforming the User to XML.";
|
||||
|
||||
goto error_common;
|
||||
|
||||
error_body:
|
||||
db->free_str(sql_username);
|
||||
goto error_generic;
|
||||
|
||||
error_username:
|
||||
goto error_generic;
|
||||
|
||||
error_generic:
|
||||
error_str = "Error inserting User in DB.";
|
||||
error_common:
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -281,7 +281,7 @@ int VirtualMachine::insert(SqlDB * db, string& error_str)
|
||||
// Insert the VM
|
||||
// ------------------------------------------------------------------------
|
||||
|
||||
rc = insert_replace(db, false);
|
||||
rc = insert_replace(db, false, error_str);
|
||||
|
||||
if ( rc != 0 )
|
||||
{
|
||||
@ -291,7 +291,6 @@ int VirtualMachine::insert(SqlDB * db, string& error_str)
|
||||
return 0;
|
||||
|
||||
error_update:
|
||||
error_str = "Can not insert VM in the database.";
|
||||
goto error_rollback;
|
||||
|
||||
error_context:
|
||||
@ -506,7 +505,7 @@ int VirtualMachine::parse_requirements(string& error_str)
|
||||
/* ------------------------------------------------------------------------ */
|
||||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
int VirtualMachine::insert_replace(SqlDB *db, bool replace)
|
||||
int VirtualMachine::insert_replace(SqlDB *db, bool replace, string& error_str)
|
||||
{
|
||||
ostringstream oss;
|
||||
int rc;
|
||||
@ -520,7 +519,7 @@ int VirtualMachine::insert_replace(SqlDB *db, bool replace)
|
||||
|
||||
if ( sql_deploy_id == 0 )
|
||||
{
|
||||
goto error_deploy;
|
||||
goto error_generic;
|
||||
}
|
||||
|
||||
sql_name = db->escape_str(name.c_str());
|
||||
@ -537,6 +536,11 @@ int VirtualMachine::insert_replace(SqlDB *db, bool replace)
|
||||
goto error_body;
|
||||
}
|
||||
|
||||
if ( validate_xml(sql_xml) != 0 )
|
||||
{
|
||||
goto error_xml;
|
||||
}
|
||||
|
||||
if(replace)
|
||||
{
|
||||
oss << "REPLACE";
|
||||
@ -564,12 +568,27 @@ int VirtualMachine::insert_replace(SqlDB *db, bool replace)
|
||||
|
||||
return rc;
|
||||
|
||||
error_xml:
|
||||
db->free_str(sql_deploy_id);
|
||||
db->free_str(sql_name);
|
||||
db->free_str(sql_xml);
|
||||
|
||||
error_str = "Error transforming the VM to XML.";
|
||||
|
||||
goto error_common;
|
||||
|
||||
error_body:
|
||||
db->free_str(sql_deploy_id);
|
||||
db->free_str(sql_name);
|
||||
goto error_generic;
|
||||
|
||||
error_name:
|
||||
db->free_str(sql_deploy_id);
|
||||
error_deploy:
|
||||
goto error_generic;
|
||||
|
||||
error_generic:
|
||||
error_str = "Error inserting VM in DB.";
|
||||
error_common:
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -113,12 +113,7 @@ int VMTemplate::insert(SqlDB *db, string& error_str)
|
||||
// Insert the Template
|
||||
// ------------------------------------------------------------------------
|
||||
|
||||
rc = insert_replace(db, false);
|
||||
|
||||
if ( rc != 0 )
|
||||
{
|
||||
error_str = "Error inserting Template in DB.";
|
||||
}
|
||||
rc = insert_replace(db, false, error_str);
|
||||
|
||||
return rc;
|
||||
}
|
||||
@ -126,7 +121,7 @@ int VMTemplate::insert(SqlDB *db, string& error_str)
|
||||
/* ------------------------------------------------------------------------ */
|
||||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
int VMTemplate::insert_replace(SqlDB *db, bool replace)
|
||||
int VMTemplate::insert_replace(SqlDB *db, bool replace, string& error_str)
|
||||
{
|
||||
ostringstream oss;
|
||||
|
||||
@ -152,6 +147,11 @@ int VMTemplate::insert_replace(SqlDB *db, bool replace)
|
||||
goto error_body;
|
||||
}
|
||||
|
||||
if ( validate_xml(sql_xml) != 0 )
|
||||
{
|
||||
goto error_xml;
|
||||
}
|
||||
|
||||
if(replace)
|
||||
{
|
||||
oss << "REPLACE";
|
||||
@ -178,9 +178,24 @@ int VMTemplate::insert_replace(SqlDB *db, bool replace)
|
||||
|
||||
return rc;
|
||||
|
||||
error_xml:
|
||||
db->free_str(sql_name);
|
||||
db->free_str(sql_xml);
|
||||
|
||||
error_str = "Error transforming the Template to XML.";
|
||||
|
||||
goto error_common;
|
||||
|
||||
error_body:
|
||||
db->free_str(sql_name);
|
||||
goto error_generic;
|
||||
|
||||
error_name:
|
||||
goto error_generic;
|
||||
|
||||
error_generic:
|
||||
error_str = "Error inserting Template in DB.";
|
||||
error_common:
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -68,14 +68,14 @@ class VmmAction
|
||||
get_data(:dest_driver, :MIGR_NET_DRV)
|
||||
|
||||
# Initialize streams and vnm
|
||||
@ssh_src = @vmm.get_ssh_stream(@data[:host], @id)
|
||||
@ssh_src = @vmm.get_ssh_stream(action, @data[:host], @id)
|
||||
@vnm_src = VirtualNetworkDriver.new(@data[:net_drv],
|
||||
:local_actions => @vmm.options[:local_actions],
|
||||
:message => @xml_data,
|
||||
:ssh_stream => @ssh_src)
|
||||
|
||||
if @data[:dest_host] and !@data[:dest_host].empty?
|
||||
@ssh_dst = @vmm.get_ssh_stream(@data[:dest_host], @id)
|
||||
@ssh_dst = @vmm.get_ssh_stream(action, @data[:dest_host], @id)
|
||||
@vnm_dst = VirtualNetworkDriver.new(@data[:dest_driver],
|
||||
:local_actions => @vmm.options[:local_actions],
|
||||
:message => @xml_data,
|
||||
@ -155,7 +155,7 @@ class VmmAction
|
||||
end
|
||||
|
||||
# Save the step info
|
||||
@data["#{step[:action]}_info".to_sym] = info
|
||||
@data["#{step[:action]}_info".to_sym] = info.strip
|
||||
|
||||
# Roll back steps, store failed info and break steps
|
||||
if DriverExecHelper.failed?(result)
|
||||
@ -168,7 +168,7 @@ class VmmAction
|
||||
break
|
||||
else
|
||||
@vmm.log(@id,
|
||||
"Sussecfully execute #{DRIVER_NAMES[step[:driver]]} " \
|
||||
"Successfully execute #{DRIVER_NAMES[step[:driver]]} " \
|
||||
"operation: #{step[:action]}.")
|
||||
end
|
||||
end
|
||||
@ -228,10 +228,16 @@ class ExecDriver < VirtualMachineDriver
|
||||
# @param[String] the hostname of the host
|
||||
# @param[String] id of the VM to log messages
|
||||
# @return [SshStreamCommand]
|
||||
def get_ssh_stream(host, id)
|
||||
SshStreamCommand.new(host,
|
||||
@remote_scripts_base_path,
|
||||
log_method(id))
|
||||
def get_ssh_stream(aname, host, id)
|
||||
stream = nil
|
||||
|
||||
if not action_is_local?(aname)
|
||||
stream = SshStreamCommand.new(host,
|
||||
@remote_scripts_base_path,
|
||||
log_method(id))
|
||||
else
|
||||
return nil
|
||||
end
|
||||
end
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
@ -22,4 +22,4 @@ else
|
||||
MAD_LOCATION=$ONE_LOCATION/lib/mads
|
||||
fi
|
||||
|
||||
exec $MAD_LOCATION/one_vmm_exec -l deploy,shutdown,cancel,save,restore,migrate,poll $*
|
||||
exec $MAD_LOCATION/one_vmm_exec -l deploy,shutdown,cancel,save,restore,migrate,poll,pre,post,clean $*
|
||||
|
@ -228,7 +228,7 @@ int VirtualNetwork::insert(SqlDB * db, string& error_str)
|
||||
|
||||
TO_UPPER(vlan_attr);
|
||||
|
||||
vlan = (vlan_attr == "YES");
|
||||
vlan = (vlan_attr == "YES") || (vlan_attr.empty() && !phydev.empty());
|
||||
|
||||
// ------------ BRIDGE --------------------
|
||||
|
||||
@ -302,7 +302,7 @@ int VirtualNetwork::insert(SqlDB * db, string& error_str)
|
||||
//--------------------------------------------------------------------------
|
||||
// Insert the Virtual Network
|
||||
//--------------------------------------------------------------------------
|
||||
rc = insert_replace(db, false);
|
||||
rc = insert_replace(db, false, error_str);
|
||||
|
||||
if ( rc != 0 )
|
||||
{
|
||||
@ -328,7 +328,7 @@ error_bridge:
|
||||
goto error_common;
|
||||
|
||||
error_update:
|
||||
ose << "Can not update Virtual Network.";
|
||||
ose << error_str;
|
||||
goto error_common;
|
||||
|
||||
error_ranged:
|
||||
@ -347,7 +347,7 @@ error_common:
|
||||
/* -------------------------------------------------------------------------- */
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
||||
int VirtualNetwork::insert_replace(SqlDB *db, bool replace)
|
||||
int VirtualNetwork::insert_replace(SqlDB *db, bool replace, string& error_str)
|
||||
{
|
||||
ostringstream oss;
|
||||
int rc;
|
||||
@ -373,6 +373,11 @@ int VirtualNetwork::insert_replace(SqlDB *db, bool replace)
|
||||
goto error_body;
|
||||
}
|
||||
|
||||
if ( validate_xml(sql_xml) != 0 )
|
||||
{
|
||||
goto error_xml;
|
||||
}
|
||||
|
||||
// Construct the SQL statement to Insert or Replace
|
||||
if(replace)
|
||||
{
|
||||
@ -398,10 +403,24 @@ int VirtualNetwork::insert_replace(SqlDB *db, bool replace)
|
||||
|
||||
return rc;
|
||||
|
||||
error_xml:
|
||||
db->free_str(sql_name);
|
||||
db->free_str(sql_xml);
|
||||
|
||||
error_str = "Error transforming the Virtual Network to XML.";
|
||||
|
||||
goto error_common;
|
||||
|
||||
error_body:
|
||||
db->free_str(sql_name);
|
||||
goto error_generic;
|
||||
|
||||
error_name:
|
||||
goto error_generic;
|
||||
|
||||
error_generic:
|
||||
error_str = "Error inserting Virtual Network in DB.";
|
||||
error_common:
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -58,7 +58,7 @@ class VirtualNetworkDriver
|
||||
|
||||
if action_is_local?(aname)
|
||||
execution = LocalCommand.run(cmd, log_method(id))
|
||||
else
|
||||
elsif @ssh_stream != nil
|
||||
if options[:stdin]
|
||||
cmdin = "cat << EOT | #{cmd}"
|
||||
stdin = "#{options[:stdin]}\nEOT\n"
|
||||
@ -68,8 +68,10 @@ class VirtualNetworkDriver
|
||||
end
|
||||
|
||||
execution = @ssh_stream.run(cmdin, stdin, cmd)
|
||||
else
|
||||
return RESULT[:failure], "Network action #{aname} needs a ssh stream."
|
||||
end
|
||||
|
||||
result, info = get_info_from_execution(execution)
|
||||
return get_info_from_execution(execution)
|
||||
end
|
||||
end
|
||||
|
@ -378,6 +378,24 @@ int ObjectXML::update_from_node(const xmlNodePtr node)
|
||||
/* -------------------------------------------------------------------------- */
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
||||
int ObjectXML::validate_xml(const string &xml_doc)
|
||||
{
|
||||
xmlDocPtr tmp_xml = 0;
|
||||
tmp_xml = xmlParseMemory (xml_doc.c_str(),xml_doc.length());
|
||||
|
||||
if (tmp_xml == 0)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
xmlFreeDoc(tmp_xml);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
||||
void ObjectXML::xml_parse(const string &xml_doc)
|
||||
{
|
||||
xml = xmlParseMemory (xml_doc.c_str(),xml_doc.length());
|
||||
|
Loading…
x
Reference in New Issue
Block a user