class McServerTemplate
API 1.5
Public Class Methods
filters()
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 50 def self.filters [:description, :multi_cloud_image_href, :name, :revision] end
resource_plural_name()
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 42 def self.resource_plural_name "server_templates" end
resource_singular_name()
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 46 def self.resource_singular_name "server_template" end
Public Instance Methods
add_multi_cloud_image(mci_href)
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 67 def add_multi_cloud_image(mci_href) @mci_links = McServerTemplateMultiCloudImage.find_with_filter(:server_template_href => self.href) if @mci_links.detect { |mci_link| mci_link.multi_cloud_image == mci_href } connection.logger("WARNING: MCI #{mci_href} is already attached") else ret = McServerTemplateMultiCloudImage.create(:multi_cloud_image_href => mci_href, :server_template_href => self.href) get_mcis_and_settings ret end end
commit(message, commit_head_dependencies, freeze_repositories)
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 101 def commit(message, commit_head_dependencies, freeze_repositories) options = {:commit_message => "#{message}", :commit_head_dependencies => (commit_head_dependencies && true), :freeze_repositories => (freeze_repositories && true)} t = URI.parse(self.href) location = connection.post(t.path + "/commit", options) newrecord = McServerTemplate.new('links' => [ {'rel' => 'self', 'href' => location } ]) newrecord.reload newrecord end
detach_multi_cloud_image(mci_href)
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 79 def detach_multi_cloud_image(mci_href) @mci_links = McServerTemplateMultiCloudImage.find_with_filter(:server_template_href => self.href) if link = @mci_links.detect { |mci_link| mci_link.multi_cloud_image == mci_href } ret = link.destroy get_mcis_and_settings ret else connection.logger("WARNING: MCI #{mci_href} is not attached") end end
get_mcis_and_settings()
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 54 def get_mcis_and_settings @params["multi_cloud_images"] = McMultiCloudImage.find_all(self.rs_id) @params["multi_cloud_images"].each { |mci| mci.settings } # Eager load @mci_links = McServerTemplateMultiCloudImage.find_with_filter(:server_template_href => self.href) end
multi_cloud_images()
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 60 def multi_cloud_images unless @params["multi_cloud_images"] get_mcis_and_settings end @params["multi_cloud_images"] end
resource_plural_name()
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 34 def resource_plural_name "server_templates" end
resource_singular_name()
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 38 def resource_singular_name "server_template" end
set_default_multi_cloud_image(mci_href)
click to toggle source
# File lib/rest_connection/rightscale/mc_server_template.rb, line 90 def set_default_multi_cloud_image(mci_href) @mci_links = McServerTemplateMultiCloudImage.find_with_filter(:server_template_href => self.href) if link = @mci_links.detect { |mci_link| mci_link.multi_cloud_image == mci_href } ret = link.make_default get_mcis_and_settings ret else connection.logger("WARNING: MCI #{mci_href} is not attached") end end