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.
- 22 Jun, 2021 1 commit
-
-
Vlad Romanenko authored
-
- 21 Jun, 2021 3 commits
-
-
Alisdair McDiarmid authored
Upgrade cty to v1.8.4
-
Alisdair McDiarmid authored
-
Kristin Laemmert authored
This PR adds decoding for the upcoming "moved" blocks in configuration. This code is gated behind an experiment called EverythingIsAPlan, but the experiment is not registered as an active experiment, so it will never run (there is a test in place which will fail if the experiment is ever registered). This also adds a new function to the Targetable interface, AddrType, to simplifying comparing two addrs.Targetable. There is some validation missing still: this does not (yet) descend into resources to see if the actual resource types are the same (I've put this off in part because we will eventually need the provider schema to verify aliased resources, so I suspect this validation will have to happen later on).
-
- 18 Jun, 2021 5 commits
-
-
Radek Simko authored
* docs: Document naming conventions for templates & backend configs * Update website/docs/cli/config/config-file.html.md Co-authored-by:
Alisdair McDiarmid <alisdair@users.noreply.github.com> * Update website/docs/language/functions/templatefile.html.md Co-authored-by:
Alisdair McDiarmid <alisdair@users.noreply.github.com> Co-authored-by:
Alisdair McDiarmid <alisdair@users.noreply.github.com>
-
Alisdair McDiarmid authored
-
Alisdair McDiarmid authored
json-output: Omit unchanged resource_drift entries
-
James Bardin authored
blocktoattr fixup dropping MissingItemRange
-
James Bardin authored
When blocktoattr.fixupBody returned its content, the value for `MissingItemRange` was omitted, losing the diagnostic Subject.
-
- 17 Jun, 2021 3 commits
-
-
Alisdair McDiarmid authored
Previously, if any resources were found to have drifted, the JSON plan output would include a drift entry for every resource in state. This commit aligns the JSON plan output with the CLI UI, and only includes those resources where the old value does not equal the new value---i.e. drift has been detected. Also fixes a bug where the "address" field was missing from the drift output, and adds some test coverage.
-
Kristin Laemmert authored
-
Kristin Laemmert authored
* command: new command, terraform add, generates resource templates terraform add ADDRESS generates a resource configuration template with all required (and optionally optional) attributes set to null. This can optionally also pre-populate nonsesitive attributes with values from an existing resource of the same type in state (sensitive vals will be populated with null and a comment indicating sensitivity) * website: terraform add documentation
-
- 16 Jun, 2021 2 commits
-
-
hc-github-team-tf-core authored
-
hc-github-team-tf-core authored
-
- 15 Jun, 2021 1 commit
-
-
Bryan Eastes authored
* Quoting filesystem path in scp command argument * Adding proper shell quoting for scp commands * Running go fmt * Using a library for quoting shell commands * Don't export quoteShell function
-
- 14 Jun, 2021 5 commits
-
-
James Bardin authored
handle unexpected changes to unknown block
-
Kristin Laemmert authored
-
Kristin Laemmert authored
The "references" included in the expression representation now properly unwrap for each traversal step, to match what was documented.
-
Kristin Laemmert authored
* jsonplan and jsonstate: include sensitive_values in state representations A sensitive_values field has been added to the resource in state and planned values which is a map of all sensitive attributes with the values set to true. It wasn't entirely clear to me if the values in state would suffice, or if we also need to consult the schema - I believe that this is sufficient for state files written since v0.15, and if that's incorrect or insufficient, I'll add in the provider schema check as well. I also updated the documentation, and, since we've considered this before, bumped the FormatVersions for both jsonstate and jsonplan.
-
Kristin Laemmert authored
* website/docs: move type func docs to a useful location * docs don't exist if you don't put them in the index (again)
-
- 11 Jun, 2021 1 commit
-
-
James Bardin authored
An unknown block represents a dynamic configuration block with an unknown for_each value. We were not catching the case where a provider modified this value unexpectedly, which would crash with block of type NestingList blocks where the config value has no length for comparison.
-
- 10 Jun, 2021 3 commits
-
-
Martin Atkins authored
-
Martin Atkins authored
-
James Bardin authored
account for noop deposed instances in json plan
-
- 09 Jun, 2021 3 commits
-
-
James Bardin authored
When rendering a json plan, we need to account for deposed instances that have become a noop rather than a destroy.
-
J.D. Stone authored
Fixed a typo.
-
Nick Fagerlund authored
Historically, we've used TFC's default run messages as a sort of dumping ground for metadata about the run. We've recently decided to mostly stop doing that, in favor of: - Only specifying the run's source in the default message. - Letting TFC itself handle the default messages. Today, the remote backend explicitly sets a run message, overriding any default that TFC might set. This commit removes that explicit message so we can allow TFC to sort it out. This shouldn't have any bad effect on TFE out in the wild, because it's known how to set a default message for remote backend runs since late 2018.
-
- 08 Jun, 2021 7 commits
-
-
Martin Atkins authored
Seems like we lost a newline in some of the shuffling it took to get this into the live website, and so it's formatting oddly in the rendered website. This restores the intended formatting of this as the start of a bullet list, rather than as a continuation of the previous paragraph.
-
Martin Atkins authored
-
Martin Atkins authored
-
Alisdair McDiarmid authored
Merge pull request #28864 from hashicorp/alisdair/fix-remote-backend-multi-workspace-state-migration Fix remote backend multi workspace state migration
-
Judith Malnick authored
* clarify input variables opening sentence * adjust variables description * claraify providers text and add learn callout * add description to providers page * add desscription and clarify provider configuration * add deprecation note to versions in proivder configs * add hands on callout and clarify next steps in intro * link to language collection from language docs * give more context about configurtion language up front * clarify output top page * reorganize for each intro to present feature before notes * move description before link out and remove passive voice * fix typo * clarify purpose of plan * move explanation before learn link and fully spell boolean * add a syntax heading to separate intro from details * add learn callout to module source docs * clean up intro to provider requirements and add link * Apply suggestions from code review Co-authored-by:
Tu Nguyen <im2nguyen@users.noreply.github.com> * Apply suggestions from code review Co-authored-by:
Tu Nguyen <im2nguyen@users.noreply.github.com> Co-authored-by:
Tu Nguyen <im2nguyen@users.noreply.github.com>
-
Martin Atkins authored
-
Martin Atkins authored
-
- 03 Jun, 2021 6 commits
-
-
Kristin Laemmert authored
* tools: remove terraform-bundle. terraform-bundle is no longer supported in the main branch of terraform. Users can build terraform-bundle from terraform tagged v0.15 and older. * add a README pointing users to the v0.15 branch
-
Martin Atkins authored
-
Martin Atkins authored
Previously we had a separation between ModuleSourceRemote and ModulePackage as a way to represent within the type system that there's an important difference between a module source address and a package address, because module packages often contain multiple modules and so a ModuleSourceRemote combines a ModulePackage with a subdirectory to represent one specific module. This commit applies that same strategy to ModuleSourceRegistry, creating a new type ModuleRegistryPackage to represent the different sort of package that we use for registry modules. Again, the main goal here is to try to reflect the conceptual modelling more directly in the type system so that we can more easily verify that uses of these different address types are correct. To make use of that, I've also lightly reworked initwd's module installer to use addrs.ModuleRegistryPackage directly, instead of a string representation thereof. This was in response to some earlier commits where I found myself accidentally mixing up package addresses and source addresses in the installRegistryModule method; with this new organization those bugs would've been caught at compile time, rather than only at unit and integration testing time. While in the area anyway, I also took this opportunity to fix some historical confusing names of fields in initwd.ModuleInstaller, to be clearer that they are only for registry packages and not for all module source address types.
-
Martin Atkins authored
We have some tests in this package that install real modules from the real registry at registry.terraform.io. Those tests were written at an earlier time when the registry's behavior was to return the URL of a .tar.gz archive generated automatically by GitHub, which included an extra level of subdirectory that would then be reflected in the paths to the local copies of these modules. GitHub started rate limiting those tar archives in a way that Terraform's module installer couldn't authenticate to, and so the registry switched to returning direct git repository URLs instead, which don't have that extra subdirectory and so the local paths on disk now end up being a little different, because the actual module directories are at a different subdirectory of the package.
-
Martin Atkins authored
Now that we (in the previous commit) refactored how we deal with module sources to do the parsing at config loading time rather than at module installation time, we can expose a method to centralize the determination for whether a particular module call (and its resulting Config object) enters a new external package. We don't use this for anything yet, but in later commits we will use this for some cross-module features that are available only for modules belonging to the same package, because we assume that modules grouped together in a package can change together and thus it's okay to permit a little more coupling of internal details in that case, which would not be appropriate between modules that are versioned separately.
-
Martin Atkins authored
It's been a long while since we gave close attention to the codepaths for module source address parsing and external module package installation. Due to their age, these codepaths often diverged from our modern practices such as representing address types in the addrs package, and encapsulating package installation details only in a particular location. In particular, this refactor makes source address parsing a separate step from module installation, which therefore makes the result of that parsing available to other Terraform subsystems which work with the configuration representation objects. This also presented the opportunity to better encapsulate our use of go-getter into a new package "getmodules" (echoing "getproviders"), which is intended to be the only part of Terraform that directly interacts with go-getter. This is largely just a refactor of the existing functionality into a new code organization, but there is one notable change...
-