Class: Dependabot::Terraform::FileUpdater::ProviderCliConfigBuilder
- Inherits:
-
Object
- Object
- Dependabot::Terraform::FileUpdater::ProviderCliConfigBuilder
- Extended by:
- T::Sig
- Defined in:
- lib/dependabot/terraform/file_updater/provider_cli_config_builder.rb
Overview
Builds a Terraform CLI config that uses dev_overrides for non-target providers, preventing Terraform from resolving private/custom providers during lockfile updates.
Constant Summary collapse
- DEFAULT_REGISTRY =
"registry.terraform.io"- DEFAULT_NAMESPACE =
"hashicorp"
Instance Method Summary collapse
- #cleanup ⇒ Object
- #env ⇒ Object
-
#initialize(dependency:, terraform_files:) ⇒ ProviderCliConfigBuilder
constructor
A new instance of ProviderCliConfigBuilder.
Constructor Details
#initialize(dependency:, terraform_files:) ⇒ ProviderCliConfigBuilder
Returns a new instance of ProviderCliConfigBuilder.
30 31 32 33 34 35 |
# File 'lib/dependabot/terraform/file_updater/provider_cli_config_builder.rb', line 30 def initialize(dependency:, terraform_files:) @dependency = dependency @terraform_files = terraform_files @terraform_cli_config_path = T.let(nil, T.nilable(String)) @dev_override_dir = T.let(nil, T.nilable(String)) end |
Instance Method Details
#cleanup ⇒ Object
47 48 49 50 51 52 53 54 55 56 |
# File 'lib/dependabot/terraform/file_updater/provider_cli_config_builder.rb', line 47 def cleanup if @terraform_cli_config_path FileUtils.rm_f(@terraform_cli_config_path) @terraform_cli_config_path = nil end return unless @dev_override_dir FileUtils.rm_rf(@dev_override_dir) @dev_override_dir = nil end |
#env ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/dependabot/terraform/file_updater/provider_cli_config_builder.rb', line 38 def env sources = non_target_provider_sources return {} if sources.empty? config_path = generate_provider_dev_overrides_config(sources) { "TF_CLI_CONFIG_FILE" => config_path } end |