mirror of
https://github.com/OpenNebula/one.git
synced 2025-03-22 18:50:08 +03:00
(cherry picked from commit 2661e199af7f37389152c4defa6a3b1396355221)
This commit is contained in:
parent
ab78822759
commit
5c4b9b29cc
@ -384,6 +384,9 @@ module OpenNebula
|
||||
return rc
|
||||
end
|
||||
|
||||
# add registration time, as the template is new
|
||||
body['registration_time'] = Integer(Time.now)
|
||||
|
||||
# update the template with the new body
|
||||
doc.update(body.to_json)
|
||||
|
||||
@ -391,6 +394,31 @@ module OpenNebula
|
||||
new_id
|
||||
end
|
||||
|
||||
# Clones a service template
|
||||
#
|
||||
# @param name [Stirng] New name
|
||||
#
|
||||
# @return [Integer] New template ID
|
||||
def clone(name)
|
||||
new_id = super
|
||||
|
||||
doc = OpenNebula::ServiceTemplate.new_with_id(new_id, @client)
|
||||
rc = doc.info
|
||||
|
||||
return rc if OpenNebula.is_error?(rc)
|
||||
|
||||
body = JSON.parse(doc["TEMPLATE/#{TEMPLATE_TAG}"])
|
||||
|
||||
# add registration time, as the template is new
|
||||
body['registration_time'] = Integer(Time.now)
|
||||
|
||||
# update the template with the new body
|
||||
DocumentJSON.instance_method(:update).bind(doc).call(body.to_json)
|
||||
|
||||
# return the new document ID
|
||||
new_id
|
||||
end
|
||||
|
||||
# Replaces the raw template contents
|
||||
#
|
||||
# @param template [String] New template contents, in the form KEY = VAL
|
||||
|
Loading…
x
Reference in New Issue
Block a user