Class: Crowbar::Client::Request::Upgrade::Backup

Inherits:
Base
  • Object
show all
Defined in:
lib/crowbar/client/request/upgrade/backup.rb

Overview

Implementation for the upgrade backup request

Instance Attribute Summary

Attributes inherited from Base

#attrs, #request

Instance Method Summary collapse

Methods inherited from Base

#initialize, #params, #process

Constructor Details

This class inherits a constructor from Crowbar::Client::Request::Base

Instance Method Details

#contentHash

Override the request content

Returns:

  • (Hash)

    the content for the request



43
44
45
46
47
48
49
# File 'lib/crowbar/client/request/upgrade/backup.rb', line 43

def content
  super.easy_merge!(
    backup: {
      name: "crowbar_upgrade_#{Time.now.to_i}"
    }
  ) if attrs.component == "crowbar"
end

#headersHash

Override the request headers

Returns:

  • (Hash)

    the headers for the request



32
33
34
35
36
# File 'lib/crowbar/client/request/upgrade/backup.rb', line 32

def headers
  super.easy_merge!(
    ::Crowbar::Client::Util::ApiVersion.new(2.0).headers
  )
end

#methodSymbol

HTTP method that gets used by the request

Returns:

  • (Symbol)

    the method for the request



56
57
58
# File 'lib/crowbar/client/request/upgrade/backup.rb', line 56

def method
  :post
end

#urlString

Path to the API endpoint for the request

Returns:

  • (String)

    path to the API endpoint



65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/crowbar/client/request/upgrade/backup.rb', line 65

def url
  case attrs.component
  when "crowbar"
    [
      "api",
      "upgrade",
      "adminbackup"
    ].join("/")
  when "openstack"
    [
      "api",
      "upgrade",
      "openstackbackup"
    ].join("/")
  end
end