Releases: linode/cluster-api-provider-linode
Releases · linode/cluster-api-provider-linode
v0.8.0
What's Changed
⚠️ Breaking Change
- [breaking] remove v1alpha1 by @AshleyDumaine in #587
🐛 Bug Fixes
- [fix] : avoid resetting condition with severity error to severity warning by @rahulait in #573
- [fix] race condition in test by @AshleyDumaine in #575
🚀 New Features
- [feat][improvement][docs] implement FirewallRule CRD and support in firewall controller, remove finalizers on AddressSets by @AshleyDumaine in #588
- [feat] - implement AddressSet CRD and support in firewall controller by @AshleyDumaine in #583
💡 Improvements
- [feat][improvement][docs] implement FirewallRule CRD and support in firewall controller, remove finalizers on AddressSets by @AshleyDumaine in #588
- [improvement] add cloud-init boostrap via cluster object store by @cbang-akamai in #586
- [improvement] : use fixed retryAfter instead of exponential backoff by @rahulait in #576
- [improvement] Migrate to new kubebuilder layout for webhooks and controller code by @komer3 in #574
- [improvement] : update linode CCM to latest version by @rahulait in #570
⚙️ Repo/CI Improvements
- [CI] Update metadata.yaml for 0.8.0 release by @eljohnson92 in #591
📖 Documentation
- [feat][improvement][docs] implement FirewallRule CRD and support in firewall controller, remove finalizers on AddressSets by @AshleyDumaine in #588
- [improvement] add cloud-init boostrap via cluster object store by @cbang-akamai in #586
📦 Dependency Updates
- 🌱 Bump the kubernetes group across 1 directory with 4 updates by @dependabot in #584
- [deps] bump containerd and CNI plugin versions in the pre-kubeadminit script by @eljohnson92 in #585
- 🌱 Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 by @dependabot in #580
- 🌱 Bump github.com/onsi/gomega from 1.35.1 to 1.36.0 by @dependabot in #581
- 🌱 Bump github.com/go-resty/resty/v2 from 2.16.0 to 2.16.2 by @dependabot in #582
- 🌱 Bump github.com/onsi/ginkgo/v2 from 2.21.0 to 2.22.0 by @dependabot in #579
- [deps] : update ccm version for node internal ip fix by @rahulait in #577
- [improvement] Migrate to new kubebuilder layout for webhooks and controller code by @komer3 in #574
- 🌱 Bump codecov/codecov-action from 4 to 5 by @dependabot in #571
- 🌱 Bump github.com/linode/linodego from 1.42.0 to 1.43.0 by @dependabot in #572
v0.7.1
What's Changed
🐛 Bug Fixes
- [fix] handle case where instance already exists by @rahulait in #563
- [fix] don't immediately requeue if the error can't be fixed with a retry by @AshleyDumaine in #564
- [fix] respect vlan interface if defined in linodemachine by @AshleyDumaine in #562
- [fix] disable LDE for flatcar by @eljohnson92 in #558
🚀 New Features
- [feat] Add CIDR transformation for single IP addresses in firewall rules by @komer3 in #559
- [feat] Remove kube-rbac-proxy to expose metrics and replace it with current best practice by @komer3 in #556
- [feat] adding vpcref to linodemachine by @komer3 in #553
💡 Improvements
- [improvement] Add env var toggle for gzip compression of cloud-init user data by @AshleyDumaine in #531
- [improvement] remove gob to save memory by @AshleyDumaine in #552
- [improvement] : simplify addr calculation and fetch instance config only for vlans by @rahulait in #551
📦 Dependency Updates
- 🌱 Bump sigs.k8s.io/cluster-api from 1.8.4 to 1.8.5 in the kubernetes group by @dependabot in #565
- 🌱 Bump the otel group with 4 updates by @dependabot in #566
- 🌱 Bump golang.org/x/mod from 0.21.0 to 0.22.0 by @dependabot in #567
- 🌱 Bump github.com/go-resty/resty/v2 from 2.15.3 to 2.16.0 by @dependabot in #568
- 🌱 Bump github.com/onsi/gomega from 1.34.2 to 1.35.1 by @dependabot in #560
- 🌱 Bump github.com/onsi/ginkgo/v2 from 2.20.2 to 2.21.0 by @dependabot in #561
- [deps] Kubernetes dep upgrades and go version upgrade by @komer3 in #557
- 🌱 Bump github.com/linode/linodego from 1.41.0 to 1.42.0 by @dependabot in #554
v0.7.0
What's Changed
🐛 Bug Fixes
- [fix] : pin kubebuilder to v4.2.0 and fix controller-gen by @rahulait in #549
- [fix] Use retryAfter() instead of static 10 sec delay for optimized POST call timing by @komer3 in #547
- [Feat] Enable adding NodeBalancer to Linode Firewall by @komer3 in #539
- [fix] make VLAN IPs unique across controller pod restarts by @tchinmai7 in #544
- [Fix] Update the failure setting logic in Linode Machine Controller by @komer3 in #543
- [fix] update stackscript size check for entire stackscript data instead of just userdata by @AshleyDumaine in #538
- [fix] - add check for stackscript size limit when falling back to stackscripts, only check metadata for cloud-init size limit when actually using cloud-init to bootstrap by @AshleyDumaine in #537
- [fix] Update IgnoreLinodeAPIError to accept multiple codes by @luthermonson in #533
🚀 New Features
- [feat] VLAN support for CAPL clusters by @tchinmai7 in #525
💡 Improvements
- [improvement] : store subnet id in linodeVPC and remove GetVPC call by @rahulait in #548
- [improvement] : simplify rate limits as we now have only one limit for POST calls by @rahulait in #540
- [improvement] : add conditions to check if linodevpc and linodefirewall are ready by @rahulait in #535
- [improvement] : retry on ratelimit-reset than always waiting for 15 secs by @rahulait in #534
⚙️ Repo/CI Improvements
- [CI] Update metadata.yaml for 0.7.0 release by @eljohnson92 in #550
- [CI] add support for custom linode environments by @eljohnson92 in #546
📦 Dependency Updates
- 🌱 Bump go.uber.org/mock from 0.4.0 to 0.5.0 by @dependabot in #545
- 🌱 Bump the otel group with 4 updates by @dependabot in #541
v0.6.4
What's Changed
🐛 Bug Fixes
- [fix] fix quoting of port in linodeFirewall by @eljohnson92 in #532
💡 Improvements
- [improvement] update default firewall to restrict API server access and fix nodeport range by @eljohnson92 in #530
- [improvement] adding verified clients for validation webhooks by @unnatiagg in #520
- [improvement] : add new phase to check if we can use cloudinit or not to reduce API calls by @rahulait in #522
- allow all udp/icmp traffic along with tcp traffic within VPCs by @amold1 in #529
- [improvement] : Limit post calls to /v4/linode/instances endpoint by @rahulait in #519
⚙️ Repo/CI Improvements
📦 Dependency Updates
- 🌱 Bump github.com/go-resty/resty/v2 from 2.13.1 to 2.15.3 by @dependabot in #526
- 🌱 Bump go.uber.org/automaxprocs from 1.5.3 to 1.6.0 by @dependabot in #527
- 🌱 Bump github.com/linode/linodego from 1.40.0 to 1.41.0 by @dependabot in #528
v0.6.3
What's Changed
🐛 Bug Fixes
- [fix] create scope with default credentials for all resources by @unnatiagg in #507
- [fix] - handling external network spec by @unnatiagg in #511
- [fix] disable auto-update in the flatcar flavor by @eljohnson92 in #510
- [fix] block credentials deletion until all dependent resources are cleaned up by @amold1 in #498
- [fix] add default credentialsRef to bucket and key resources by @AshleyDumaine in #502
- [fix] handle nil firewall ID if there is an error creating the Firewall referenced by @AshleyDumaine in #501
- [fix] : add credentials ref to linodeVPC and linodeFirewall templates by @rahulait in #497
🚀 New Features
- [feat]: add support for configuring the VPC interface by @eljohnson92 in #518
- [feat] added placementGroup to full flavors by @prajwalvathreya in #499
- [feat] adding linodeFirewall to clusters by @prajwalvathreya in #496
💡 Improvements
⚙️ Repo/CI Improvements
📖 Documentation
- [docs] add placement group docs and update firewall docs by @eljohnson92 in #504
📦 Dependency Updates
- 🌱 Bump the otel group across 1 directory with 4 updates by @dependabot in #517
- [deps] group all otel dependencies together by @eljohnson92 in #516
- [deps] bump CAPRKE2 to use the v1beta1 spec by @eljohnson92 in #509
- 🌱 Bump golang.org/x/mod from 0.20.0 to 0.21.0 by @dependabot in #505
- 🌱 Bump github.com/linode/linodego from 1.39.0 to 1.40.0 by @dependabot in #494
- 🌱 Bump github.com/onsi/gomega from 1.34.1 to 1.34.2 by @dependabot in #495
- 🌱 Bump go.opentelemetry.io/contrib/exporters/autoexport from 0.53.0 to 0.54.0 by @dependabot in #493
- 🌱 Bump github.com/onsi/ginkgo/v2 from 2.20.1 to 2.20.2 by @dependabot in #492
v0.6.2
What's Changed
🐛 Bug Fixes
- [fix] use protocol set by the firewall rule, add protocol validation by @AshleyDumaine in #490
- [fix] golangci-lint is unlocked to use the latest version again by @unnatiagg in #489
- [fix] remove ConditionLoadBalancing condition by @amold1 in #487
- [fix] pinning gowrap version by @unnatiagg in #480
🚀 New Features
💡 Improvements
- [improvement] Bump CCM to latest version by @AshleyDumaine in #491
- [improvement] Bump CCM version by @AshleyDumaine in #488
- [cleanup][improvement] Machine controller cleanup, reduce API calls for Linode instances by @AshleyDumaine in #485
- [improvement] removing v1alpha1 webhooks/deploying v1alpha2 webhooks for all resources by @unnatiagg in #479
- [cleanup] move non-reconcile functions into controller helpers by @AshleyDumaine in #470
🧪 Testing Improvements
- [test] E2E test for kubeadm-full ETCD by @prajwalvathreya in #464
📦 Dependency Updates
- 🌱 Bump github.com/onsi/ginkgo/v2 from 2.20.0 to 2.20.1 by @dependabot in #483
- 🌱 Bump github.com/akamai/AkamaiOPEN-edgegrid-golang/v8 from 8.3.0 to 8.4.0 by @dependabot in #482
- 🌱 Bump the otel group with 2 updates by @dependabot in #481
v0.6.1
What's Changed
- [deprecation] deprecate InstanceID by @AshleyDumaine in #469
🐛 Bug Fixes
- [fix] delete all stale entries for the domain by @amold1 in #478
- [fix] set the inbound/outbound policy to whatever was specified instead of trying to determine by policy rules by @AshleyDumaine in #477
- [fix] fix dns record ownership by @amold1 in #475
- [fix] revert deprecation of firewall ID by @eljohnson92 in #474
- [fix] [improvement] move apiserver loadbalancing logic from linodemachine controller to linodecluster controller by @amold1 in #457
- [fix]: check provisioning -> running every 15 secs instead of 5 by @rahulait in #472
- [fix] fix etcd-backup-restore based flavors by @amold1 in #471
- [fix] update kubeadm install script ref by @eljohnson92 in #461
- [fix] add support for debian images by @eljohnson92 in #458
- [fix] bump hardcoded envtest version by @AshleyDumaine in #450
🚀 New Features
- [feat] Support key secret templating by @bcm820 in #476
- [deprecation][feature] deprecate Firewall ID and add FirewallRef by @AshleyDumaine in #465
- [feat] LOBJ controller updated for mutable fields LinodeObjectStorage Finalizer removed by @unnatiagg in #456
- [feat] Add LinodeFirewall controller by @AshleyDumaine in #451
- [feat] Update etcd-backup flavor to use LinodeObjectStorageKey by @bcm820 in #448
💡 Improvements
- [fix] [improvement] move apiserver loadbalancing logic from linodemachine controller to linodecluster controller by @amold1 in #457
- [improvement] update install script to support newer containerd versions by @eljohnson92 in #462
- [improvement] standardize predicates on controllers by @AshleyDumaine in #454
🧪 Testing Improvements
- [test] e2e tests(konnectivity) for kubeadm-full by @prajwalvathreya in #447
⚙️ Repo/CI Improvements
- [ci] lock golangci-lint version for now by @AshleyDumaine in #455
📖 Documentation
- [docs] update firewall docs for Cloud Firewalls by @AshleyDumaine in #459
📦 Dependency Updates
- [deps] update k3s provider related templates to use version v1beta2 by @eljohnson92 in #463
- 🌱 Bump github.com/linode/linodego from 1.38.0 to 1.39.0 by @dependabot in #468
- 🌱 Bump the kubernetes group with 2 updates by @dependabot in #452
- 🌱 Bump github.com/onsi/ginkgo/v2 from 2.19.1 to 2.20.0 by @dependabot in #453
v0.6.0
What's Changed
🐛 Bug Fixes
- [fix] : always cleanup child clusters by @rahulait in #440
- [fix] Add Finalizers on LinodeCluster resource for each ControlPlane LinodeMachine resource by @amold1 in #434
- [fix] cluster-autoscaler was pulling an incorrect image when setting up kubeadm-full by @prajwalvathreya in #437
- [fix] add move-heirarchy label to LMT by @AshleyDumaine in #435
- [fix] add more checks for retrying on transient error during machine creation by @AshleyDumaine in #432
- [fix] Fix create/update opertions if leftover DNS entries are found by @amold1 in #424
- [fix] account for retryable errors by @AshleyDumaine in #422
- [fix] handle requeues for linode api errors on update and delete, set instance ID if linode already exists by @AshleyDumaine in #408
🚀 New Features
- [feat] Adding new fields in LinodeObjectStorageBucket and decoupling ObjKey Functionality by @unnatiagg in #443
- [feat] Support usage of separate Linode API for the domain client by @mabojars in #436
- [feat] Add ObjectStorageKey by @bcm820 in #426
- [feat] add a v1alpha2 version of LinodeObjectStorageBucket by @unnatiagg in #427
- [feat] add support for disk encryption by @AshleyDumaine in #423
- [feat] templates: add Flatcar template by @tormath1 in #394
- [feat] Add PlacementGroupRef to linodeMachine by @tchinmai7 in #418
- [feat] migrate manual conversions to conversion-gen by @eljohnson92 in #429
- [feat] add v1alpha2 of linodeMachineTemplate by @eljohnson92 in #428
- [feat] add v1alpha2 of linodeClusterTemplate by @eljohnson92 in #425
- [feat] add v1alpha2 of linodeVPC by @eljohnson92 in #421
- [feat] Add support for using Akamai EDGE DNS as DNS Provider for API Server Loadbalancing by @amold1 in #419
- [feat] add a v1alpha2 version of LinodeMachine by @eljohnson92 in #416
- [feat] linode placement groups - boilerplate + controllers + e2e tests by @tchinmai7 in #414
💡 Improvements
- [improvement] add override so users can set full dns name for controlplane endpoint by @amold1 in #442
- [improvement] improve span propagation to ensure Reconcile is always a top level span parent by @shanduur in #387
🧪 Testing Improvements
- [test]: bump Flatcar channel from Alpha to Beta by @tormath1 in #444
- [feat] Add ObjectStorageKey by @bcm820 in #426
⚙️ Repo/CI Improvements
- [CI] support older bash versions in generate-flavors.sh by @eljohnson92 in #446
- [CI] Update metadata.yaml with 0.6 information by @eljohnson92 in #445
📦 Dependency Updates
- 🌱 Bump golang.org/x/mod from 0.19.0 to 0.20.0 by @dependabot in #439
- 🌱 Bump github.com/onsi/gomega from 1.34.0 to 1.34.1 by @dependabot in #438
- 🌱 Bump github.com/onsi/ginkgo/v2 from 2.19.0 to 2.19.1 by @dependabot in #430
- 🌱 Bump the kubernetes group with 3 updates by @dependabot in #420
- [deps] linodego update from 1.36.2 to 1.37.0 by @unnatiagg in #417
- 🌱 Bump sigs.k8s.io/cluster-api from 1.7.3 to 1.7.4 in the kubernetes group by @dependabot in #412
v0.5.0
What's Changed
🐛 Bug Fixes
- [fix]: handle 429 and 002 errors during linodemachine creation by @rahulait in #404
- fix: increase upsert timeout to 120 seconds by @rahulait in #405
- [fix] allow linodemachine controller to recreate linode on delete by @amold1 in #390
- [fix] add support for filling in controlPlaneEndpoint if only network info is specified by @AshleyDumaine in #395
- [fix] bug where v1alpha1/2 linodecluster webhooks have same auto-generated name by @rosskirkpat in #393
- update v1alpha1 machines to watch v1alpha2 clusters by @rosskirkpat in #392
- [fix] make apiserver port configurable for DNS-based LB by @AshleyDumaine in #386
- [fix] : fix konnectivity installs as we are now installing packages from tar files by @rahulait in #388
🚀 New Features
- [feat] add controller concurrency options with elevated defaults by @eljohnson92 in #407
- [feat] Add ipv6 support for dns loadbalancing by @amold1 in #383
💡 Improvements
- [improvement] : update ccm-linode to v0.4.10 by @rahulait in #410
- [improvement] [test] [docs] add dns webook and flavor docs by @amold1 in #406
🧪 Testing Improvements
- [improvement] [test] [docs] add dns webook and flavor docs by @amold1 in #406
- store data in prometheus for 15 days by default by @rahulait in #402
⚙️ Repo/CI Improvements
- [CI] Update metadata.yaml with 0.5 minor version by @eljohnson92 in #409
- [CI] group otel deps together in dependabot by @eljohnson92 in #401
📖 Documentation
- [improvement] [test] [docs] add dns webook and flavor docs by @amold1 in #406
- fix formatting of clusterctl init command in docs by @eljohnson92 in #382
📦 Dependency Updates
- 🌱 Bump github.com/linode/linodego from 1.36.1 to 1.36.2 by @dependabot in #403
- 🌱 Bump go.opentelemetry.io/contrib/exporters/autoexport from 0.52.0 to 0.53.0 by @dependabot in #398
- 🌱 Bump go.opentelemetry.io/otel/sdk from 1.27.0 to 1.28.0 by @dependabot in #399
- 🌱 Bump golang.org/x/mod from 0.18.0 to 0.19.0 by @dependabot in #400
- 🌱 Bump github.com/linode/linodego from 1.36.0 to 1.36.1 by @dependabot in #384
v0.4.0
What's Changed
⚠️ Breaking Change
Starting with this release the VPC interface is automatically set as the primary interface on eth0, templates generated before v0.4.0 might not work if using a VPC
🐛 Bug Fixes
- [fix] set default value for dns token to be the linode api token by @amold1 in #379
- [fix] update linodeobj and autoscaler template defaults by @eljohnson92 in #374
- [fix]: fix vpcless installs when firewalling is enabled by @rahulait in #371
- [fix] cannot use kubelet-arg to set node-ip for k3s by @AshleyDumaine in #369
- [fix] finalizers to not contain the apiVersion by @AshleyDumaine in #364
- [fix]: fix version of linodecluster to correctly patch targets by @rahulait in #357
- [fix] flavors beside clusterclass that were missing cilium host FW by @AshleyDumaine in #354
- [fix] Add patch for configtemplate for k3s for node-ip by @amold1 in #353
🚀 New Features
- [feat] add dns loadbalancing flavor for rke2 and k3s by @amold1 in #378
- [feat] DNS based LoadBalancing for the CAPL cluster API Server by @amold1 in #370
- [feat] add distributed tracing using OTEL by @shanduur in #372
- [feat][cleanup] switch to not using apt for kubeadm, kubelet, and kubectl, curl kubeadm pre-init script by @AshleyDumaine in #366
- [feat]: add konnectivity flavor for kubeadm by @rahulait in #355
- [feat] Adding prometheus and grafana to observe various capl metrics and performance by @komer3 in #356
- [feat] [deps]: New flavor for Cilium BGP load-balancing for Services, bump linode-CCM version by @AshleyDumaine in #317
- [feat]: bump version for linodecluster to v1alpha2 by @rahulait in #351
💡 Improvements
- [improvement] OTEL semconv update by @shanduur in #376
- [improvement]: move vpc interface to eth0 by @rahulait in #358
⚙️ Repo/CI Improvements
- [CI] add CAPL version 0.4 to metadata.yaml by @eljohnson92 in #377
📦 Dependency Updates
- 🌱 Bump github.com/linode/linodego from 1.35.0 to 1.36.0 by @dependabot in #373
- 🌱 Bump docker/build-push-action from 5 to 6 by @dependabot in #367
- 🌱 Bump the kubernetes group with 3 updates by @dependabot in #368
- 🌱 Bump sigs.k8s.io/controller-runtime from 0.18.3 to 0.18.4 in the kubernetes group by @dependabot in #359
- 🌱 Bump golang.org/x/oauth2 from 0.20.0 to 0.21.0 by @dependabot in #362
- 🌱 Bump golang.org/x/mod from 0.17.0 to 0.18.0 by @dependabot in #361
- 🌱 Bump github.com/linode/linodego from 1.34.0 to 1.35.0 by @dependabot in #360
- [feat] [deps]: New flavor for Cilium BGP load-balancing for Services, bump linode-CCM version by @AshleyDumaine in #317