mirror of
https://github.com/ansible-collections/hetzner.hcloud
synced 2025-01-23 17:25:00 +00:00
f35f5009aa
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](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.30.0` -> `1.31.0` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/hcloud/1.31.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/hcloud/1.31.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/hcloud/1.30.0/1.31.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/hcloud/1.30.0/1.31.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>hetznercloud/hcloud-python (hcloud)</summary> ### [`v1.31.0`](https://togithub.com/hetznercloud/hcloud-python/blob/HEAD/CHANGELOG.md#1310-2023-10-23) [Compare Source](https://togithub.com/hetznercloud/hcloud-python/compare/v1.30.0...v1.31.0) ##### Features - prepare for iso deprecated field removal ([#​320](https://togithub.com/hetznercloud/hcloud-python/issues/320)) ([beae328](beae328dd6
)) ##### Dependencies - update pre-commit hook psf/black-pre-commit-mirror to v23.10.0 ([#​319](https://togithub.com/hetznercloud/hcloud-python/issues/319)) ([184bbe6](184bbe65a7
)) </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:eyJjcmVhdGVkSW5WZXIiOiIzNy4xOS4yIiwidXBkYXRlZEluVmVyIjoiMzcuMTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: jo <ljonas@riseup.net>
69 lines
2.4 KiB
Python
69 lines
2.4 KiB
Python
from __future__ import annotations
|
|
|
|
from datetime import datetime
|
|
from warnings import warn
|
|
|
|
from ..core import BaseDomain, DomainIdentityMixin
|
|
from ..deprecation import DeprecationInfo
|
|
|
|
|
|
class Iso(BaseDomain, DomainIdentityMixin):
|
|
"""Iso Domain
|
|
|
|
:param id: int
|
|
ID of the ISO
|
|
:param name: str, None
|
|
Unique identifier of the ISO. Only set for public ISOs
|
|
:param description: str
|
|
Description of the ISO
|
|
:param type: str
|
|
Type of the ISO. Choices: `public`, `private`
|
|
:param architecture: str, None
|
|
CPU Architecture that the ISO is compatible with. None means that the compatibility is unknown. Choices: `x86`, `arm`
|
|
:param deprecated: datetime, None
|
|
ISO 8601 timestamp of deprecation, None if ISO is still available. After the deprecation time it will no longer be possible to attach the ISO to servers. This field is deprecated. Use `deprecation` instead.
|
|
:param deprecation: :class:`DeprecationInfo <hcloud.deprecation.domain.DeprecationInfo>`, None
|
|
Describes if, when & how the resources was deprecated. If this field is set to None the resource is not
|
|
deprecated. If it has a value, it is considered deprecated.
|
|
"""
|
|
|
|
__slots__ = (
|
|
"id",
|
|
"name",
|
|
"type",
|
|
"architecture",
|
|
"description",
|
|
"deprecation",
|
|
)
|
|
|
|
def __init__(
|
|
self,
|
|
id: int | None = None,
|
|
name: str | None = None,
|
|
type: str | None = None,
|
|
architecture: str | None = None,
|
|
description: str | None = None,
|
|
deprecated: str | None = None, # pylint: disable=unused-argument
|
|
deprecation: dict | None = None,
|
|
):
|
|
self.id = id
|
|
self.name = name
|
|
self.type = type
|
|
self.architecture = architecture
|
|
self.description = description
|
|
self.deprecation = (
|
|
DeprecationInfo.from_dict(deprecation) if deprecation is not None else None
|
|
)
|
|
|
|
@property
|
|
def deprecated(self) -> datetime | None:
|
|
"""
|
|
ISO 8601 timestamp of deprecation, None if ISO is still available.
|
|
"""
|
|
warn(
|
|
"The `deprecated` field is deprecated, please use the `deprecation` field instead.",
|
|
DeprecationWarning,
|
|
)
|
|
if self.deprecation is None:
|
|
return None
|
|
return self.deprecation.unavailable_after
|