Skip to content

Releases: crossplane-contrib/provider-gitlab

v0.17.5

15 Apr 06:23
fc2ee09

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.17.4...v0.17.5

v0.17.4

13 Mar 12:25
765c7a8

Choose a tag to compare

What's Changed

  • feat: support project-level Mattermost integration (client-go v1) by @Vadims-U in #268
  • chore: update go version and actions by @derbauer97 in #291

New Contributors

Full Changelog: v0.17.3...v0.17.4

v0.17.3

18 Feb 10:03
76330e3

Choose a tag to compare

What's Changed

Full Changelog: v0.17.2...v0.17.3

v0.17.2

18 Feb 09:47
1448f28

Choose a tag to compare

What's Changed

Full Changelog: v0.17.1...v0.17.2

v0.17.1

17 Feb 13:03
5fd727b

Choose a tag to compare

What's Changed

Full Changelog: v0.17.0...v0.17.1

v0.17.0

12 Feb 12:05
ab88d4b

Choose a tag to compare

Caution

This release introduces breaking changes and significant internal upgrades. Please review these notes thoroughly, update your manifests, and test carefully before upgrading.

We upgraded the GitLab Client to its stable version and if you're developing Configurations via Golang you will have to migrate from int to int64

What's Changed

New Contributors

Full Changelog: v0.16.0...v0.17.0

v0.16.0

16 Dec 09:13
75e6a8a

Choose a tag to compare

What's Changed

Full Changelog: v0.15.0...v0.16.0

v0.15.0

09 Dec 09:53
f5e2172

Choose a tag to compare

Caution

This release introduces breaking changes and significant internal upgrades. Please review these notes thoroughly, update your manifests, and test carefully before upgrading.

Before using any Crossplane v2 capabilities in this provider, please familiarize yourself with the changes in Crossplane v2.

What's Changed

New Contributors

Full Changelog: v0.14.0...v0.15.0

v0.15.0-rc2

09 Dec 09:11
f5e2172

Choose a tag to compare

v0.15.0-rc2 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v0.15.0-rc.1...v0.15.0-rc2

v0.15.0-rc.1

10 Nov 13:28
7e8dacc

Choose a tag to compare

v0.15.0-rc.1 Pre-release
Pre-release

Release v0.15.0-rc.1

Caution

This release introduces breaking changes and significant internal upgrades. Please review these notes thoroughly, update your manifests, and test carefully before upgrading.

Before using any Crossplane v2 capabilities in this provider, please familiarize yourself with the changes in Crossplane v2.

Highlights

This release introduces:

  • Compatibility with Crossplane v2
  • Support for Crossplane v2 namespace-scoped Managed Resources (MRs) alongside existing cluster-scoped MRs
  • Upgrade to crossplane-runtimev2.0.0
  • Removal of External Secret Store support (spec.publishConnectionDetailsTo no longer available)
  • Repository restructuring to distinguish cluster vs namespaced scope

Please review the breaking changes carefully before upgrading.

Namespace-Scoped MR Support (Crossplane v2-only)

New namespace-scoped MR APIs are available under the *.gitlab.m.crossplane.io API groups for groups and projects (and associated resource kinds such as runners). Namespaced variants live under apis/namespaced/... with parallel controller logic in pkg/namespaced/....

ProviderConfig and ClusterProviderConfig

  • A new cluster-scoped ClusterProviderConfig (gitlab.m.crossplane.io) kind was introduced; managed resources can reference either ProviderConfig or ClusterProviderConfig via spec.providerConfigRef.kind.
  • When spec.providerConfigRef is omitted, it defaults to ClusterProviderConfig named default.
  • In namespace-scoped MRs:
    • spec.writeConnectionSecretToRef and any sensitive parameter secret refs default to the MR's own namespace if namespace is not specified.
    • Cross-resource references default to the same namespace (cross-namespace references remain allowed explicitly).
  • Both cluster-scoped and namespace-scoped APIs are served concurrently.

Note

Cluster-scoped MRs do NOT implement the namespace-local secret defaulting behavior and continue operating as before.

Note

All namespace references in specs for namespaced managed resources have been simplified; absence of a namespace now resolves to the resource's own namespace.

Removed Features

External Secret Store support has been removed from all Managed Resources (the spec.publishConnectionDetailsTo field has been dropped) in alignment with Crossplane v2 removal of this feature.

Note

Only the external store publishing mechanism was removed. Standard connection secrets via writeConnectionSecretToRef remain supported and are the recommended way to surface connection details inside the cluster.

Other Notable Changes

  • SafeStart capability (Crossplane v2-only): Controllers start reconciliation only after their CRDs are installed.
  • Repository structure changes:
    • Separate cluster/ and namespaced/ subdirectories under apis/, pkg/ (controllers/clients).
    • Resource generation / configuration now duplicated per scope; ensure future updates are applied to both where relevant.
  • Large internal refactor duplicating types and controllers for namespaced resources. Clusterscoped code is generated from namespaced code.

Backward Compatibility Notes

  • Installation on Crossplane v1.x remains supported:
    • Both cluster and namespace-scoped CRDs install; namespace-scoped CRDs cannot be composed on v1.x.
    • SafeStart logic does not change controller behavior materially on v1.x.
  • When upgrading from earlier provider versions, review all API changes for resources that now have namespaced counterparts or altered secret/reference semantics (v2-only behavior).
  • The package is still consumable on Crossplane v1.x, but new namespace-scoped features operate fully only on v2.x.

Upgrade Guide

  1. Identify which resources you want to adopt in namespace scope (if any) and adjust manifests accordingly.
  2. Remove all usages of spec.publishConnectionDetailsTo (use writeConnectionSecretToRef).
  3. For Crossplane v2 environments:
    • Leverage namespace-local defaulting for secret refs where appropriate.
    • Choose between ProviderConfig and ClusterProviderConfig; set spec.providerConfigRef.kind if diverging from the default.
  4. If you maintain custom patches or configuration overlays, replicate applicable changes into both cluster/ and namespaced/ paths.
  5. Test reconciliation of representative cluster-scoped and namespace-scoped resources before full rollout.

Breaking API Changes (Summary)

  • Removal of spec.publishConnectionDetailsTo across all Managed Resources.
  • Introduction of ClusterProviderConfig and namespaced ProviderConfig variants changes reference semantics (defaulting to cluster-scoped ClusterProviderConfig named default).
  • Namespace-local defaulting for secrets and parameter refs in namespaced MRs (Crossplane v2-only), which differs from prior cluster-scoped behavior.

What's Changed

Full Changelog: v0.14.0...v0.15.0-rc.1