fluke/devops-service/providers/static.rb

72 lines
1.4 KiB
Ruby
Raw Normal View History

require "providers/base_provider"
require "commands/server"
module Provider
class Static < BaseProvider
PROVIDER = "static"
def initialize config
self.certificate_path = config[:static_certificate]
self.ssh_key = "static"
@@mongo ||= MongoConnector.new(config[:mongo_db], config[:mongo_host], config[:mongo_port], config[:mongo_user], config[:mongo_password])
end
def configured?
true
end
def name
PROVIDER
end
def flavors
[]
end
2014-06-23 13:58:14 +04:00
def groups filter=nil
{}
end
def images filters
[]
end
def networks
[]
end
2014-06-23 19:29:12 +04:00
def networks_detail
self.networks
end
def servers
@@mongo.servers_find({:provider => PROVIDER}).map{|s| s.to_hash}
end
def create_default_chef_node_name s
"static-#{s.project}-#{s.deploy_env}-#{Time.now.to_i}"
end
2015-08-05 14:05:14 +03:00
def create_server s, image, flavor, subnets, groups, out
out << "Unsupported operation: ca not create server for provider 'static'"
false
end
def delete_server s
cert = @@mongo.key(s.key).path
res = ::ServerCommands.unbootstrap(s, cert)
m = "Static server with id '#{s.id}' and name '#{s.chef_node_name}' "
return m + (res.nil? ? "has been unbootstraped" : "can not be unbootstraped: #{res}")
end
def pause_server s
nil
end
def unpause_server s
nil
end
end
end