Releases: kubernetes-sigs/cluster-api-provider-openstack
Release v0.8.0
⚠️ Major breaking changes since v0.7.z
-
API versions v1alpha3 and v1alpha4 are removed in this version and no longer work at all. Any configurations using v1alpha3 or v1alpha4 MUST be updated to use at least v1alpha5 before upgrading.
-
There are numerous breaking API changes in v1alpha7. Most of these can be updated automatically, but Removal of networks may require manual action prior to upgrade in certain cases. Please read the linked documentation carefully prior to upgrade.
-
The minimum required version of OpenStack is now Queens.
⚠️ Deprecation warning
- API version v1alpha5 is deprecated in this release. It will no longer be
served in release 0.9, and removed entirely in a future release.
What's Changed since v0.8.0-beta.0
New Features
- ✨Allow changing allowAllInClusterTraffic in a deployed cluster by @okozachenko1203 in #1663
Minor changes
- 🌱Bump CAPI to v1.5.1 by @mdbooth in #1666
- 🌱avoid duplicate error event by @jichenjc in #1655
- 🌱Fix various issues with CRD generation by @mdbooth in #1669
- 🌱Set failure only on instance error when no nodeRef by @mquhuy in #1637
- 🌱 Add test for getOrCreate by @lentzi90 in #1673
Documentation updates
New Contributors
- @okozachenko1203 made their first contribution in #1663
- @mquhuy made their first contribution in #1637
Full Changelog: v0.8.0-beta.0...v0.8.0
Release v0.8.0-beta.0
Changes since v0.8.0-alpha.0
Bugs fixed
- 🐛 remove subnet from the output in
kubectl get
by @jichenjc in #1609 - 🐛 Remove APIServerLoadBalancer.Provider Up Conversion by @ching-kuo in #1642
- 🐛 Fix application credential support in env.rc by @wwentland in #1646
- 🐛 Fix Port Leaks by @spjmurray in #1648
- 🐛 fix port cleanup when using CAPO-created cluster network by @jichenjc in #1651
- 🐛Fix failing clusterctl upgrade test by @mdbooth in #1659
- 🐛Fix failing clusterctl upgrade test (second attempt) by @mdbooth in #1661
- 🐛 Fix panic on delete before cluster is initialised by @mdbooth in #1657
- 🐛 Don't fail when deleting non-existing port by @jichenjc in #1660
- 🐛 Fix v1alpha6 -> v1alpha7 idempotence by @mdbooth in #1626
New features
- ✨ Allow Use of Public CAs by @spjmurray in #1610
- ✨ Update to CAPI 1.5 by @mdbooth in #1600
- ✨ chore: use capo cluster agent for API requests by @mnaser in #1614
- ✨ Add support to IPv6 in Machine's status by @MaysaMacedo in #1633
- ✨ Add
--version
flag by @stephenfin in #1641
Numerous fixes and updates to structured logging
- 🌱 Migrating /pkg/cloud/services/loadbalancer/loadbalancer.go and /controllers/openstackmachine_controller.go to structured logging by @anastaruno in #1621
- 🌱Migrate controllers/openstackcluster_controller.go to structured logging by @sophiajwitt in #1630
- 🌱 Migrate pkg/cloud/services/networking/network.go and router.go to structured logging by @jddaggett in #1624
- 🌱 Update verbosity levels in instance.go by @skylerxhu in #1635
- 🌱Structured logging migration of instance.go, service.go, floatingip.go, and securitygroups.go by @skylerxhu in #1631
Minor changes
- 🌱 ci: bump flatcar to latest stable by @tormath1 in #1607
- 🌱 Simplify types of Instance.SecurityGroup and Instance.Networks by @mdbooth in #1625
- 🌱 Bump golangci-lint to 1.54.2 by @mdbooth in #1652
Documentation updates
- 📖 Add link to book in README by @mdbooth in #1602
- 📖 Fix APIVersion to use existing router with OpenStackCluster by @Krast76 in #1638
New Contributors
- @MaysaMacedo made their first contribution in #1633
- @anastaruno made their first contribution in #1621
- @sophiajwitt made their first contribution in #1630
- @jddaggett made their first contribution in #1624
- @Krast76 made their first contribution in #1638
- @skylerxhu made their first contribution in #1635
Full Changelog: v0.8.0-alpha.0...v0.8.0-beta.0
Release v0.8.0-alpha.0
⚠️ Major breaking changes since v0.7.z
-
API versions v1alpha3 and v1alpha4 are removed in this version and no longer work at all. Any configurations using v1alpha3 or v1alpha4 MUST be updated to use at least v1alpha5 before upgrading.
-
There are numerous breaking API changes in v1alpha7. Most of these can be updated automatically, but Removal of networks may require manual action prior to upgrade in certain cases. Please read the linked documentation carefully prior to upgrade.
-
The minimum required version of OpenStack is now Queens.
⚠️ Deprecation warning
- API version v1alpha5 is deprecated in this release. It will no longer be
served in release 0.9, and removed entirely in a future release.
Changes since v0.7.z
⚠️ Breaking Changes
- Update NetworkStatus ready for dual stack (#1577)
- Remove ProjectID from PortOpts (#1575)
- Transform
Profile
into an interface (#1560) - Remove last uses of TenantID and pagination filters (#1563)
- Replace SubnetParam with SubnetFilter (#1559)
- Replace SecurityGroupParam with SecurityGroupFilter (#1557)
- Remove PortOpts.SecurityGroups (#1516)
- Remove Networks (#1518)
- Remove v1alpha3 and v1alpha4 (#1527)
- flatcar: make external-cloud-provider-flatcar the default one (#1522)
- Deprecate In-tree Cloud Provider (#1514)
- Remove OpenStackMachineSpec.Subnet (#1504)
- Add v1alpha7 (#1497)
✨ New Features
- Allowing update of OpenstackCluster API server fixed IP (#1590)
- Add additional sec group rule for additionalPorts of LB (#1592)
- Support propagate uplink status (#1481)
- Infer port network from subnet (#1519)
- Add RouterName for use existing router (#1370)
- Add Octavia OVN Provider Support (#1501)
- templates: add flatcar template (#1444)
- Support value specs for Ports (#1452)
- Add Tags to API-Loadbalancer resources (#1457)
- add explicit securitycontext to controller (#1461)
- Add ca-cert flag to supply a default ca certificate for each requests (#1440)
- Bump CAPI to v1.3.0 (#1406)
- Bump CAPI to v1.3.1 (#1424)
🐛 Bug Fixes
- Fix deadlock when deleting cluster before machines (#1579)
- Always filter cluster subnets by cluster network ID (#1572)
- Patch: Backport Provider to v1alpha6 (#1530)
- Improve
env.rc
andcreate_cloud_conf.sh
templates (#1381) - e2e: refresh packages list before install containerd (#1507)
- fix: allow using multiattach volume types (#1498)
- Switch to "4" instead of "ipip" for rules (#1489)
- Fix Provisioning to Unavailable AZs (#1479)
- uplift golang and x/net (#1482)
- Return from reconciler after adding finalizer (#1464)
- Fix Tilt by adding CAPO label in tilt-provider.json (#1430)
- fix nil-pointer in initial reconciliation loop with empty status field (#1445)
- uplift x/net to 0.4.0 (#1427)
- Update Ubuntu, CirrOS & Amphora image (#1408)
- do not set failure reason/message when LB not created (#1591)
- Restore APIServerLoadBalancer.Provider on up-conversion (#1517)
- fix: fix typo of worker rules and controller rules (#1492)
- Fix "internal ip doesn't exist (yet)" in e2e logs (#1474)
- check flavor and reject CPUs less than 2 (#1451)
🌱 Others
- Add metadata for release 0.8 (#1601)
- E2e: Unify machine log collection (#1595)
- E2e: Bump the tested Kubernetes versions (#1594)
- E2e: Implement LogCollector interface (#1581)
- Replace github.com/pkg/errors (#1585)
- dependencies: Bump Go stdlib (#1584)
- Bump Kubernetes version used in e2e tests (#1571)
- E2e: Bump clusterctl upgrade to start from v0.7.2 (#1568)
- Set provider ID through kubelet in ubuntu templates (#1551)
- Deprecate v1alpha5 (#1561)
- bump docker distribution to 2.8.2+incompatible (#1562)
- Remove unused fields from ExternalNetwork (#1555)
- Remove PortOpts from Network (#1550)
- Reduce the Bastion status to only fields which are used (#1546)
- Remove creation of 2 Events for the same event (#1531)
- ci: bump flatcar to latest major stable (#1524)
- bump docker to 20.10.24+incompatible (#1525)
- pull [email protected] (#1521)
- Bump gophercloud to v1.3.0 (#1520)
- Un-pointer PortOpts.SecurityGroups (#1511)
- Add fuzzy conversion tests for v1alpha6 (#1509)
- Bump gophercloud to v1.2.0 (#1463)
- Add e2e self hosted test (#1428)
- Bump ginkgo to v2.7.0 and sync with hack/tools (#1460)
- Use newer containerd in e2e tests (#1456)
- E2e: Use plain ubuntu cloud image (#1441)
- Add log to provide more info in case error happen (#1443)
- Be more robust when checking gophercloud errors in IsNotFound (#1432)
- e2e: Change logging to avoid use of By (#1417)
- Remove It block from clusterctl upgrade (#1412)
- Release 0.7 patches (#1405)
- Use dl.k8s.io instead of kubernetes-release bucket (#1542)
- Fix OWNERS_ALIASES syntax error (#1543)
- Update external approvers (#1536)
- Update linter to v1.52.2 (#1534)
- Remove the resource and machine tickers from e2e tests (#1471)
- Fix boilerplate linter (#1473)
- Download golangci-lint instead of building it (#1470)
- Add e2e remediation tests (#1380)
- Envtest mocks (#1236)
📖 Additionally, there have been 6 contributions to our documentation and book. (#1515, #1503, #1500, #1467, #1454, #1418)
Contributors
Thanks to our first time contributors in this release:
- @alexandrevilain
- @bengentil
- @ching-kuo
- @dhnikolas
- @EmilienM
- @prometherion
- @qeqar
- @ratnopamc
- @skatsaounis
- @tormath1
- @wwentland
Thanks to @lentzi90, who became a project maintainer during this release.
Thanks to @dulek, who because a project reviewer during this release.
And of course:
Thanks to all our contributors! 😊
Release v0.7.3
Changes since v0.7.2
🐛 Bug Fixes
- Always filter cluster subnets by cluster network ID (#1573)
Thanks to all our contributors! 😊
Release v0.7.2
Release v0.7.1
Release v0.7.0
Changes since v0.7.0-rc.1
🐛 Bug Fixes
- fix nil-pointer in initial reconciliation loop with empty status field (#1447)
Thanks to all our contributors! 😊
Release v0.7.0-rc.1
Changes since v0.6.4
✨ New Features
- Bump CAPI to v1.3.1 (#1426)
- Allow for omitting AZ from control plane nodes (#1318)
- Conditions for OpenStackMachines (#1288)
- Add re-creation of bastion host on change (#1303)
- Enable JSON Logging (#1296)
- Add v1alpha6 API types (#1272)
- Feature: restrict API Server LB access via IPs (#1247)
- Add Age column for osc/osm (#1279)
- Passing security groups by specifying more options in addition to UUIDs on ports (#1246)
🐛 Bug Fixes
- Update Ubuntu, CirrOS & Amphora image (#1409)
- Allow UDP traffic over nodeports (#1396)
- Don't enable router-ovn service in CI deployments (#1400)
- Decrease initial backoff for Floating IP operations (#1386)
- Fix Octavia versions endpoint (#1385)
- openstackmachine: do not set transient error message and reason (#1301)
- fix: improve load balancer health checks (#1375)
- Don't require cinder when not using volumes (#1353)
- Don't require an InstanceSpec for DeleteInstance (#1350)
- fix nilpointer during clusterctl move (#1340)
- Add security groups to ports only (#1319)
- Fix conformance tests (#1305)
- Fix logger arguments (#1284)
- delete port left over by err openstackmachine (#1260)
- Make failure domain optional for OpenStackMachine (#1263)
- implement conversion for OpenStackClusterTemplate CRD (#1249)
- remove webhooks for old APIversion v1alpha4 (#1240)
- Fix nil pointer reference during bastion deletion (#1231)
- Fix accesIPv4 checking (#1366)
- not assign floating ip when there are multiple controller nodes (#1276)
- replace "4" with "ipip" (#1290)
- make event to log for already associated FIP (#1268)
🌱 Others
- Update calico manifest for e2e testing (#1307)
- Fix go1.19 linting errors (#1313)
- Add lentzi90 to reviewers (#1422)
- Enable additional linters and metalinter checks. Fix findings (#1359)
- bump golangci-lint version to v1.46.2 (#1258)
- Backport E2E test fixes (#1420)
- Release 0.7 patches (#1410)
- Add e2e clusterctl upgrade tests (#1371)
- Bump Gophercloud to v1.1.0 (#1402)
- scripts: replace apt with apt-get (#1401)
- Tag current e2e tests as PR-Blocking (#1390)
- Ensure we capture early devstack logs (#1399)
- Synchronize versions between Makefile, Containerfile, e2e and go.mod (#1369)
- CI: Clean openstack volumes (#1364)
- Remove unnecessary mock import aliases (#1357)
- Add the cluster templates back (#1354)
- Update golangci-lint (v1.46.2 -> v1.50.0), remove deprecated linters (#1342)
- Group Makefile targets (#1343)
- remove apricote from reviewers (#1333)
- add merge strategy markers (#1325)
- gce-project.sh: loop over all GCP zones during instance creation (#1324)
- Ensure that python and pip is installed for e2e and conformance tests (#1309)
- Set ginkgo.timeout in our kubetest config (#1297)
- only reconcile loadbalancer member if machine is control-plane (#1294)
- Generate cluster templates with kustomize (#1271)
- Fix ginkgo warnings (#1239)
- Remove macaptain from cluster-api-openstack-reviewers (#1237)
- Update RELEASE.md process for release branches (#1228)
- Add release 0.6.x to metadata.yaml (#1226)
- update k8s to 1.25 (#1330)
- switch IP version from float to int (#1281)
- ci: Pin to the yoga version of openstackclient (#1352)
- update devstack release (#1329)
- e2e test: add more dump output (#1304)
- refactor sec group code (for additional CNI support) (#1299)
- Fix generation of e2e-templates when running conformance tests (#1287)
- use 1.24 as test env (#1277)
- cleanup: remove unused files (#1243)
- refactor test code (reuse existing function) (#1194)
- 🏃 Add tests for cluster controller (#1199)
- move chrischdi to emeritus_approvers (#1233)
- 🏃 update PR icon template to match CAPI (#1229)
📖 Additionally, there have been 6 contributions to our documentation and book. (#1362, #1331, #1321, #1285, #1267, #1224, #1338, #1335, 1275)
Thanks to all our contributors! 😊
[Release] v0.6.4
What's Changed
- [release-0.6] 🐛 implement conversion for OpenStackClusterTemplate CRD by @k8s-infra-cherrypick-robot in #1250
- [release-0.6] 🐛 Fix logger arguments by @k8s-infra-cherrypick-robot in #1293
- 🌱 remove apricote from reviewers by @apricote in #1336
Full Changelog: v0.6.3...v0.6.4
Release v0.6.3
Changes since v0.6.2
- [release-0.6] 🐛 remove webhooks for old APIversion v1alpha4 (#1241)
Thanks to all our contributors! 😊