crossplane-contrib / crossplane-provider-newrelic

Apache License 2.0
0 stars 3 forks source link

build(deps): Bump github.com/crossplane/upjet from 1.3.0 to 1.4.0 #18

Closed dependabot[bot] closed 4 months ago

dependabot[bot] commented 4 months ago

Bumps github.com/crossplane/upjet from 1.3.0 to 1.4.0.

Release notes

Sourced from github.com/crossplane/upjet's releases.

v1.4.0

We are excited to announce the release of Upjet v1.4.0, which includes several enhancements and new features aimed at improving the flexibility, usability, and efficiency of the code generation pipeline and API management. Below are the key updates in this release.

Release Highlights

1. Generate singleton lists as embedded objects

  • Terraform configuration blocks with a MaxItems constraint of 1 are now generated as embedded objects in MR APIs instead of lists. This change simplifies updates and patches via SSA by eliminating the need for specific configuration for associative lists.
  • Introduced runtime conversion logic to convert embedded objects back to singleton lists for Terraform operations and vice versa for updates to spec.forProvider, status.atProvider, and connection details.
  • Added a schema traverser to decouple Terraform schema traversal from various actions, allowing providers to generate singleton lists as embedded objects using the ujconfig.SingletonListEmbedder configuration.
  • Supported the generation of new CRD API versions with embedded object schemas while maintaining existing versions.
  • For further details: crossplane/upjet#387

2. Support for specifying the controller reconciliation/watch version

  • Added config.Resource.ControllerReconcileVersion to specify the CRD API version that the associated controller will watch and reconcile, preventing unnecessary webhook conversions for multi-versioned CRDs.
  • For further details: crossplane/upjet#400

3. TerraformConversions interface for handling conversions between Crossplane and Terraform

  • Introduced config.Resource.TerraformConversions for handling data transformations between Crossplane and Terraform layers. The initial implementation, config.singletonListConversion, manages conversions between singleton lists and embedded objects.

4. Dynamic code generation pipeline for multi-version APIs

  • Addressed name conflicts in the code generation pipeline by making it aware of previous CRD versions. This allows dynamic resolution of conflicts when generating new API versions, such as v1beta2, while older versions like v1beta1 exist.
  • Deprecated the config.Resource.OverrideFieldNames API in favor of the new config.Resource.PreviousVersions mechanism, ensuring more efficient and dynamic prevention of type name conflicts.
  • For further details: crossplane/upjet#402

5. Support for Secret References in spec.initProvider

  • Enabled generation of secret references for sensitive parameters under the spec.initProvider API tree. This allows full specification of sensitive parameters, such as passwords, in the initProvider.
  • Adjusted code generation and runtime logic to support secret references from both spec.initProvider and spec.forProvider, with forProvider references taking precedence when conflicts arise.
  • For further details: crossplane/upjet#406

6. Late-Initialization configuration API

  • Introduced a new late-init API to skip fields in spec.initProvider that are already filled, preventing the late-init operation in forProvider from overriding these fields. This ensures the integrity and intended configuration of fields specified in initProvider.
  • For further details: crossplane/upjet#407

7. Documentation Improvements

What's Changed

... (truncated)

Commits
  • a444cc1 Merge pull request #407 from sergenyalcin/cond-late-init
  • 89a7d0a Merge pull request #406 from ulucinar/sensitive-initProvider
  • be0cde1 Add conditionalIgnoredCanonicalFieldPaths to IgnoreFields to fix the unit tests
  • a6de4b1 Add unit tests for spec.initProvider secret references
  • eadba75 Add a new late-init API to skip already filled field in spec.initProvider
  • ec75edf Add support for resolving secret references from spec.initProvider
  • f577a54 Generate the corresponding Kubernetes secret references for the sensitive Ter...
  • 92d1af8 Merge pull request #402 from ulucinar/available-versions
  • 942508c Merge pull request #397 from sergenyalcin/example-converter
  • e364702 Address review comments
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
dependabot[bot] commented 4 months ago

Looks like github.com/crossplane/upjet is up-to-date now, so this is no longer needed.