- update to 1.3.4:
* BUG FIXES:
- Fix invalid refresh-only plan caused by data sources being deferred to apply (#32111)
- Optimize the handling of condition checks during apply to prevent performance regressions with large numbers of instances (#32123)
- Output preconditions should not be evaluated during destroy (#32051)
- Fix crash from console when outputs contain preconditions (#32051)
- Destroy with no state would still attempt to evaluate some values (#32051)
- Prevent unnecessary evaluation and planning of resources during the pre-destroy refresh (#32051)
- AzureRM Backend: support for generic OIDC authentication via the oidc_token and oidc_token_file_path properties (#31966)
- Input and Module Variables: Convert variable types before attempting to apply default values. (#32027)
- When installing remote module packages delivered in tar format, Terraform now limits the tar header block size to 1MiB to avoid unbounded memory usage for maliciously-crafted module packages. (#32135)
- Terraform will now reject excessively-complex regular expression patterns passed to the regex, regexall, and replace functions, to avoid unbounded memory usage for maliciously-crafted patterns. This change should not affect any reasonable patterns intended for practical use. (#32135)
OBS-URL: https://build.opensuse.org/request/show/1035776
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=70
- Update to 1.1.9:
* cli: Fix crash when using sensitive values in sets. (#30825)
* cli: Fix double-quoted map keys when rendering a diff. (#30855)
* core: Prevent errors when handling a data source with incompatible schema changes (#30830)
* cli: Fix missing identifying attributes (e.g. "id", "name") when displaying plan diffs with nested objects. (#30685)
* functions: Fix error when sum() function is called with a collection of string-encoded numbers, such as sum(["1", "2", "3"]). (#30684)
* When rendering a diff, Terraform now quotes the name of any object attribute whose string representation is not a valid identifier. (#30766)
* Terraform will no longer crash in the terraform apply phase if an error occurs during backend configuration. (#30780)
* terraform show -json: Improve performance for deeply-nested object values. The previous implementation was accidentally quadratic, which could result in very long execution time for generating JSON plans, and timeouts on Terraform Cloud and Terraform Enterprise. (#30561)
* cloud: Update go-slug for terraform.tfstate exclusion to prevent a user from getting an error
after migrating state to TFC.
OBS-URL: https://build.opensuse.org/request/show/974813
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=48
- Update to 1.1.3
BUG FIXES:
* terraform init: Will now remove from the dependency lock file entries for providers not used in the current configuration. Previously it would leave formerly-used providers behind in the lock file, leading to "missing or corrupted provider plugins" errors when other commands verified the consistency of the installed plugins against the locked plugins. (#30192)
* config: Fix panic when encountering an invalid provider block within a module (#30095)
* config: Fix cycle error when the index of a module containing move statements is changed (#30232)
* config: Fix inconsistent ordering with nested move operations (#30253)
* config: Fix moved block refactoring to include nested modules (#30233)
* functions: Redact sensitive values from function call error messages (#30067)
* terraform show: Disable plan state lineage checks, ensuring that we can show plan files which were generated against non-default state files (#30205)
OBS-URL: https://build.opensuse.org/request/show/945121
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=43
- Update to 1.1.2
If you are using Terraform CLI v1.1.0 or v1.1.1, please upgrade to this new version as soon as possible.
Terraform CLI v1.1.0 and v1.1.1 both have a bug where a failure to construct the apply-time graph can cause Terraform to incorrectly report success and save an empty state, effectively "forgetting" all existing infrastructure. Although configurations that already worked on previous releases should not encounter this problem, it's possible that incorrect future configuration changes would trigger this behavior during the apply step.
BUG FIXES:
* config: Fix panic when using -target in combination with moved blocks within modules (#30189)
* core: Fix condition which could lead to an empty state being written when there is a failure building the apply graph (#30199)
- From version 1.1.1
BUG FIXES:
* core: Fix crash with orphaned module instance due to changed count or for_each value (#30151)
* core: Fix regression where some expressions failed during validation when referencing resources expanded with count or for_each (#30171)
OBS-URL: https://build.opensuse.org/request/show/943112
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=42
- Update to 1.1.0
Terraform v1.1.0 is a new minor release, containing some new features and some bug fixes whose scope was too large for inclusion in a patch release.
NEW FEATURES:
* `moved` blocks for refactoring within modules: Module authors can now record in module source code whenever they've changed the address of a resource or resource instance, and then during planning Terraform will automatically migrate existing objects in the state to new addresses.
This therefore avoids the need for users of a shared module to manually run `terraform state mv` after upgrading to a version of the module, as long as the change is expressible as static configuration. However, `terraform state mv` will remain available for use in more complex migration situations that are not well-suited to declarative configuration.
* A new `cloud` block in the `terraform` settings block introduces a native Terraform Cloud integration for the [CLI-driven run workflow](https://www.terraform.io/docs/cloud/run/cli.html).
The Cloud integration includes several enhancements, including per-run variable support using the `-var` flag, the ability to map Terraform Cloud workspaces to the current configuration via [Workspace Tags](https://www.terraform.io/docs/cloud/api/workspaces.html#get-tags), and an improved user experience for Terraform Cloud and Enterprise users with actionable error messages and prompts.
* `terraform plan` and `terraform apply` both now include additional annotations for resource instances planned for deletion to explain why Terraform has proposed that action.
For example, if you change the `count` argument for a resource to a lower number then Terraform will now mention that as part of proposing to destroy any existing objects that exceed the new count.
UPGRADE NOTES:
This release is covered by the [Terraform v1.0 Compatibility Promises](https://www.terraform.io/docs/language/v1-compatibility-promises.html), but does include some changes permitted within those promises as described below.
* Terraform on macOS now requires macOS 10.13 High Sierra or later; Older macOS versions are no longer supported.
* The `terraform graph` command no longer supports `-type=validate` and `-type=eval` options. The validate graph is always the same as the plan graph anyway, and the "eval" graph was just an implementation detail of the `terraform console` command. The default behavior of creating a plan graph should be a reasonable replacement for both of the removed graph modes. (Please note that `terraform graph` is not covered by the Terraform v1.0 compatibility promises, because its behavior inherently exposes Terraform Core implementation details, so we recommend it only for interactive debugging tasks and not for use in automation.)
* `terraform apply` with a previously-saved plan file will now verify that the provider plugin packages used to create the plan fully match the ones used during apply, using the same checksum scheme that Terraform normally uses for the dependency lock file. Previously Terraform was checking consistency of plugins from a plan file using a legacy mechanism which covered only the main plugin executable, not any other files that might be distributed alongside in the plugin package.
This additional check should not affect typical plugins that conform to the expectation that a plugin package's contents are immutable once released, but may affect a hypothetical in-house plugin that intentionally modifies extra files in its package directory somehow between plan and apply. If you have such a plugin, you'll need to change its approach to store those files in some other location separate from the package directory. This is a minor compatibility break motivated by increasing the assurance that plugins have not been inadvertently or maliciously modified between plan and apply.
* `terraform state mv` will now error when legacy `-backup` or `-backup-out` options are used without the `-state` option on non-local backends. These options operate on a local state file only. Previously, these options were accepted but ignored silently when used with non-local backends.
* In the AzureRM backend, the new opt-in option `use_microsoft_graph` switches to using MSAL authentication tokens and Microsoft Graph rather than using ADAL tokens and Azure Active Directory Graph, which is now [deprecated by Microsoft](https://docs.microsoft.com/en-us/graph/migrate-azure-ad-graph-faq). The new mode will become the default in Terraform v1.2, so please plan to migrate to using this setting and test with your own Azure AD tenant prior to the Terraform v1.2 release.
ENHANCEMENTS:
* config: Terraform now checks the syntax of and normalizes module source addresses (the `source` argument in `module` blocks) during configuration decoding rather than only at module installation time. This is largely just an internal refactoring, but a visible benefit of this change is that the `terraform init` messages about module downloading will now show the canonical module package address Terraform is downloading from, after interpreting the special shorthands for common cases like GitHub URLs. ([#28854](https://github.com/hashicorp/terraform/issues/28854))
* config: Variables can now be declared as "nullable", which defines whether a variable can be null within a module. Setting `nullable = false` ensures that a variable value will never be `null`, and may instead take on the variable's default value if the caller sets it explicitly to `null`. ([#29832](https://github.com/hashicorp/terraform/issues/29832))
* `terraform plan` and `terraform apply`: When Terraform plans to destroy a resource instance due to it no longer being declared in the configuration, the proposed plan output will now include a note hinting at what situation prompted that proposal, so you can more easily see what configuration change might avoid the object being destroyed. ([#29637](https://github.com/hashicorp/terraform/pull/29637))
* `terraform plan` and `terraform apply`: Terraform will now report explicitly in the UI if it automatically moves a resource instance to a new address as a result of adding or removing the `count` argument from an existing resource. For example, if you previously had `resource "aws_subnet" "example"` _without_ `count`, you might have `aws_subnet.example` already bound to a remote object in your state. If you add `count = 1` to that resource then Terraform would previously silently rebind the object to `aws_subnet.example[0]` as part of planning, whereas now Terraform will mention that it did so explicitly in the plan description. ([#29605](https://github.com/hashicorp/terraform/issues/29605))
* `terraform workspace delete`: will now allow deleting a workspace whose state contains only data resource instances and output values, without running `terraform destroy` first. Previously the presence of data resources would require using `-force` to override the safety check guarding against accidentally forgetting about remote objects, but a data resource is not responsible for the management of its associated remote object(s) and so there's no reason to require explicit deletion. ([#29754](https://github.com/hashicorp/terraform/issues/29754))
* `terraform validate`: Terraform now uses precise type information for resources during config validation, allowing more problems to be caught that that step rather than only during the planning step. ([#29862](https://github.com/hashicorp/terraform/issues/29862))
* provisioner/remote-exec and provisioner/file: When using SSH agent authentication mode on Windows, Terraform can now detect and use [the Windows 10 built-in OpenSSH Client](https://devblogs.microsoft.com/powershell/using-the-openssh-beta-in-windows-10-fall-creators-update-and-windows-server-1709/)'s SSH Agent, when available, in addition to the existing support for the third-party solution [Pageant](https://documentation.help/PuTTY/pageant.html) that was already supported. ([#29747](https://github.com/hashicorp/terraform/issues/29747))
* cli: `terraform state mv` will now return an error for `-backup` or `-backup-out` options used without the `-state` option, unless the working directory is initialized to use the local backend. Previously Terraform would silently ignore those options, since they are applicable only to the local backend. ([#27908](https://github.com/hashicorp/terraform/issues/27908))
* `terraform console`: now has a new `type()` function, available only in the interactive console, for inspecting the exact type of a particular value as an aid to debugging. ([#28501](https://github.com/hashicorp/terraform/issues/28501))
BUG FIXES:
* config: `ignore_changes = all` now works in override files. ([#29849](https://github.com/hashicorp/terraform/issues/29849))
* config: Upgrading an unknown single value to a list using a splat expression now correctly returns an unknown value and type. Previously it would sometimes "overpromise" a particular return type, leading to an inconsistency error during the apply step. ([#30062](https://github.com/hashicorp/terraform/issues/30062))
* config: Terraform is now more precise in its detection of data resources that must be deferred to the apply step due to their `depends_on` arguments referring to not-yet-converged managed resources. ([#29682](https://github.com/hashicorp/terraform/issues/29682))
* config: `ignore_changes` can no longer cause a null map to be converted to an empty map, which would otherwise potentially cause surprising side-effects in provider logic. ([#29928](https://github.com/hashicorp/terraform/issues/29928))
* core: Provider configuration obtained from interactive prompts will now be merged properly with settings given in the configuration. Previously this merging was incorrect in some cases. ([#29000](https://github.com/hashicorp/terraform/issues/29000))
* `terraform plan`: Improved rendering of changes inside attributes that accept lists, sets, or maps of nested object types. ([#29827](https://github.com/hashicorp/terraform/issues/29827), [#29983](https://github.com/hashicorp/terraform/issues/29983), [#29986](https://github.com/terraform/issues/29986))
* `terraform apply`: Will no longer try to apply a stale plan that was generated against an originally-empty state. Previously this was an unintended exception to the rule that a plan can only be applied to the state snapshot it was generated against. ([#29755](https://github.com/hashicorp/terraform/issues/29755))
* `terraform show -json`: Attributes that are declared as using the legacy [Attributes as Blocks](https://www.terraform.io/docs/language/attr-as-blocks.html) behavior are now represented more faithfully in the JSON plan output. ([#29522](https://github.com/hashicorp/terraform/issues/29522))
* `terraform init`: Will now update the backend configuration hash value at a more approprimate time, to ensure properly restarting a backend migration process that failed on the first attempt. ([#29860](https://github.com/hashicorp/terraform/issues/29860))
* backend/oss: Flatten `assume_role` block arguments, so that they are more compatible with the `terraform_remote_state` data source. ([#29307](https://github.com/hashicorp/terraform/issues/29307))
- Update to 1.0.11
ENHANCEMENTS:
* backend/oss: Added support for sts_endpoint (#29841)
BUG FIXES:
* config: Fixed a bug in which ignore_changes = all would not work in override files (#29849)
* config: Numbers are now compared for equality based on their protocol representation, eliminating unexpected changes due to small precision errors (#29864)
- from version 1.0.10
BUG FIXES:
* backend/oss: Fix panic when there's an error looking up OSS endpoints (#29784)
* backend/remote: Fix version check when migrating state (#29793)
* cli: Restore -lock and -lock-timeout flags for the init command, which were removed in 0.15.0 (#29773)
* cli: Fix bug where terraform init -input=false would hang waiting for user input to choose a workspace (#29805)
OBS-URL: https://build.opensuse.org/request/show/937771
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=41
- Update to 1.0.8
BUG FIXES:
* cli: Check `required_version` as early as possibly during `init` so that version incompatibility can be reported before errors about new syntax (#29665)
* core: Don't plan to remove orphaned resource instances in refresh-only plans (#29640)
- from version 1.0.7
BUG FIXES:
* core: Remove check for computed attributes which is no longer valid with optional structural attributes (#29563)
* core: Prevent object types with optional attributes from being instantiated as concrete values, which can lead to failures in type comparison (#29559)
* core: Empty containers in the configuration were not planned correctly when used with optional structural attributes (#29580)
- from version 1.0.6
ENHANCEMENTS:
* backend/s3: Improve SSO handling and add new endpoints in the AWS SDK (#29017)
BUG FIXES:
* cli: Suppress confirmation prompt when initializing with the `-force-copy` flag and migrating state between multiple workspaces. (#29438)
* cli: Update tencentcount dependency versions to fix errors when building from source (#29445)
* core: Fix panic while handling computed attributes within nested objects, and improve plan validation for unknown values (#29482)
- from version 1.0.5
BUG FIXES:
* json-output: Add an output change summary message as part of the `terraform plan -json` structured logs, bringing this format into parity with the human-readable UI. (#29312)
* core: Handle null nested single attribute values (#29411)
* cli: Fix crash when planning a diff between null and empty sets in nested attributes (#29398)
* cli: Fix crash when planning a new resource containing a set of nested object attributes (#29398)
* cli: Fix crash when displaying a resource diff where a possibly identifying attribute is sensitive (#29397)
* cli: Fix crash when a diff with unknown nested map attributes (#29410)
* config: Fix handling of dynamically types arguments in `formatlist`, ensuring the correct resulting type. (#29408)
* config: Floating point operations like `floor` and `ceil` can no longer mutate their arguments. (#29408)
- from version 1.0.4
BUG FIXES:
* backend/consul: Fix a bug where the state value may be too large for consul to accept (#28838)
* cli: Fixed a crashing bug with some edge-cases when reporting syntax errors that happen to be reported at the position of a newline. (#29048)
- from version 1.0.3
ENHANCEMENTS
* `terraform plan`: The JSON logs (`-json` option) will now include `resource_drift`, showing changes detected outside of Terraform during the refresh step. (#29072)
* core: The automatic provider installer will now accept providers that are recorded in their registry as using provider protocol version 6. (#29153)
* backend/etcdv3: New argument `max_request_bytes` allows larger requests and for the client, to match the server request limit. (#28078)
BUG FIXES:
* `terraform plan`: Will no longer panic when trying to render null maps. (#29207)
* backend/pg: Prevent the creation of multiple workspaces with the same name. (#29157)
* backend/oss: STS auth is now supported. (#29167)
* config: Dynamic blocks with unknown for_each values were not being validated. Ensure block attributes are valid even when the block is unknown (#29208)
* config: Unknown values in string templates could lose sensitivity, causing the planned change to be inaccurate (#29208)
OBS-URL: https://build.opensuse.org/request/show/925961
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=39
- Update to 1.0.2
BUG FIXES:
* `terraform show`: Fix crash when rendering JSON plan with sensitive values in state (#29049)
* config: The `floor` and `ceil` functions no longer lower the precision of arguments to what
would fit inside a 64-bit float, instead preserving precision in a similar way as most other
arithmetic functions. (#29110)
* config: The `flatten` function was incorrectly treating null values of an unknown type as if
they were unknown values. Now it will treat them the same as any other non-list/non-tuple value,
flattening them down into the result as-is. (#29110)
- from version 1.0.1
ENHANCEMENTS:
* `terraform show`: The JSON plan output now indicates which state values are sensitive. (#28889)
* cli: The macOS builds will now resolve hostnames using the system's DNS resolver, rather than the
Go library's (incomplete) emulation of it. In particular, this will allow for the more complex
resolver configurations often created by VPN clients on macOS, such as when a particular domain
must be resolved using different nameservers while VPN connection is active.
BUG FIXES:
* `terraform show`: Fix crash with deposed instances in json plan output. (#28922)
* `terraform show`: Fix an issue where the JSON configuration representation was missing
fully-unwrapped references. (#28884)
* `terraform show`: Fix JSON plan resource drift to remove unchanged resources. (#28975)
* core: Fix crash when provider modifies and unknown block during plan. (#28941)
* core: Diagnostic context was missing for some errors when validating blocks. (#28979)
* core: Fix crash when calling `setproduct` with unknown values. (#28984)
* backend/remote: Fix faulty Terraform Cloud version check when migrating state to the remote backend
with multiple local workspaces. (#28864)
- from version 1.0.0
Terraform v1.0 is an unusual release in that its primary focus is on stability, and it represents the
culmination of several years of work in previous major releases to make sure that the Terraform language
and internal architecture will be a suitable foundation for forthcoming additions that will remain
OBS-URL: https://build.opensuse.org/request/show/904719
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=38
- Update to 0.14.10 :
ENHANCEMENTS:
* cli: Emit an "already installed" event when a provider is found already
installed (#27722)
* provisioner/remote-exec: Can now run in a mode that expects the remote
system to be running Windows and excuting commands using the Windows
command interpreter, rather than a Unix-style shell. Specify the
target_platform as "windows" in the connection block. (#26865)
ENHANCEMENTS:
* backend/s3: Add support for AWS Single-Sign On (SSO) cached credentials
(#27620)
* config: Terraform now does text processing using the rules and tables
defined for Unicode 13. Previous versions were using Unicode 12 rules
(#28034)
BUG FIXES:
* cli: Rerunning init will reuse installed providers rather than fetching
the provider again (#27582)
* config: Fix panic when applying a config using sensitive values in some
block sets (#27635)
* core: Fix "Invalid planned change" error when planning tainted resource
which no longer exists (#27563)
* core: Fix panic when refreshing data source which contains sensitive
values (#27567)
* core: Fix init with broken link in plugin_cache_dir (#27447)
* core: Prevent evaluation of removed data source instances during plan
(#27621)
* core: Don't plan changes for outputs that remain null (#27512)
* cli: Fix show -json not outputting the full module tree when some child
modules have no resources (#27352)
* cli: Fix excessively slow rendering of very large multi-line string
OBS-URL: https://build.opensuse.org/request/show/884359
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=36
- Update to 0.14.5 :
NEW FEATURES:
* terraform now supports marking input variables as sensitive, and
will propagate that sensitivity through expressions that derive
from sensitive input variables.
* terraform init will now generate a lock file in the configuration directory
which you can check in to your version control so that Terraform can make
the same version selections in future. (#26524)
* if you wish to retain the previous behavior of always taking
the newest version allowed by the version constraints on each install,
you can run terraform init -upgrade to see that behavior.
* terraform will now support reading and writing all compatible state files,
even from future versions of Terraform. This means that users of
Terraform 0.14.0 will be able to share state files with future Terraform
versions until a new state file format version is needed.
ENHANCEMENTS:
* config: Added sensitive argument for variable blocks, which supresses
output where that variable is used (#26183)
* config: Added alltrue and anytrue functions, which serve as a sort of
dynamic version of the && and || or operators, respectively.
These are intended to allow evaluating boolean conditions, such as in variable
validation blocks, across all of the items in a collection using for expressions.
* config: New functions textencodebase64 and textdecodebase64 for encoding text
in various character encodings other than UTF-8. (#25470)
* terraform plan and terraform apply: Added an experimental concise diff renderer.
By default, Terraform plans now hide most unchanged fields, only displaying
the most relevant changes and some identifying context. This experiment can be disabled
by setting a TF_X_CONCISE_DIFF environment variable to 0.
* config: ignore_changes can now apply to map keys that are not
listed in the configuration
OBS-URL: https://build.opensuse.org/request/show/866746
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=34
- Update to 0.13.4 (bsc#1177421, jsc#ECO-2766, jsc#PM-2215)
UPGRADE NOTES:
* The built-in vendor (third-party) provisioners, which include `habitat`, `puppet`,
`chef`, and `salt-masterless` are now deprecated and will be removed in a future
version of Terraform.
* Deprecated interpolation-only expressions are detected in more contexts in addition
to resources and provider configurations. Module calls, data sources, outputs, and
locals are now also covered. Terraform also detects interpolation-only expressions
in complex values such as lists and objects. An expression like `"${foo}"` should
be rewritten as just `foo`. (#27272) (#26334)
BUG FIXES:
* command: Include schemas from required but unused providers in the output of `terraform
providers schema`. This allows development tools such as the Terraform language server
to offer autocompletion for the first resource for a given provider. (#26318)
* core: create_before_destroy status is now updated in the state during refresh (#26343)
* core: data sources using `depends_on`, either directly or through their modules, are
no longer are forced to wait until apply by other planned data source reads (#26375)
- from 0.13.3
BUG FIXES:
* build: fix crash with terraform binary on openBSD (#26250)
* core: prevent create_before_destroy cycles by not connecting module close nodes to
resource instance destroy nodes (#26186)
* core: fix error where plan action changes from CreateThenDelete to DeleteThenCreate (#26192)
* core: fix Cycle when create_before_destroy status wasn't checked from state (#26263)
* core: fix "inconsistent final plan" error when changing the number of referenced
resources to 0 (#26264)
* states/remote: fix `state push -force` to work for all backends (#26190)
- from 0.13.2
NEW FEATURES:
* **Network-based Mirrors for Provider Installation**: As an addition to the existing capability
OBS-URL: https://build.opensuse.org/request/show/840020
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=32
This section contains details about various changes in the v0.13 major
release. If you are upgrading from Terraform v0.12, we recommend first
referring to the v0.13 upgrade guide for information on some common concerns
during upgrade and guidance on ways to address them. (The final upgrade guide
and the documentation for the new features will be published only when
v0.13.0 final is released; until then, some links in this section will be
non-functional.)
NEW FEATURES:
count and for_each for modules: Similar to the arguments of the same name in
resource and data blocks, these create multiple instances of a module from a
single module block. (#24461)
depends_on for modules: Modules can now use the depends_on argument to ensure
that all module resource changes will be applied after any changes to the
depends_on targets have been applied. (#25005)
Automatic installation of third-party providers: Terraform now supports a
decentralized namespace for providers, allowing for automatic installation of
community providers from third-party namespaces in the public registry and
from private registries. (More details will be added about this prior to
release.)
Custom validation rules for input variables: A new validation block type
inside variable blocks allows module authors to define validation rules at
the public interface into a module, so that errors in the calling
configuration can be reported in the caller's context rather than inside the
implementation details of the module. (#25054)
New Kubernetes remote state storage backend: This backend stores state
snapshots as Kubernetes secrets. (#19525)
BREAKING CHANGES:
As part of introducing a new heirarchical namespace for providers, Terraform
now requires an explicit source specification for any provider that is not in
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=29
ENHANCEMENTS:
* backend/remote: Can now accept -target options when creating a plan using
remote operations, if supported by the target server. (Server-side support
for this in Terraform Cloud and Terraform Enterprise will follow in
forthcoming releases of each.) (#24834)
* cli: A special new lifecycle mode for provider plugins where they are
assumed to be controlled by an external process outside of Terraform. This
is for automated provider plugin testing only, and is not an end-user
feature. (#24674)
- Update in SLE-15 (bsc#1158440, CVE-2019-19316)
- Include in SLE-15 (bsc#1148092, jsc#ECO-134)
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=26
- Update to 0.12.17
SECURITY NOTES:
* If you are using the Azure remote state backend and you are using a SAS Token for authentication, please refer to [the Azure remote state backend security advisory](https://github.com/hashicorp/terraform/security/advisories/GHSA-4rvg-555h-r626).
Prior versions of the backend may have transmitted your state to the storage service using cleartext HTTP unless you specifically requested HTTPS when generating your SAS Token. This does not affect any other backends, and does not affect the Azure backend when using other authentication mechanisms.
NEW FEATURES:
* lang/funcs: Add `trim*` functions
ENHANCEMENTS:
* cli: Terraform will now consolidate many warnings with the same summary text into fewer warning items, in order to avoid excessive amounts of warnings making it hard to read other output from Terraform commands. ([#23425](https://github.com/hashicorp/terraform/issues/23425))
* core: The upgrade logic for moving from the Terraform 0.11 to the Terraform 0.12 state snapshot format (internally, format version 3 to version 4) will now tolerate and ignore dependencies with invalid addresses, which tend to be left behind when following the `terraform 0.11checklist` directive to rename resources whose names start with digits prior to upgrading to Terraform 0.12. This should allow upgrading the state for a configuration that in the past had digit-prefixed resource names, once those names have been fixed in the configuration and state using the instructions given by `terraform 0.11checklist` in Terraform 0.11.14. ([#23443](https://github.com/hashicorp/terraform/issues/23443))
BUG FIXES:
* command/jsonplan, command/jsonstate: fix panic with null values ([#23492](https://github.com/hashicorp/terraform/issues/23492))
* backend/azure: Use HTTPS to talk to the storage API, even if using a SAS token that does not require it. ([#23496](https://github.com/hashicorp/terraform/issues/23496))
OBS-URL: https://build.opensuse.org/request/show/754623
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:terraform/terraform?expand=0&rev=20