Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
224 changes: 0 additions & 224 deletions src/tfe/types.py

This file was deleted.

75 changes: 75 additions & 0 deletions src/tfe/types/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# File generated from migration to individual type files. See types/ folder for details.

from __future__ import annotations

from .capacity import Capacity as Capacity
from .data_retention import (
DataRetentionPolicy as DataRetentionPolicy,
)
from .data_retention import (
DataRetentionPolicyChoice as DataRetentionPolicyChoice,
)
from .data_retention import (
DataRetentionPolicyDeleteOlder as DataRetentionPolicyDeleteOlder,
)
from .data_retention import (
DataRetentionPolicyDeleteOlderSetOptions as DataRetentionPolicyDeleteOlderSetOptions,
)
from .data_retention import (
DataRetentionPolicyDontDelete as DataRetentionPolicyDontDelete,
)
from .data_retention import (
DataRetentionPolicyDontDeleteSetOptions as DataRetentionPolicyDontDeleteSetOptions,
)
from .data_retention import (
DataRetentionPolicySetOptions as DataRetentionPolicySetOptions,
)
from .entitlements import Entitlements as Entitlements
from .execution import ExecutionMode as ExecutionMode
from .organization import (
Organization as Organization,
)
from .organization import (
OrganizationCreateOptions as OrganizationCreateOptions,
)
from .organization import (
OrganizationUpdateOptions as OrganizationUpdateOptions,
)
from .pagination import Pagination as Pagination
from .project import Project as Project
from .run import (
ReadRunQueueOptions as ReadRunQueueOptions,
)
from .run import (
Run as Run,
)
from .run import (
RunQueue as RunQueue,
)
from .run import (
RunStatus as RunStatus,
)
from .workspace import Workspace as Workspace

__all__ = [
"Capacity",
"DataRetentionPolicy",
"DataRetentionPolicyChoice",
"DataRetentionPolicyDeleteOlder",
"DataRetentionPolicyDeleteOlderSetOptions",
"DataRetentionPolicyDontDelete",
"DataRetentionPolicyDontDeleteSetOptions",
"DataRetentionPolicySetOptions",
"Entitlements",
"ExecutionMode",
"Organization",
"OrganizationCreateOptions",
"OrganizationUpdateOptions",
"Pagination",
"Project",
"ReadRunQueueOptions",
"Run",
"RunQueue",
"RunStatus",
"Workspace",
]
13 changes: 13 additions & 0 deletions src/tfe/types/capacity.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
from __future__ import annotations

from pydantic import BaseModel

__all__ = [
"Capacity",
]


class Capacity(BaseModel):
organization: str
pending: int
running: int
73 changes: 73 additions & 0 deletions src/tfe/types/data_retention.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
from __future__ import annotations

from pydantic import BaseModel

__all__ = [
"DataRetentionPolicy",
"DataRetentionPolicyDeleteOlder",
"DataRetentionPolicyDontDelete",
"DataRetentionPolicyChoice",
"DataRetentionPolicySetOptions",
"DataRetentionPolicyDeleteOlderSetOptions",
"DataRetentionPolicyDontDeleteSetOptions",
]


class DataRetentionPolicy(BaseModel):
"""Deprecated: Use DataRetentionPolicyDeleteOlder instead."""

id: str
delete_older_than_n_days: int


class DataRetentionPolicyDeleteOlder(BaseModel):
id: str
delete_older_than_n_days: int


class DataRetentionPolicyDontDelete(BaseModel):
id: str


class DataRetentionPolicyChoice(BaseModel):
"""Polymorphic data retention policy choice."""

data_retention_policy: DataRetentionPolicy | None = None
data_retention_policy_delete_older: DataRetentionPolicyDeleteOlder | None = None
data_retention_policy_dont_delete: DataRetentionPolicyDontDelete | None = None

def is_populated(self) -> bool:
"""Returns whether one of the choices is populated."""
return (
self.data_retention_policy is not None
or self.data_retention_policy_delete_older is not None
or self.data_retention_policy_dont_delete is not None
)

def convert_to_legacy_struct(self) -> DataRetentionPolicy | None:
"""Convert the DataRetentionPolicyChoice to the legacy DataRetentionPolicy struct."""
if not self.is_populated():
return None

if self.data_retention_policy is not None:
return self.data_retention_policy
elif self.data_retention_policy_delete_older is not None:
return DataRetentionPolicy(
id=self.data_retention_policy_delete_older.id,
delete_older_than_n_days=self.data_retention_policy_delete_older.delete_older_than_n_days,
)
return None


class DataRetentionPolicySetOptions(BaseModel):
"""Deprecated: Use DataRetentionPolicyDeleteOlderSetOptions instead."""

delete_older_than_n_days: int


class DataRetentionPolicyDeleteOlderSetOptions(BaseModel):
delete_older_than_n_days: int


class DataRetentionPolicyDontDeleteSetOptions(BaseModel):
pass # No additional fields needed
Loading
Loading