Sha256: 721136d6a19012c19e2820da56cc60d746300e2313f59a946b31a0fb1e7411d3

Contents?: true

Size: 1.69 KB

Versions: 1

Compression:

Stored size: 1.69 KB

Contents

module Rubineti
  class Cluster
    def initialize connection
      @connection = connection
    end

    ##
    # Returns a list of features supported by the RAPI server.

    def features
      warn "WARNING: Cluster#features not implemented."
      # get "/#{Ganeti::Version}/features"
    end

    ##
    # Returns a list of cluster information.

    def info
      @connection.get "/#{Ganeti::Version}/info"
    end

    ##
    # Redistribute configuration to all nodes.
    # Returns a job_id.

    def redistribute_config
      @connection.put "/#{Ganeti::Version}/redistribute-config"
    end

    ##
    # Adds a set of tags.
    # Returns a job_id.
    #
    # If the optional dry-run parameter (?dry-run=1) is provided,
    # the job will not be actually executed, only the pre-execution
    # checks will be done.

    def tags_create params = {}
      warn "WARNING: Cluster#tags_create not implemented."
      # put "/#{Ganeti::Version}/tags", params
    end

    ##
    # Delete tags.
    # Returns a job_id.
    #
    # If the optional dry-run parameter (?dry-run=1) is provided,
    # the job will not be actually executed, only the pre-execution
    # checks will be done.

    def tags_delete params = {}
      warn "WARNING: Cluster#tags_delete not implemented."
      # delete "/#{Ganeti::Version}/tags", params
    end

    ##
    # Returns the cluster tags.

    def tags_list
      warn "WARNING: Cluster#tags_list not implemented."
      # get "/#{Ganeti::Version}/tags"
    end

    ##
    # Returns the cluster API version.

    def version
      @connection.get "/version"
    end

    ##
    # Return a list of all OSes.

    def os_list
      @connection.get "/#{Ganeti::Version}/os"
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rubineti-1.4.0 lib/rubineti/cluster.rb