)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"be0c157876aacb6fdec8b4778aa3580772c0e957","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"0423df98_797d7a23","updated":"2025-08-29 03:39:48.000000000","message":"Hi Jason, Could we please have release notes(using `reno`) and test cases?\n\nOtherwise, this change looks good in principle. Thank you for contributing to the CAPI helm driver!\n\nThis change uses labels from the Cluster, which are copied from the Cluster Template on creation. This is good as using Cluster Template labels directly may result in changes to the values during upgrades which Calico won\u0027t like.\n\nNote there is an alternative method proposed of specifying these site wide (or, by cluster template) you may be interested in: https://review.opendev.org/c/openstack/magnum-capi-helm/+/951966","commit_id":"554b1885a2b9127d17aff1b9c3339afdefb9a89e"},{"author":{"_account_id":38333,"name":"Jason Rayne","display_name":"Jason Rayne","email":"jason@raynemail.com","username":"jasonrayne"},"change_message_id":"e23ec7f13daed38e4946782b1b7d339f70a55c5e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"047a9778_d3739795","in_reply_to":"0423df98_797d7a23","updated":"2025-08-29 21:05:04.000000000","message":"Hi Dale, happy to be able to contribute!\n\nI\u0027ve added the release notes and test cases in patch set 5.\n\nThanks for pointing out 951966 - that\u0027s a valuable addition for site-wide configuration! This change complements that approach by providing direct label control for individual clusters, which I believe will be useful in self-service environments where users need networking flexibility without requiring administrator file management.","commit_id":"554b1885a2b9127d17aff1b9c3339afdefb9a89e"},{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"1bfdec0e2dcdad53ebcc6d61b74d11448eaa0ebb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"d3832757_76e65436","in_reply_to":"047a9778_d3739795","updated":"2025-08-31 23:39:04.000000000","message":"Yep, I agree. This patchset solves a different problem to the site-wide configuration and allows Magnum users to specify values in addition to the OpenStack operator.\n\nI can see this being useful for some of my customers.","commit_id":"554b1885a2b9127d17aff1b9c3339afdefb9a89e"},{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"357136f12c48b220121569e3195f96babdc9ef22","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"f8ee93db_c9def25b","updated":"2025-09-04 02:05:49.000000000","message":"LGTM. I need to check with other Core reviewers when we can merge this with respect to Flamingo milestones.","commit_id":"d35c5b3bbdca4d07da6394d1b7685e4ed59d02ba"}],"magnum_capi_helm/tests/test_driver.py":[{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"1bfdec0e2dcdad53ebcc6d61b74d11448eaa0ebb","unresolved":true,"context_lines":[{"line_number":2161,"context_line":"        helm_install_values \u003d mock_install.call_args[0][3]"},{"line_number":2162,"context_line":"        self.assertDictEqual(helm_install_values, expected_values)"},{"line_number":2163,"context_line":"        # Ensure no kubeNetwork key is present"},{"line_number":2164,"context_line":"        self.assertNotIn(\"kubeNetwork\", helm_install_values)"},{"line_number":2165,"context_line":""},{"line_number":2166,"context_line":"    @mock.patch.object(app_creds, \"get_app_cred_string_data\")"},{"line_number":2167,"context_line":"    @mock.patch.object(kubernetes.Client, \"load\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"87488b9e_042686a2","line":2164,"updated":"2025-08-31 23:39:04.000000000","message":"nit: As this is the \u0027ensure nothing is changed\u0027 case, would this be better added to the `test_create_cluster` test case instead?","commit_id":"2ceada0126de60a984624fc5646214553c88a2e5"},{"author":{"_account_id":38333,"name":"Jason Rayne","display_name":"Jason Rayne","email":"jason@raynemail.com","username":"jasonrayne"},"change_message_id":"85566d0ad768a3e06e9c26c3e5b5534890893512","unresolved":false,"context_lines":[{"line_number":2161,"context_line":"        helm_install_values \u003d mock_install.call_args[0][3]"},{"line_number":2162,"context_line":"        self.assertDictEqual(helm_install_values, expected_values)"},{"line_number":2163,"context_line":"        # Ensure no kubeNetwork key is present"},{"line_number":2164,"context_line":"        self.assertNotIn(\"kubeNetwork\", helm_install_values)"},{"line_number":2165,"context_line":""},{"line_number":2166,"context_line":"    @mock.patch.object(app_creds, \"get_app_cred_string_data\")"},{"line_number":2167,"context_line":"    @mock.patch.object(kubernetes.Client, \"load\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"682f5a5a_c4ade43c","line":2164,"in_reply_to":"87488b9e_042686a2","updated":"2025-09-02 17:29:33.000000000","message":"That makes sense! I updated `test_create_cluster` and removed my redundant test.","commit_id":"2ceada0126de60a984624fc5646214553c88a2e5"}],"releasenotes/notes/add-pod-cidr-labels-ef8e9e16a48d65b4.yaml":[{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"1bfdec0e2dcdad53ebcc6d61b74d11448eaa0ebb","unresolved":true,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added support for ``kube_pods_cidr`` and ``kube_services_cidr`` cluster"},{"line_number":5,"context_line":"    template labels that allow operators to override default Kubernetes"},{"line_number":6,"context_line":"    network CIDR ranges at the template level. This resolves IP overlap"},{"line_number":7,"context_line":"    issues where default pod CIDRs conflict with existing corporate networks,"},{"line_number":8,"context_line":"    eliminating the need for manual post-deployment Calico configuration"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"6d699635_1e982f92","line":5,"updated":"2025-08-31 23:39:04.000000000","message":"Could we change this `cluster template` wording to be clear it includes Cluster labels also?\n\nWith the change as proposed you can use an existing Cluster Template and add these labels in at cluster create time (using`--merge-labels`).\n\nPerhaps something like: \"Added support for labels ``kube_pods_cidr`` and ``kube_services_cidr`` on Cluster or Cluster Template that allow ...\"","commit_id":"2ceada0126de60a984624fc5646214553c88a2e5"},{"author":{"_account_id":38333,"name":"Jason Rayne","display_name":"Jason Rayne","email":"jason@raynemail.com","username":"jasonrayne"},"change_message_id":"85566d0ad768a3e06e9c26c3e5b5534890893512","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added support for ``kube_pods_cidr`` and ``kube_services_cidr`` cluster"},{"line_number":5,"context_line":"    template labels that allow operators to override default Kubernetes"},{"line_number":6,"context_line":"    network CIDR ranges at the template level. This resolves IP overlap"},{"line_number":7,"context_line":"    issues where default pod CIDRs conflict with existing corporate networks,"},{"line_number":8,"context_line":"    eliminating the need for manual post-deployment Calico configuration"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"8bcd0c69_74b45b80","line":5,"in_reply_to":"6d699635_1e982f92","updated":"2025-09-02 17:29:33.000000000","message":"Done","commit_id":"2ceada0126de60a984624fc5646214553c88a2e5"}]}
