Julian Tölle
98e9c52c74
fix(server): timeout in server creation when waiting on next actions ( #561 )
...
While we wait a long time on the `create_server` actions, we only wait 2
minutes on any follow up actions like `start_server` or
`attach_network`. This is sometimes not enough. This commit adds a longer
wait timeout for the `next_actions` returned after creating the server.
Co-authored-by: Marco Montesi <marco.montesi@gmail.com>
2024-09-23 09:00:57 +02:00
Jonas L
19e586fa22
feat: use exponential backoff algorithm when polling actions ( #524 )
...
##### SUMMARY
Replace the constant poll interval of 1 second, with a truncated
exponential back off algorithm with jitter.
Below is a suite of poll interval (in seconds) generated by the new
algorithm:
```
1.49
2.14
5.46
6.51
6.57
5.57
5.98
7.13
6.59
7.10
5.54
5.03
6.56
5.96
6.72
7.21
7.05
5.31
5.60
6.33
6.82
5.42
6.08
6.60
TOTAL: 140.77
```
2024-07-04 15:07:05 +02:00
renovate[bot]
9adb8b3981
chore(deps): update dependency hcloud to v2 ( #523 )
...
[](https://renovatebot.com )
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [hcloud](https://togithub.com/hetznercloud/hcloud-python )
([changelog](https://togithub.com/hetznercloud/hcloud-python/blob/main/CHANGELOG.md ))
| `1.35.0` -> `2.0.1` |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
### Release Notes
<details>
<summary>hetznercloud/hcloud-python (hcloud)</summary>
###
[`v2.0.1`](https://togithub.com/hetznercloud/hcloud-python/blob/HEAD/CHANGELOG.md#201-2024-07-03 )
[Compare
Source](https://togithub.com/hetznercloud/hcloud-python/compare/v2.0.0...v2.0.1 )
##### Bug Fixes
- `assignee_type` is required when creating a primary ip
([#​409](https://togithub.com/hetznercloud/hcloud-python/issues/409 ))
([bce5e94](bce5e940e2
))
- clean unused arguments in the `Client.servers.rebuild` method
([#​407](https://togithub.com/hetznercloud/hcloud-python/issues/407 ))
([6d33c3c](6d33c3cff5
))
- details are optional in API errors
([#​411](https://togithub.com/hetznercloud/hcloud-python/issues/411 ))
([f1c6594](f1c6594dee
))
- rename `trace_id` variable to `correlation_id`
([#​408](https://togithub.com/hetznercloud/hcloud-python/issues/408 ))
([66a0f54](66a0f54699
))
###
[`v2.0.0`](https://togithub.com/hetznercloud/hcloud-python/blob/HEAD/CHANGELOG.md#200-2024-07-03 )
[Compare
Source](https://togithub.com/hetznercloud/hcloud-python/compare/v1.35.0...v2.0.0 )
##### ⚠ BREAKING CHANGES
- return full rebuild response in `Client.servers.rebuild`
([#​406](https://togithub.com/hetznercloud/hcloud-python/issues/406 ))
- make `datacenter` argument optional when creating a primary ip
([#​363](https://togithub.com/hetznercloud/hcloud-python/issues/363 ))
- remove deprecated `include_wildcard_architecture` argument in
`IsosClient.get_list` and `IsosClient.get_all`
([#​402](https://togithub.com/hetznercloud/hcloud-python/issues/402 ))
- make `Client.request` `tries` a private argument
([#​399](https://togithub.com/hetznercloud/hcloud-python/issues/399 ))
- make `Client.poll_interval` a private property
([#​398](https://togithub.com/hetznercloud/hcloud-python/issues/398 ))
- return empty dict on empty responses in `Client.request`
([#​400](https://togithub.com/hetznercloud/hcloud-python/issues/400 ))
- remove deprecated `hcloud.hcloud` module
([#​401](https://togithub.com/hetznercloud/hcloud-python/issues/401 ))
- move `hcloud.__version__.VERSION` to `hcloud.__version__`
([#​397](https://togithub.com/hetznercloud/hcloud-python/issues/397 ))
##### Features
- add `trace_id` to API exceptions
([#​404](https://togithub.com/hetznercloud/hcloud-python/issues/404 ))
([8375261](8375261da3
))
- allow using a custom poll_interval function
([#​403](https://togithub.com/hetznercloud/hcloud-python/issues/403 ))
([93eb56b](93eb56ba4d
))
- make `Client.poll_interval` a private property
([#​398](https://togithub.com/hetznercloud/hcloud-python/issues/398 ))
([d5f24db](d5f24db281
))
- make `Client.request` `tries` a private argument
([#​399](https://togithub.com/hetznercloud/hcloud-python/issues/399 ))
([428ea7e](428ea7e3be
))
- move `hcloud.__version__.VERSION` to `hcloud.__version__`
([#​397](https://togithub.com/hetznercloud/hcloud-python/issues/397 ))
([4e3f638](4e3f638862
)),
closes
[#​234](https://togithub.com/hetznercloud/hcloud-python/issues/234 )
- remove deprecated `hcloud.hcloud` module
([#​401](https://togithub.com/hetznercloud/hcloud-python/issues/401 ))
([db37e63](db37e633eb
))
- remove deprecated `include_wildcard_architecture` argument in
`IsosClient.get_list` and `IsosClient.get_all`
([#​402](https://togithub.com/hetznercloud/hcloud-python/issues/402 ))
([6b977e2](6b977e2da5
))
- return empty dict on empty responses in `Client.request`
([#​400](https://togithub.com/hetznercloud/hcloud-python/issues/400 ))
([9f46adb](9f46adb946
))
- return full rebuild response in `Client.servers.rebuild`
([#​406](https://togithub.com/hetznercloud/hcloud-python/issues/406 ))
([1970d84](1970d84bec
))
##### Bug Fixes
- make `datacenter` argument optional when creating a primary ip
([#​363](https://togithub.com/hetznercloud/hcloud-python/issues/363 ))
([ebef774](ebef77464c
))
##### Dependencies
- update dependency coverage to >=7.5,<7.6
([#​386](https://togithub.com/hetznercloud/hcloud-python/issues/386 ))
([5660691](5660691ebd
))
- update dependency mypy to >=1.10,<1.11
([#​387](https://togithub.com/hetznercloud/hcloud-python/issues/387 ))
([35c933b](35c933bd21
))
- update dependency myst-parser to v3
([#​385](https://togithub.com/hetznercloud/hcloud-python/issues/385 ))
([9f18270](9f18270489
))
- update dependency pylint to >=3,<3.3
([#​391](https://togithub.com/hetznercloud/hcloud-python/issues/391 ))
([4a6f005](4a6f005cb0
))
- update dependency pytest to >=8,<8.3
([#​390](https://togithub.com/hetznercloud/hcloud-python/issues/390 ))
([584a36b](584a36b658
))
- update dependency sphinx to >=7.3.4,<7.4
([#​383](https://togithub.com/hetznercloud/hcloud-python/issues/383 ))
([69c2e16](69c2e16073
))
- update pre-commit hook asottile/pyupgrade to v3.16.0
([0ce5fbc](0ce5fbccba
))
- update pre-commit hook pre-commit/pre-commit-hooks to v4.6.0
([5ef25ab](5ef25ab396
))
- update pre-commit hook psf/black-pre-commit-mirror to v24.4.0
([0941fbf](0941fbfab2
))
- update pre-commit hook psf/black-pre-commit-mirror to v24.4.1
([fec08c5](fec08c5323
))
- update pre-commit hook psf/black-pre-commit-mirror to v24.4.2
([#​389](https://togithub.com/hetznercloud/hcloud-python/issues/389 ))
([2b2e21f](2b2e21f613
))
- update pre-commit hook pycqa/flake8 to v7.1.0
([3bc651d](3bc651d50d
))
##### Documentation
- add v2 upgrade notes
([#​405](https://togithub.com/hetznercloud/hcloud-python/issues/405 ))
([c77f771](c77f771e2b
))
- cx11 is name, not an id
([#​381](https://togithub.com/hetznercloud/hcloud-python/issues/381 ))
([b745d40](b745d4049f
))
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/ ). View
repository job log
[here](https://developer.mend.io/github/ansible-collections/hetzner.hcloud ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjEuOSIsInVwZGF0ZWRJblZlciI6IjM3LjQyMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: jo <ljonas@riseup.net>
2024-07-03 15:05:12 +02:00
Jonas L
49e21ae4fe
fix: keep deprecated alias for another major version ( #515 )
...
This was not removed during the v4.0.0 release, we must therefor
reschedule it for the v5.0.0 release.
2024-06-11 16:55:27 +02:00
Jonas L
fb8c2a9f58
chore: replace deprecated server type with cx22 ( #510 )
...
Learn more:
https://docs.hetzner.cloud/changelog#2024-06-06-old-server-types-with-shared-intel-vcpus-are-deprecated
- Updated docs with newer server types
- Use ARM server type for tests
2024-06-11 15:30:47 +02:00
Jonas L
07095529a4
fix: improve actions waiting timeout based on data ( #488 )
...
##### SUMMARY
Some action waiting time have been set to an arbitrary number, which
could force the users to wait for too long, while we could have raised a
timeout.
This changes the arbitrary numbers with rough estimate based on the
average actions time and some leeway.
2024-04-15 11:01:12 +02:00
Jonas L
d88ecdbccc
feat: rename server image_allow_deprecated
option ( #487 )
...
##### SUMMARY
Renamed the `allow_deprecated_image` to `image_allow_deprecated`
argument to ensure the `image` related options use the same namespace.
This is backward compatible, as we introduce a new alias for the old
option name.
2024-04-04 12:40:24 +02:00
Jonas L
7fdefcfa02
feat: use resources name or ID in server module arguments ( #484 )
...
##### SUMMARY
- Allow passing either the name or the ID of a resource to the different
arguments of the server module.
- Split the code into multiple smaller function and improve the code.
- Improve the module arguments documentation.
- Refactor and cleanups.
2024-04-04 11:54:41 +02:00
Jonas L
022cca4799
docs: use argument spec to mark force_upgrade
as deprecated ( #481 )
...
##### SUMMARY
Leverage the alias feature from the argument spec, and re-declare the
deprecation of the `force_upgrade` argument.
2024-04-04 11:49:16 +02:00
Jonas L
4bb02b9cd2
refactor: remove unneeded to_native
calls ( #477 )
...
##### SUMMARY
Since we only support python >=3.8, the `to_native` python2/3
compatibility function is not needed anymore. We only keep it for
printing a traceback free exception message. Where a type conversion is
needed, we use the built-in `str()` function.
2024-03-27 14:11:30 +01:00
Jonas L
df8c3b6a59
refactor: add future annotations imports ( #398 )
...
##### SUMMARY
This adds future annotations imports to benefit from the modern python
typing system.
2023-11-23 14:53:10 +01:00
Jonas L
328dfb8b0f
refactor: start using new modules names ( #393 )
...
##### SUMMARY
Update all references to modules to use the new module names.
Continuation of #390
2023-11-21 09:40:11 +01:00
Jonas L
933a16249b
feat: remove hcloud_
prefix from all modules names ( #390 )
...
##### SUMMARY
This simplifies the name of the modules from
`hetzner.hcloud.hcloud_firewall` to `hetzner.hcloud.firewall`. While
maintaining backward compatibility with the old names.
Further changes such as updating the test or the documentation will be
done in a future PR to maintain the git history when squashing the PRs.
##### ISSUE TYPE
- Feature Pull Request
2023-11-20 13:21:23 +01:00