⚠️ 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 cluster-api@v1.4.1 (#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! 😊