We are amped to announce the release of: magnum-capi-helm 1.0.0: OpenStack Magnum driver using helm to create k8s clusters with Cluster API. This is the first release of magnum-capi-helm. The source is available from: https://opendev.org/openstack/magnum-capi-helm Download the package from: https://pypi.org/project/magnum-capi-helm For more details, please see below. 1.0.0 ^^^^^ Prelude ******* * This is the initial release of a new in-tree Magnum driver which leverages Helm and the Kubernetes Cluster API (https://github.com /kubernetes-sigs/cluster-api) project to provide an alternative to the existing Heat driver for creating and managing Kubernetes clusters via OpenStack Magnum. * This project started life as a out-of-tree driver which was developed and maintained at https://github.com/stackhpc/magnum-capi- helm. This 1.0.0 release marks the deprecation of this out-of-tree source repository and the first official release of the in-tree version which is under OpenStack governance, with source code now available at https://opendev.org/openstack/magnum-capi-helm. * The driver is generally ready for production use and has been deployed on a number of OpenStack systems prior to this first official release. However, this does not preclude the possibility of unforeseen issues and omissions at this early stage of the release cycle - bug reports welcome and appreciated! New Features ************ * Adds support for autoscaling of non-default worker node groups. The min/max node count properties on each node group are passed to the autoscaler to determine autoscaling behaviour. If the target cluster has the *auto_scaling_enabled* cluster label set to *true* then any node groups with both *min_node_count`* and *max_node_count* properties set will be allowed to autoscale between these min and max node counts depending on the cluster's current workload. * Adds support for autoscaling of the default worker node group by respecting the *min_node_count* and *max_node_count* cluster labels. Unlike the Heat driver, when these labels are provided, the cluster will always start with node count equal to the minimum node count value and the alternative *node_count* flag will be ignored. Changes in magnum-capi-helm eb1e3aab058be4ba0532ab356b6f9373f6f90dcd..1.0.0 --------------------------------------------------------------------------- 2300100 Allow autoscaling of non-default node groups f5881c9 Support autoscaling for the default node group c0b3e17 Add initial release note bc3c715 Add initial docs 57a9d43 Fix cluster deletion on trust creation failure cc32aaf Allow additional load balancer customisation d73e8c6 Change allowed_cidr to expect a comma separated list instead of semicolons d63a4a0 Fix typo in upper constraints cc89e48 Use availability zone instead of Region for storage classes 0a27f3a Re-use oslo_utils functionality where possible 8f802d0 Disable keystone-auth by default 61dfd3a Fix Helm value snippet formatting for Keystone auth webhook 2c4a7a1 Add skip_install = true to tox formatting jobs b536601 Make boolean cluster labels case insensitive e1993a2 Fail on bad formatting eadee9a add cluster-api janitor to devstack script 18045a7 Remove outdated reference to nova_client config c7b0e16 Add app_cred_interface_type config file option b214d3b CI: Add cover jobs c870d74 CI: Add publishing branch tarball 496c46a Update .gitreview and remove .github, add basic CI 1c7ec31 Appcred authtype (#49) b3ff1db Sanitise storageclasses (#48) cfa2158 Pin to 2023.2 upper requirements (#46) 288f33d Move to capi-helm-charts 0.4.0 by default (#45) 8ea7486 Allowed cidr list for API load balancer (#44) bfca108 Add config for k8s-keystone-auth webhook (#34) b76c1b3 Retrieve volume types from cinder and use to make storageclasses (#32) 495cecb Update README.rst os_distro ubuntu (#31) 9b1bebd Update to black<25.0.0 (#43) 7da404f Update chart default to 0.3.0 (#42) 3d254d0 Support etcd on separate block device (#40) 65f5787 change devstack script to use CI versions/values (#39) 02fef2e Query nova client for allowed flavors based on config (#33) 6f49dde Add capi monitor to update health_status (#26) fcaaf6b Refactor k8s temp file cleanup (#37) 59e4e13 Clean up temp files created by kubeconfig certficates (#36) 28a9044 fix devstack script to match os_distro change (#35) 66e7806 Allow customisation of healthcheck. (#23) b0765ea Add support for Flatcar OS (#22) 2f50dbe Test on latest magnum, now its not broken (#29) b5c5c0d Move back to os_distro Ubuntu (#27) c17b9ae Move default helm to 0.1.4 (#28) 4f8ad70 Refactor create_cluster tests to share expected values (#24) e0ea187 Apply boot disk values from Magnum config (#20) 6726c7c Improve the README (#18) e7aba39 Rename config option namespace_suffix to namespace_prefix (#17) 3213995 Fix CI by pinning to working Magnum (#19) d4c180d script changes (#15) 807c9e2 Add missing label to cluster secrets (#16) f72de00 add a development environment (#10) 3f90be8 Update the default chart version (#14) 9a5c3a5 Fix incorrect call get_certificate_string_data (#13) 428752f Remove limiting roles (#11) 7673363 Remove dead code (#12) 6bd6654 Cluster API: Support basic networking parameters (#9) fb92fe4 Cluster API: Implement upgrade to a new template (#8) 1a68089 Implement cluster update and resize (#7) 6fb19e8 ClusterAPI: implement update_cluster_status (#6) 33a4238 ClusterAPI: write secrets into capi mgr k8s bc3546e Add kubernetes client to add secrets for helm e18ab23 Get appcred and cacert inspired by vexhost driver (#4) 1ab74fd Cluster API: use helm client in driver (#3) 029bfc5 Add Helm client (#2) 85112a4 Add a stub cluster_api driver (#1) c7757b9 Update setup.cfg 2497e78 Add automatic black formatting 38f006f Attempt to add tox tests 22b2d18 Attempt to import from openstack cookiecutter Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..8afd11a --- /dev/null +++ b/requirements.txt @@ -0,0 +1,8 @@ +# The order of packages is significant, because pip processes them in the order +# of appearance. Changing the order has an impact on the overall integration +# process, which may cause wedges in the gate later. + +pbr>=2.0 # Apache-2.0 +oslo_log +oslo_utils +magnum diff --git a/test-requirements.txt b/test-requirements.txt new file mode 100644 index 0000000..e9dc685 --- /dev/null +++ b/test-requirements.txt @@ -0,0 +1,14 @@ +# The order of packages is significant, because pip processes them in the order +# of appearance. Changing the order has an impact on the overall integration +# process, which may cause wedges in the gate later. + +hacking>=3.0,<3.1 # Apache-2.0 + +coverage>=4.0,!=4.4 # Apache-2.0 +python-subunit>=0.0.18 # Apache-2.0/BSD +oslotest>=1.10.0 # Apache-2.0 +stestr>=1.0.0 # Apache-2.0 +testtools>=1.4.0 # MIT +black<25.0.0 # MIT + +magnum