Improvements
- We no longer wait for a whole hour when the Hetzner API rate limit is reached, but only the amount of time actually necessary
- Added proper retry mechanism for possible network errors and similar when calling the Hetzner API
- Improved timeout handling when calling the Hetzner API
- Improved handling of concurrency when creating and setting up nodes
- Improved and simplified setup of custom iptables firewall used for large clusters where the Hetzner firwall is not sufficient and thus is not used
- When the custom firewall logic is updated, now we can apply the necessary configuration changes to existing clusters' nodes by rerunning the
createcommand - The
createcommand when run on an existing cluster will now update the lists of allowed networks automatically, without requiring manual updating - Various improvements to the codebase
Fixes
- Fix macOS CI by upgrading image from macos-13 → macos-14 - by @artem-zinnatullin