#789: account must use existing key

This commit is contained in:
amartynov 2015-10-28 16:28:48 +03:00
parent adb20343f6
commit 8d145c10b4

View File

@ -22,20 +22,7 @@ module Devops
def add_account provider def add_account provider
account = ::Provider::ProviderFactory.get(provider).create_account(parser.account) account = ::Provider::ProviderFactory.get(provider).create_account(parser.account)
certificate_content = account.certificate key = Devops::Db.connector.key account.ssh_key
cert_name = "#{account.account_name}.pem"
certificate_path = File.join(Devops::Api2.settings.keys_dir, cert_name)
if File.exists?(certificate_path)
raise ConflictException.new("File '#{cert_name}' already exists")
end
File.open(certificate_path, "w") do |f|
f << certificate_content
end
File.chmod(0600, certificate_path)
DevopsLogger.logger.info("File '#{certificate_path}' for provider account '#{account.account_name}' has been created")
key = Devops::Model::Key.new({"id" => account.ssh_key, "path" => certificate_path, "scope" => Devops::Model::Key::SYSTEM})
Devops::Db.connector.key_insert key
account.certificate = certificate_path
Devops::Db.connector.provider_accounts_insert(account) Devops::Db.connector.provider_accounts_insert(account)
account account
end end