diff options
Diffstat (limited to 'app/models/backends/terraform_aws')
-rw-r--r-- | app/models/backends/terraform_aws/backend_methods.rb | 12 | ||||
-rw-r--r-- | app/models/backends/terraform_aws/mini_environment_methods.rb | 12 |
2 files changed, 16 insertions, 8 deletions
diff --git a/app/models/backends/terraform_aws/backend_methods.rb b/app/models/backends/terraform_aws/backend_methods.rb index 52875e6..7489325 100644 --- a/app/models/backends/terraform_aws/backend_methods.rb +++ b/app/models/backends/terraform_aws/backend_methods.rb @@ -84,10 +84,14 @@ module Backends::TerraformAws::BackendMethods end def within_backend_terraform_working_directory(&block) - TerraformWorkingDirectory.new( - terraform_state_id, - 'terraform/aws/backend' - ).within_working_directory(&block) + with_advisory_lock( + "aws_backend_terraform_working_directory/#{id}" + ) do + TerraformWorkingDirectory.new( + terraform_state_id, + 'terraform/aws/backend' + ).within_working_directory(&block) + end end def available_data_snapshots diff --git a/app/models/backends/terraform_aws/mini_environment_methods.rb b/app/models/backends/terraform_aws/mini_environment_methods.rb index 6049829..1885af7 100644 --- a/app/models/backends/terraform_aws/mini_environment_methods.rb +++ b/app/models/backends/terraform_aws/mini_environment_methods.rb @@ -89,10 +89,14 @@ module Backends::TerraformAws::MiniEnvironmentMethods end def within_terraform_working_directory(mini_environment, &block) - TerraformWorkingDirectory.new( - mini_environment_state_id(mini_environment), - 'terraform/aws/mini_environment' - ).within_working_directory(&block) + with_advisory_lock( + "aws_mini_environment_terraform_working_directory/#{mini_environment.id}" + ) do + TerraformWorkingDirectory.new( + mini_environment_state_id(mini_environment), + 'terraform/aws/mini_environment' + ).within_working_directory(&block) + end end def mini_environment_state_id(mini_environment) |