diff --git a/devops-service/spec/workers/stack_servers_persister_spec.rb b/devops-service/spec/workers/stack_servers_persister_spec.rb index 93a7cb0..e7e9a76 100644 --- a/devops-service/spec/workers/stack_servers_persister_spec.rb +++ b/devops-service/spec/workers/stack_servers_persister_spec.rb @@ -3,7 +3,7 @@ require 'workers/stack_bootstrap/stack_servers_persister' RSpec.describe StackServersPersister, stubbed_connector: true do let(:out) { double(:out, puts: nil, flush: nil) } let(:run_list) { ['role[asd]'] } - let(:stack) { build(:stack, deploy_env: 'foo', run_list: run_list) } + let(:stack) { build(:stack_ec2, deploy_env: 'foo', run_list: run_list) } let(:project) { build(:project, id: 'name') } let(:persister) { described_class.new(stack, out) } let(:provider) { instance_double(Provider::Ec2, name: 'ec2') } @@ -113,6 +113,15 @@ RSpec.describe StackServersPersister, stubbed_connector: true do persister.persist end + it "sets provider and provider account from stack" do + stack.provider_account = 'foo' + expect(stubbed_connector).to receive(:server_insert) do |server| + expect(server.provider).to eq 'ec2' + expect(server.provider_account).to eq 'foo' + end + persister.persist + end + describe 'incremented variables' do it 'substitutes :increment-groupid: with incrementing numbers' do allow(provider).to receive(:stack_servers) {[ diff --git a/devops-service/workers/stack_bootstrap/stack_servers_persister.rb b/devops-service/workers/stack_bootstrap/stack_servers_persister.rb index cb022f3..c186e2a 100644 --- a/devops-service/workers/stack_bootstrap/stack_servers_persister.rb +++ b/devops-service/workers/stack_bootstrap/stack_servers_persister.rb @@ -50,7 +50,8 @@ class StackServersPersister 'deploy_env' => @deploy_env.identifier, 'key' => server_info['key_name'] || @provider.ssh_key, 'project' => @project.id, - 'provider' => @provider.name, + 'provider' => @stack.provider, + 'provider_account' => @stack.provider_account, 'remote_user' => mongo.image(@deploy_env.image).remote_user, 'private_ip' => server_info['private_ip'], 'public_ip' => server_info['public_ip'],