This project is mirrored from https://:*****@github.com/hashicorp/terraform.git.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
- 15 May, 2020 2 commits
-
-
Martin Atkins authored
Previously we did not allow -target to be used with the remote backend because there was no way to send the targets to Terraform Cloud/Enterprise via the API. There is now an attribute in the request for creating a plan that allows us to send target addresses, so we'll remove that restriction and copy the given target addresses into the API request.
-
Martin Atkins authored
This includes a new TargetAddrs field on both Run and RunCreateOptions which we'll use to send resource addresses that were specified using -target on the CLI command line when using the remote backend. There were some unrelated upstream breaking changes compared to the last version we had vendored, so this commit also includes some changes to the backend/remote package to work with this new API, which now requires the remote backend to be aware of the remote system's opaque workspace id.
-
- 11 May, 2020 3 commits
-
-
Alisdair McDiarmid authored
command: Add prompt & confirmation to 0.13upgrade
-
Alisdair McDiarmid authored
-
Alisdair McDiarmid authored
internal: Fix LookupLegacyProvider
-
- 08 May, 2020 6 commits
-
-
Alisdair McDiarmid authored
When looking up the namespace for a legacy provider source, we need to use the /v1/providers/-/{name}/versions endpoint. For non-HashiCorp providers, the /v1/providers/-/{name} endpoint returns a 404. This commit updates the LegacyProviderDefaultNamespace method and the mock registry servers accordingly.
-
Pam Selle authored
Validate providers in expanding modules. Expanding modules cannot have provider configurations with non-empty configs, which includes having a version configured. If an empty or alias-only block is passed, the provider must be passed through the providers argument on the module call
-
Chris Griggs authored
[Website] Adding community providers
-
Alisdair McDiarmid authored
command: 0.13upgrade command checks and updates required_version
-
Alisdair McDiarmid authored
If a configuration had multiple blocks in the versions.tf file, it would be added to the `rewritePaths` list multiple times. We would then remove it from this slice, but only once, and so the output file would later be rewritten to remove the required providers block. This commit uses a set instead of a list to prevent this case, and adds a regression test.
-
Alisdair McDiarmid authored
-
- 07 May, 2020 10 commits
-
-
Robin Norwood authored
-
Alisdair McDiarmid authored
Instead of using providers.tf as the default output file for the upgrader, we now default to versions.tf. This means that if the configuration has no `required_providers` blocks at all, or has multiple, the provider version requirements will be stored in the versions.tf file. We now also update the versions.tf file to set a `required_version` attribute in the first `terraform` block, with value ">= 0.13". This is similar to the behaviour of the 0.12upgrade command, and signals that the configuration should not be used with older versions of Terraform.
-
Alisdair McDiarmid authored
If a configuration has a version constraint which prevents use with Terraform 0.13, the upgrade command should exit before making any changes.
-
Martin Atkins authored
-
Martin Atkins authored
-
Ben Drucker authored
-
Ben Drucker authored
Validation is supposed to be a local-only operation, but Configure implementations are allowed to make outgoing requests to remote APIs to validate settings.
-
Alisdair McDiarmid authored
command: Rework 0.13upgrade sub-command
-
Alisdair McDiarmid authored
This commit implements most of the intended functionality of the upgrade command for rewriting configurations. For a given module, it makes a list of all providers in use. Then it attempts to detect the source address for providers without an explicit source. Once this step is complete, the tool rewrites the relevant configuration files. This results in a single "required_providers" block for the module, with a source for each provider. Any providers for which the source cannot be detected (for example, unofficial providers) will need a source to be defined by the user. The tool writes an explanatory comment to the configuration to help with this.
-
Alisdair McDiarmid authored
-
- 06 May, 2020 5 commits
-
-
Pam Selle authored
-
Pam Selle authored
Add support for force pushing with the remote backend
-
Lee Trout authored
Both differing serials and lineage protections should be bypassed with the -force flag (in addition to resources). Compared to other backends we aren’t just shipping over the state bytes in a simple payload during the persistence phase of the push command and the force flag added to the Go TFE client needs to be specified at that time. To prevent changing every method signature of PersistState of the remote client I added an optional interface that provides a hook to flag the Client as operating in a force push context. Changing the method signature would be more explicit at the cost of not being used anywhere else currently or the optional interface pattern could be applied to the state itself so it could be upgraded to support PersistState(force bool) only when needed. Prior to this only the resources of the state were checked for changes not the lineage or the serial. To bring this in line with documented behavior noted above those attributes a...
-
Pam Selle authored
Add more validation to expanding modules
-
Pam Selle authored
-
- 05 May, 2020 5 commits
-
-
Chris Griggs authored
-
James Bardin authored
-
Martin Atkins authored
-
Mike Morris authored
Providers like Okta and AWS Cognito expect that the PKCE challenge uses base64 URL Encoding without any padding (base64.RawURLEncoding) Additionally, Okta strictly adheres to section 4.2 of RFC 7636 and requires that the unencoded key for the PKCE data is at least 43 characters in length.
-
Kristin Laemmert authored
Fixed a bug where we were returning earlyConfDiags instead of confDiags.
-
- 04 May, 2020 5 commits
-
-
Daniel Dreier authored
fix typo in Base64DecodeFunc log
-
Daniel Dreier authored
Fixed minor grammatical errors
-
Alex Pilon authored
remove cherry pick labeler, we won't be doing that anymore
-
Lee Trout authored
We only persist a new state if the actual state contents have changed. This test demonstrates that behavior by calling write and persist methods when either the lineage or serial have changed.
-
Kritonas authored
-
- 03 May, 2020 1 commit
-
-
James Bardin authored
Remove EachMode from state
-
- 01 May, 2020 1 commit
-
-
Kristin Laemmert authored
-
- 30 Apr, 2020 2 commits
-
-
Kristin Laemmert authored
There was a bug in the installer trying to pass a nil error.
-
James Bardin authored
The only situation where `state mv` needs to understand the each mode is when with resource addresses that may reference a single instance, or a group of for_each or count instances. In this case we can differentiate the two by checking the existence of the NoKey instance key.
-