diff --git a/devops-client/lib/devops-client/handler/deploy.rb b/devops-client/lib/devops-client/handler/deploy.rb index 6213bc2..f5c06ed 100644 --- a/devops-client/lib/devops-client/handler/deploy.rb +++ b/devops-client/lib/devops-client/handler/deploy.rb @@ -14,6 +14,8 @@ class Deploy < Handler if ARGV.size > 1 self.options = @options_parser.deploy_options deploy_handler @options_parser.args + else + @options_parser.invalid_command end end diff --git a/devops-service/db/mongo/models/project.rb b/devops-service/db/mongo/models/project.rb index d6cc327..9f0f568 100644 --- a/devops-service/db/mongo/models/project.rb +++ b/devops-service/db/mongo/models/project.rb @@ -39,7 +39,7 @@ module Devops def initialize p={} self.id = p["name"] - #raise InvalidRecord.new "No deploy envirenments for project #{self.id}" if p["deploy_envs"].nil? or p["deploy_envs"].empty? + #raise InvalidRecord.new "No deploy environments for project #{self.id}" if p["deploy_envs"].nil? or p["deploy_envs"].empty? self.type = p["type"] || Devops::GenericType.name self.description = p["description"] self.archived = p["archived"] || false @@ -73,34 +73,20 @@ module Devops def add_authorized_user user, env=nil return if user.nil? new_users = ( user.is_a?(Array) ? user : [ user ] ) - if env.nil? - self.deploy_envs.each do |e| - return unless e.users.is_a?(Array) - e.add_users new_users - Devops::Db.connector.set_project_deploy_env_field(self.id, e.identifier, "users", e.users) - end - else - e = self.deploy_env(env) - return unless e.users.is_a?(Array) + environments = env.nil? ? self.deploy_envs : [ self.deploy_env(env) ] + environments .each do |e| e.add_users new_users - Devops::Db.connector.set_project_deploy_env_field(self.id, e.identifier, "users", e.users) + Devops::Db.connector.set_project_deploy_env_field(self.id, e.identifier, {users: e.users}) end end def remove_authorized_user user, env=nil return if user.nil? users = ( user.is_a?(Array) ? user : [ user ] ) - if env.nil? - self.deploy_envs.each do |e| - return unless e.users.is_a?(Array) - e.users = e.users - users - Devops::Db.connector.set_project_deploy_env_field(self.id, e.identifier, "users", e.users) - end - else - e = self.deploy_env(env) - return unless e.users.is_a?(Array) + environments = env.nil? ? self.deploy_envs : [ self.deploy_env(env) ] + environments.each do |e| e.users = e.users - users - Devops::Db.connector.set_project_deploy_env_field(self.id, e.identifier, "users", e.users) + Devops::Db.connector.set_project_deploy_env_field(self.id, e.identifier, {users: e.users}) end end @@ -211,7 +197,7 @@ module Devops end def self.create_roles_response roles - if roles.is_a?(String) + if !roles || roles.is_a?(String) roles else info = "" diff --git a/devops-service/workers/stack_bootstrap_worker.rb b/devops-service/workers/stack_bootstrap_worker.rb index c7298b0..6ad25d7 100644 --- a/devops-service/workers/stack_bootstrap_worker.rb +++ b/devops-service/workers/stack_bootstrap_worker.rb @@ -184,6 +184,7 @@ class StackBootstrapWorker < Worker stack_servers_with_priority = {} stack_servers_info.each do |priority, info_array| stack_servers_with_priority[priority] = info_array.map do |extended_info| + @out.puts "Instance '#{extended_info["id"]}' has been launched with stack." server_attrs = { 'provider' => provider.name, 'project' => project.id,