Signed-off-by: Jess Frazelle <github@jessfraz.com>
This commit is contained in:
Jess Frazelle
2022-07-05 15:33:51 -07:00
parent 30db5097ff
commit 67a03bdd03
43 changed files with 11163 additions and 8262 deletions

View File

@ -81,6 +81,11 @@ def generatePaths(cwd: str, parser: dict) -> dict:
data = parser data = parser
paths = data['paths'] paths = data['paths']
for p in paths: for p in paths:
# If p starts with /oauth2 we can skip it.
# We don't care about generating methods for those.
if p.startswith('/oauth2'):
continue
else:
for method in paths[p]: for method in paths[p]:
print('METHOD: ', method.upper()) print('METHOD: ', method.upper())
# Skip OPTIONS. # Skip OPTIONS.
@ -115,6 +120,8 @@ def generatePath(
request_body_refs = getRequestBodyRefs(endpoint) request_body_refs = getRequestBodyRefs(endpoint)
request_body_type = getRequestBodyType(endpoint) request_body_type = getRequestBodyType(endpoint)
success_type = ""
if len(endpoint_refs) > 0:
success_type = endpoint_refs[0] success_type = endpoint_refs[0]
if fn_name == 'get_file_conversion' or fn_name == 'create_file_conversion': if fn_name == 'get_file_conversion' or fn_name == 'create_file_conversion':
@ -349,8 +356,13 @@ response: Response[""" + success_type + """] = await """ + fn_name + """.asyncio
f.write("\t\t]\n") f.write("\t\t]\n")
else: else:
raise Exception("Unknown array type") raise Exception("Unknown array type")
elif json['type'] == 'string':
f.write(
"\t\tresponse_" +
response_code +
" = response.text\n")
else: else:
raise Exception("Unknown type") raise Exception("Unknown type", json['type'])
else: else:
f.write( f.write(
"\t\tresponse_" + "\t\tresponse_" +
@ -644,7 +656,7 @@ def generateType(path: str, name: str, schema: dict, data: dict):
type_name = schema['type'] type_name = schema['type']
if type_name == 'object': if type_name == 'object':
generateObjectType(file_path, name, schema, type_name, data) generateObjectType(file_path, name, schema, type_name, data)
elif type_name == 'string' and 'enum' in schema: elif type_name == 'string' and 'enum' in schema and schema['enum'] != [None]:
generateEnumType(file_path, name, schema, type_name) generateEnumType(file_path, name, schema, type_name)
elif type_name == 'integer': elif type_name == 'integer':
generateIntegerType(file_path, name, schema, type_name) generateIntegerType(file_path, name, schema, type_name)
@ -719,9 +731,17 @@ def generateEnumType(path: str, name: str, schema: dict, type_name: str):
f.write("class " + name + "(str, Enum):\n") f.write("class " + name + "(str, Enum):\n")
# Iterate over the properties. # Iterate over the properties.
for value in schema['enum']: for value in schema['enum']:
enum_name = camel_to_screaming_snake(value)
if enum_name == '':
enum_name = 'EMPTY'
elif enum_name == '1':
enum_name = 'ONE'
elif enum_name == '2':
enum_name = 'TWO'
f.write( f.write(
"\t" + "\t" +
camel_to_screaming_snake(value) + enum_name +
" = '" + " = '" +
value + value +
"'\n") "'\n")
@ -934,6 +954,16 @@ def renderTypeToDict(
elif 'type' in property_schema['items']: elif 'type' in property_schema['items']:
if property_schema['items']['type'] == 'string': if property_schema['items']['type'] == 'string':
property_type = 'str' property_type = 'str'
elif property_schema['items']['type'] == 'array':
if 'items' in property_schema['items']:
if property_schema['items']['items']['type'] == 'string':
property_type = 'List[str]'
else:
print(" property: ", property_schema)
raise Exception("Unknown property type")
else:
print(" property: ", property_schema)
raise Exception("Unknown property type")
else: else:
print(" property: ", property_schema) print(" property: ", property_schema)
raise Exception("Unknown property type") raise Exception("Unknown property type")
@ -1074,6 +1104,16 @@ def renderTypeInit(
elif 'type' in property_schema['items']: elif 'type' in property_schema['items']:
if property_schema['items']['type'] == 'string': if property_schema['items']['type'] == 'string':
property_type = 'str' property_type = 'str'
elif property_schema['items']['type'] == 'array':
if 'items' in property_schema['items']:
if property_schema['items']['items']['type'] == 'string':
property_type = 'List[str]'
else:
print(" property: ", property_schema)
raise Exception("Unknown property type")
else:
print(" property: ", property_schema)
raise Exception("Unknown property type")
else: else:
print(" property: ", property_schema) print(" property: ", property_schema)
raise Exception("Unknown property type") raise Exception("Unknown property type")
@ -1207,6 +1247,16 @@ def renderTypeFromDict(
elif 'type' in property_schema['items']: elif 'type' in property_schema['items']:
if property_schema['items']['type'] == 'string': if property_schema['items']['type'] == 'string':
property_type = 'str' property_type = 'str'
elif property_schema['items']['type'] == 'array':
if 'items' in property_schema['items']:
if property_schema['items']['items']['type'] == 'string':
property_type = 'List[str]'
else:
print(" property: ", property_schema)
raise Exception("Unknown property type")
else:
print(" property: ", property_schema)
raise Exception("Unknown property type")
else: else:
raise Exception( raise Exception(
" unknown array type: ", " unknown array type: ",
@ -1373,10 +1423,26 @@ def getEndpointRefs(endpoint: dict, data: dict) -> [str]:
refs.append('[' + ref + ']') refs.append('[' + ref + ']')
else: else:
raise Exception("Unknown array type") raise Exception("Unknown array type")
elif json['type'] == 'string':
refs.append('str')
else: else:
raise Exception("Unknown type ", json['type']) raise Exception("Unknown type ", json['type'])
else: else:
refs.append('dict') refs.append('dict')
elif content_type == '*/*':
s = content[content_type]['schema']
if s == {}:
# We don't care it's an empty body.
continue
else:
# Throw an error for an unsupported content type.
print("content: ", content)
raise Exception(
"Unsupported content type: ", content_type)
else:
# Throw an error for an unsupported content type.
print("content: ", content)
raise Exception("Unsupported content type: ", content_type)
elif '$ref' in response: elif '$ref' in response:
schema_name = response['$ref'].replace( schema_name = response['$ref'].replace(
'#/components/responses/', '') '#/components/responses/', '')
@ -1423,6 +1489,18 @@ def getRequestBodyRefs(endpoint: dict) -> [str]:
if '$ref' in json: if '$ref' in json:
ref = json['$ref'].replace('#/components/schemas/', '') ref = json['$ref'].replace('#/components/schemas/', '')
refs.append(ref) refs.append(ref)
elif content_type == 'application/octet-stream':
# do nothing we dont't care
continue
elif content_type == 'application/x-www-form-urlencoded':
form = content[content_type]['schema']
if '$ref' in form:
ref = form['$ref'].replace('#/components/schemas/', '')
refs.append(ref)
else:
# Throw an error for an unsupported content type.
print("content: ", content)
raise Exception("Unsupported content type: ", content_type)
return refs return refs
@ -1444,6 +1522,11 @@ def getRequestBodyType(endpoint: dict) -> str:
return 'bytes' return 'bytes'
elif content_type == 'application/octet-stream': elif content_type == 'application/octet-stream':
return 'bytes' return 'bytes'
elif content_type == 'application/x-www-form-urlencoded':
json = content[content_type]['schema']
if '$ref' in json:
ref = json['$ref'].replace('#/components/schemas/', '')
return ref
else: else:
print(" unsupported content type: ", content_type) print(" unsupported content type: ", content_type)
raise Exception("unsupported content type") raise Exception("unsupported content type")
@ -1470,6 +1553,8 @@ def camel_to_screaming_snake(name: str):
' ', ' ',
'').upper().replace( '').upper().replace(
'-', '-',
'_').replace(
':',
'_') '_')

View File

@ -6,14 +6,14 @@ from ...client import Client
from ...models.async_api_call_results_page import AsyncApiCallResultsPage from ...models.async_api_call_results_page import AsyncApiCallResultsPage
from ...models.error import Error from ...models.error import Error
from ...models.created_at_sort_mode import CreatedAtSortMode from ...models.created_at_sort_mode import CreatedAtSortMode
from ...models.api_call_status import APICallStatus from ...models.api_call_status import ApiCallStatus
from ...types import Response from ...types import Response
def _get_kwargs( def _get_kwargs(
limit: int, limit: int,
page_token: str, page_token: str,
sort_by: CreatedAtSortMode, sort_by: CreatedAtSortMode,
status: APICallStatus, status: ApiCallStatus,
*, *,
client: Client, client: Client,
) -> Dict[str, Any]: ) -> Dict[str, Any]:
@ -56,7 +56,7 @@ def sync_detailed(
limit: int, limit: int,
page_token: str, page_token: str,
sort_by: CreatedAtSortMode, sort_by: CreatedAtSortMode,
status: APICallStatus, status: ApiCallStatus,
*, *,
client: Client, client: Client,
) -> Response[Union[Any, AsyncApiCallResultsPage, Error]]: ) -> Response[Union[Any, AsyncApiCallResultsPage, Error]]:
@ -80,7 +80,7 @@ def sync(
limit: int, limit: int,
page_token: str, page_token: str,
sort_by: CreatedAtSortMode, sort_by: CreatedAtSortMode,
status: APICallStatus, status: ApiCallStatus,
*, *,
client: Client, client: Client,
) -> Optional[Union[Any, AsyncApiCallResultsPage, Error]]: ) -> Optional[Union[Any, AsyncApiCallResultsPage, Error]]:
@ -100,7 +100,7 @@ async def asyncio_detailed(
limit: int, limit: int,
page_token: str, page_token: str,
sort_by: CreatedAtSortMode, sort_by: CreatedAtSortMode,
status: APICallStatus, status: ApiCallStatus,
*, *,
client: Client, client: Client,
) -> Response[Union[Any, AsyncApiCallResultsPage, Error]]: ) -> Response[Union[Any, AsyncApiCallResultsPage, Error]]:
@ -122,7 +122,7 @@ async def asyncio(
limit: int, limit: int,
page_token: str, page_token: str,
sort_by: CreatedAtSortMode, sort_by: CreatedAtSortMode,
status: APICallStatus, status: ApiCallStatus,
*, *,
client: Client, client: Client,
) -> Optional[Union[Any, AsyncApiCallResultsPage, Error]]: ) -> Optional[Union[Any, AsyncApiCallResultsPage, Error]]:

View File

@ -0,0 +1,108 @@
from typing import Any, Dict, Optional, Union, cast
import httpx
from ...client import Client
from ...models.error import Error
from ...models.email_authentication_form import EmailAuthenticationForm
from ...types import Response
def _get_kwargs(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/auth/email".format(client.base_url)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
return {
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
"content": body,
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Any, Error]]:
if response.status_code == 204:
response_204 = None
return response_204
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return None
def _build_response(*, response: httpx.Response) -> Response[Union[Any, Error]]:
return Response(
status_code=response.status_code,
content=response.content,
headers=response.headers,
parsed=_parse_response(response=response),
)
def sync_detailed(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Response[Union[Any, Error]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
response = httpx.post(
verify=client.verify_ssl,
**kwargs,
)
return _build_response(response=response)
def sync(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Optional[Union[Any, Error]]:
return sync_detailed(
body=body,
client=client,
).parsed
async def asyncio_detailed(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Response[Union[Any, Error]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.post(**kwargs)
return _build_response(response=response)
async def asyncio(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Optional[Union[Any, Error]]:
return (
await asyncio_detailed(
body=body,
client=client,
)
).parsed

View File

@ -0,0 +1,125 @@
from typing import Any, Dict, Optional, Union, cast
import httpx
from ...client import Client
from ...models.empty import Empty
from ...models.error import Error
from ...types import Response
def _get_kwargs(
callback_url: str,
email: str,
token: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/auth/email/callback?callback_url={callback_url}&email={email}&token={token}".format(client.base_url, callback_url=callback_url, email=email, token=token)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
return {
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Any, Empty, Error]]:
if response.status_code == 302:
response_302 = Empty.from_dict(response.json())
return response_302
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return None
def _build_response(*, response: httpx.Response) -> Response[Union[Any, Empty, Error]]:
return Response(
status_code=response.status_code,
content=response.content,
headers=response.headers,
parsed=_parse_response(response=response),
)
def sync_detailed(
callback_url: str,
email: str,
token: str,
*,
client: Client,
) -> Response[Union[Any, Empty, Error]]:
kwargs = _get_kwargs(
callback_url=callback_url,
email=email,
token=token,
client=client,
)
response = httpx.get(
verify=client.verify_ssl,
**kwargs,
)
return _build_response(response=response)
def sync(
callback_url: str,
email: str,
token: str,
*,
client: Client,
) -> Optional[Union[Any, Empty, Error]]:
return sync_detailed(
callback_url=callback_url,
email=email,
token=token,
client=client,
).parsed
async def asyncio_detailed(
callback_url: str,
email: str,
token: str,
*,
client: Client,
) -> Response[Union[Any, Empty, Error]]:
kwargs = _get_kwargs(
callback_url=callback_url,
email=email,
token=token,
client=client,
)
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.get(**kwargs)
return _build_response(response=response)
async def asyncio(
callback_url: str,
email: str,
token: str,
*,
client: Client,
) -> Optional[Union[Any, Empty, Error]]:
return (
await asyncio_detailed(
callback_url=callback_url,
email=email,
token=token,
client=client,
)
).parsed

View File

@ -4,15 +4,13 @@ import httpx
from ...client import Client from ...client import Client
from ...models.error import Error from ...models.error import Error
from ...models.login_params import LoginParams
from ...types import Response from ...types import Response
def _get_kwargs( def _get_kwargs(
body: LoginParams,
*, *,
client: Client, client: Client,
) -> Dict[str, Any]: ) -> Dict[str, Any]:
url = "{}/login".format(client.base_url) url = "{}/logout".format(client.base_url)
headers: Dict[str, Any] = client.get_headers() headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies() cookies: Dict[str, Any] = client.get_cookies()
@ -22,7 +20,6 @@ def _get_kwargs(
"headers": headers, "headers": headers,
"cookies": cookies, "cookies": cookies,
"timeout": client.get_timeout(), "timeout": client.get_timeout(),
"content": body,
} }
@ -49,12 +46,10 @@ def _build_response(*, response: httpx.Response) -> Response[Union[Any, Error]]:
def sync_detailed( def sync_detailed(
body: LoginParams,
*, *,
client: Client, client: Client,
) -> Response[Union[Any, Error]]: ) -> Response[Union[Any, Error]]:
kwargs = _get_kwargs( kwargs = _get_kwargs(
body=body,
client=client, client=client,
) )
@ -67,24 +62,21 @@ def sync_detailed(
def sync( def sync(
body: LoginParams,
*, *,
client: Client, client: Client,
) -> Optional[Union[Any, Error]]: ) -> Optional[Union[Any, Error]]:
""" This is used in logout scenarios. """
return sync_detailed( return sync_detailed(
body=body,
client=client, client=client,
).parsed ).parsed
async def asyncio_detailed( async def asyncio_detailed(
body: LoginParams,
*, *,
client: Client, client: Client,
) -> Response[Union[Any, Error]]: ) -> Response[Union[Any, Error]]:
kwargs = _get_kwargs( kwargs = _get_kwargs(
body=body,
client=client, client=client,
) )
@ -95,14 +87,13 @@ async def asyncio_detailed(
async def asyncio( async def asyncio(
body: LoginParams,
*, *,
client: Client, client: Client,
) -> Optional[Union[Any, Error]]: ) -> Optional[Union[Any, Error]]:
""" This is used in logout scenarios. """
return ( return (
await asyncio_detailed( await asyncio_detailed(
body=body,
client=client, client=client,
) )
).parsed ).parsed

View File

@ -0,0 +1 @@
""" Contains methods for accessing the oauth2 API paths: Endpoints that implement OAuth 2.0 grant flows. """

View File

@ -67,7 +67,7 @@ def sync(
client: Client, client: Client,
) -> Optional[Union[Any, ExtendedUser, Error]]: ) -> Optional[Union[Any, ExtendedUser, Error]]:
""" Get the user information for the authenticated user. """ Get the user information for the authenticated user.
Alternatively, you can also use the `/users/me` endpoint. """ Alternatively, you can also use the `/users-extended/me` endpoint. """
return sync_detailed( return sync_detailed(
client=client, client=client,
@ -93,7 +93,7 @@ async def asyncio(
client: Client, client: Client,
) -> Optional[Union[Any, ExtendedUser, Error]]: ) -> Optional[Union[Any, ExtendedUser, Error]]:
""" Get the user information for the authenticated user. """ Get the user information for the authenticated user.
Alternatively, you can also use the `/users/me` endpoint. """ Alternatively, you can also use the `/users-extended/me` endpoint. """
return ( return (
await asyncio_detailed( await asyncio_detailed(

View File

@ -1,30 +1,40 @@
""" Contains all the data models used in inputs/outputs """ """ Contains all the data models used in inputs/outputs """
from .api_call_status import APICallStatus from .account_provider import AccountProvider
from .address import Address from .address import Address
from .api_call_query_group import ApiCallQueryGroup from .api_call_query_group import ApiCallQueryGroup
from .api_call_query_group_by import ApiCallQueryGroupBy from .api_call_query_group_by import ApiCallQueryGroupBy
from .api_call_status import ApiCallStatus
from .api_call_with_price import ApiCallWithPrice from .api_call_with_price import ApiCallWithPrice
from .api_call_with_price_results_page import ApiCallWithPriceResultsPage from .api_call_with_price_results_page import ApiCallWithPriceResultsPage
from .api_token import ApiToken from .api_token import ApiToken
from .api_token_results_page import ApiTokenResultsPage from .api_token_results_page import ApiTokenResultsPage
from .async_api_call_type import AsyncAPICallType
from .async_api_call import AsyncApiCall from .async_api_call import AsyncApiCall
from .async_api_call_results_page import AsyncApiCallResultsPage from .async_api_call_results_page import AsyncApiCallResultsPage
from .async_api_call_type import AsyncApiCallType
from .base64_data import Base64Data
from .billing_info import BillingInfo from .billing_info import BillingInfo
from .cache_metadata import CacheMetadata from .cache_metadata import CacheMetadata
from .card_details import CardDetails from .card_details import CardDetails
from .cluster import Cluster from .cluster import Cluster
from .code_language import CodeLanguage from .code_language import CodeLanguage
from .code_output import CodeOutput from .code_output import CodeOutput
from .commit import Commit
from .connection import Connection from .connection import Connection
from .created_at_sort_mode import CreatedAtSortMode from .created_at_sort_mode import CreatedAtSortMode
from .currency import Currency from .currency import Currency
from .customer import Customer from .customer import Customer
from .device_access_token_request_form import DeviceAccessTokenRequestForm
from .device_auth_request_form import DeviceAuthRequestForm
from .device_auth_verify_params import DeviceAuthVerifyParams
from .docker_system_info import DockerSystemInfo
from .duration import Duration from .duration import Duration
from .email_authentication_form import EmailAuthenticationForm
from .empty import Empty
from .engine_metadata import EngineMetadata from .engine_metadata import EngineMetadata
from .environment import Environment from .environment import Environment
from .error import Error from .error import Error
from .executor_metadata import ExecutorMetadata
from .extended_user import ExtendedUser from .extended_user import ExtendedUser
from .extended_user_results_page import ExtendedUserResultsPage from .extended_user_results_page import ExtendedUserResultsPage
from .file_conversion import FileConversion from .file_conversion import FileConversion
@ -35,27 +45,37 @@ from .file_source_format import FileSourceFormat
from .file_system_metadata import FileSystemMetadata from .file_system_metadata import FileSystemMetadata
from .file_volume import FileVolume from .file_volume import FileVolume
from .gateway import Gateway from .gateway import Gateway
from .index_info import IndexInfo
from .invoice import Invoice from .invoice import Invoice
from .invoice_line_item import InvoiceLineItem from .invoice_line_item import InvoiceLineItem
from .invoice_status import InvoiceStatus from .invoice_status import InvoiceStatus
from .ip_addr import IpAddr
from .jetstream import Jetstream from .jetstream import Jetstream
from .jetstream_api_stats import JetstreamApiStats from .jetstream_api_stats import JetstreamApiStats
from .jetstream_config import JetstreamConfig from .jetstream_config import JetstreamConfig
from .jetstream_stats import JetstreamStats from .jetstream_stats import JetstreamStats
from .leaf_node import LeafNode from .leaf_node import LeafNode
from .login_params import LoginParams
from .meta_cluster_info import MetaClusterInfo from .meta_cluster_info import MetaClusterInfo
from .metadata import Metadata from .metadata import Metadata
from .method import Method from .method import Method
from .o_auth2_client_info import OAuth2ClientInfo
from .o_auth2_grant_type import OAuth2GrantType
from .output_file import OutputFile from .output_file import OutputFile
from .payment_intent import PaymentIntent from .payment_intent import PaymentIntent
from .payment_method import PaymentMethod from .payment_method import PaymentMethod
from .payment_method_card_checks import PaymentMethodCardChecks from .payment_method_card_checks import PaymentMethodCardChecks
from .payment_method_type import PaymentMethodType from .payment_method_type import PaymentMethodType
from .phone_number import PhoneNumber from .phone_number import PhoneNumber
from .plugins_info import PluginsInfo
from .pong import Pong from .pong import Pong
from .registry_service_config import RegistryServiceConfig
from .runtime import Runtime
from .session import Session from .session import Session
from .status_code import StatusCode from .status_code import StatusCode
from .system_info_cgroup_driver_enum import SystemInfoCgroupDriverEnum
from .system_info_cgroup_version_enum import SystemInfoCgroupVersionEnum
from .system_info_default_address_pools import SystemInfoDefaultAddressPools
from .system_info_isolation_enum import SystemInfoIsolationEnum
from .unit_conversion import UnitConversion from .unit_conversion import UnitConversion
from .unit_metric_format import UnitMetricFormat from .unit_metric_format import UnitMetricFormat
from .update_user import UpdateUser from .update_user import UpdateUser

View File

@ -0,0 +1,9 @@
from enum import Enum
class AccountProvider(str, Enum):
GOOGLE = 'google'
GITHUB = 'github'
def __str__(self) -> str:
return str(self.value)

View File

@ -1,7 +1,7 @@
from enum import Enum from enum import Enum
class APICallStatus(str, Enum): class ApiCallStatus(str, Enum):
QUEUED = 'Queued' QUEUED = 'Queued'
UPLOADED = 'Uploaded' UPLOADED = 'Uploaded'
IN_PROGRESS = 'In Progress' IN_PROGRESS = 'In Progress'

View File

@ -4,7 +4,9 @@ from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr import attr
from dateutil.parser import isoparse from dateutil.parser import isoparse
from ..models.duration import Duration
from ..models.uuid import Uuid from ..models.uuid import Uuid
from ..models.ip_addr import IpAddr
from ..models.method import Method from ..models.method import Method
from ..models.status_code import StatusCode from ..models.status_code import StatusCode
from ..types import UNSET, Unset from ..types import UNSET, Unset
@ -17,11 +19,11 @@ class ApiCallWithPrice:
""" """ """ """
completed_at: Union[Unset, datetime.datetime] = UNSET completed_at: Union[Unset, datetime.datetime] = UNSET
created_at: Union[Unset, datetime.datetime] = UNSET created_at: Union[Unset, datetime.datetime] = UNSET
duration: Union[Unset, int] = UNSET duration: Union[Unset, Duration] = UNSET
email: Union[Unset, str] = UNSET email: Union[Unset, str] = UNSET
endpoint: Union[Unset, str] = UNSET endpoint: Union[Unset, str] = UNSET
id: Union[Unset, str] = UNSET id: Union[Unset, str] = UNSET
ip_address: Union[Unset, str] = UNSET ip_address: Union[Unset, IpAddr] = UNSET
method: Union[Unset, Method] = UNSET method: Union[Unset, Method] = UNSET
minutes: Union[Unset, int] = UNSET minutes: Union[Unset, int] = UNSET
origin: Union[Unset, str] = UNSET origin: Union[Unset, str] = UNSET
@ -46,11 +48,15 @@ class ApiCallWithPrice:
created_at: Union[Unset, str] = UNSET created_at: Union[Unset, str] = UNSET
if not isinstance(self.created_at, Unset): if not isinstance(self.created_at, Unset):
created_at = self.created_at.isoformat() created_at = self.created_at.isoformat()
duration = self.duration duration: Union[Unset, str] = UNSET
if not isinstance(self.duration, Unset):
duration = self.duration.value
email = self.email email = self.email
endpoint = self.endpoint endpoint = self.endpoint
id = self.id id = self.id
ip_address = self.ip_address ip_address: Union[Unset, str] = UNSET
if not isinstance(self.ip_address, Unset):
ip_address = self.ip_address.value
method: Union[Unset, str] = UNSET method: Union[Unset, str] = UNSET
if not isinstance(self.method, Unset): if not isinstance(self.method, Unset):
method = self.method.value method = self.method.value
@ -139,7 +145,12 @@ class ApiCallWithPrice:
else: else:
created_at = isoparse(_created_at) created_at = isoparse(_created_at)
duration = d.pop("duration", UNSET) _duration = d.pop("duration", UNSET)
duration: Union[Unset, Duration]
if isinstance(_duration, Unset):
duration = UNSET
else:
duration = Duration(_duration)
email = d.pop("email", UNSET) email = d.pop("email", UNSET)
@ -147,7 +158,12 @@ class ApiCallWithPrice:
id = d.pop("id", UNSET) id = d.pop("id", UNSET)
ip_address = d.pop("ip_address", UNSET) _ip_address = d.pop("ip_address", UNSET)
ip_address: Union[Unset, IpAddr]
if isinstance(_ip_address, Unset):
ip_address = UNSET
else:
ip_address = IpAddr(_ip_address)
_method = d.pop("method", UNSET) _method = d.pop("method", UNSET)
method: Union[Unset, Method] method: Union[Unset, Method]

View File

@ -5,8 +5,8 @@ import attr
from dateutil.parser import isoparse from dateutil.parser import isoparse
from ..models.uuid import Uuid from ..models.uuid import Uuid
from ..models.api_call_status import APICallStatus from ..models.api_call_status import ApiCallStatus
from ..models.async_api_call_type import AsyncAPICallType from ..models.async_api_call_type import AsyncApiCallType
from ..types import UNSET, Unset from ..types import UNSET, Unset
T = TypeVar("T", bound="AsyncApiCall") T = TypeVar("T", bound="AsyncApiCall")
@ -22,8 +22,8 @@ class AsyncApiCall:
input: Union[Unset, Any] = UNSET input: Union[Unset, Any] = UNSET
output: Union[Unset, Any] = UNSET output: Union[Unset, Any] = UNSET
started_at: Union[Unset, datetime.datetime] = UNSET started_at: Union[Unset, datetime.datetime] = UNSET
status: Union[Unset, APICallStatus] = UNSET status: Union[Unset, ApiCallStatus] = UNSET
type: Union[Unset, AsyncAPICallType] = UNSET type: Union[Unset, AsyncApiCallType] = UNSET
updated_at: Union[Unset, datetime.datetime] = UNSET updated_at: Union[Unset, datetime.datetime] = UNSET
user_id: Union[Unset, str] = UNSET user_id: Union[Unset, str] = UNSET
worker: Union[Unset, str] = UNSET worker: Union[Unset, str] = UNSET
@ -117,18 +117,18 @@ class AsyncApiCall:
started_at = isoparse(_started_at) started_at = isoparse(_started_at)
_status = d.pop("status", UNSET) _status = d.pop("status", UNSET)
status: Union[Unset, APICallStatus] status: Union[Unset, ApiCallStatus]
if isinstance(_status, Unset): if isinstance(_status, Unset):
status = UNSET status = UNSET
else: else:
status = APICallStatus(_status) status = ApiCallStatus(_status)
_type = d.pop("type", UNSET) _type = d.pop("type", UNSET)
type: Union[Unset, AsyncAPICallType] type: Union[Unset, AsyncApiCallType]
if isinstance(_type, Unset): if isinstance(_type, Unset):
type = UNSET type = UNSET
else: else:
type = AsyncAPICallType(_type) type = AsyncApiCallType(_type)
_updated_at = d.pop("updated_at", UNSET) _updated_at = d.pop("updated_at", UNSET)
updated_at: Union[Unset, datetime.datetime] updated_at: Union[Unset, datetime.datetime]

View File

@ -1,7 +1,7 @@
from enum import Enum from enum import Enum
class AsyncAPICallType(str, Enum): class AsyncApiCallType(str, Enum):
FILE_CONVERSION = 'FileConversion' FILE_CONVERSION = 'FileConversion'
FILE_VOLUME = 'FileVolume' FILE_VOLUME = 'FileVolume'
FILE_MASS = 'FileMass' FILE_MASS = 'FileMass'

View File

@ -0,0 +1,4 @@
class Base64Data(str):
def __str__(self) -> str:
return self

View File

@ -3,7 +3,6 @@ from enum import Enum
class CodeLanguage(str, Enum): class CodeLanguage(str, Enum):
GO = 'go' GO = 'go'
RUST = 'rust'
PYTHON = 'python' PYTHON = 'python'
NODE = 'node' NODE = 'node'

61
kittycad/models/commit.py Normal file
View File

@ -0,0 +1,61 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..types import UNSET, Unset
T = TypeVar("T", bound="Commit")
@attr.s(auto_attribs=True)
class Commit:
""" """
expected: Union[Unset, str] = UNSET
id: Union[Unset, str] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
expected = self.expected
id = self.id
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if expected is not UNSET:
field_dict['expected'] = expected
if id is not UNSET:
field_dict['id'] = id
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
expected = d.pop("expected", UNSET)
id = d.pop("id", UNSET)
commit = cls(
expected=expected,
id=id,
)
commit.additional_properties = d
return commit
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -8,7 +8,6 @@ from ..models.cluster import Cluster
from ..models.gateway import Gateway from ..models.gateway import Gateway
from ..models.jetstream import Jetstream from ..models.jetstream import Jetstream
from ..models.leaf_node import LeafNode from ..models.leaf_node import LeafNode
from ..models.duration import Duration
from ..types import UNSET, Unset from ..types import UNSET, Unset
T = TypeVar("T", bound="Connection") T = TypeVar("T", bound="Connection")
@ -33,10 +32,8 @@ class Connection:
http_port: Union[Unset, int] = UNSET http_port: Union[Unset, int] = UNSET
http_req_stats: Union[Unset, Any] = UNSET http_req_stats: Union[Unset, Any] = UNSET
https_port: Union[Unset, int] = UNSET https_port: Union[Unset, int] = UNSET
id: Union[Unset, int] = UNSET
in_bytes: Union[Unset, int] = UNSET in_bytes: Union[Unset, int] = UNSET
in_msgs: Union[Unset, int] = UNSET in_msgs: Union[Unset, int] = UNSET
ip: Union[Unset, str] = UNSET
jetstream: Union[Unset, Jetstream] = UNSET jetstream: Union[Unset, Jetstream] = UNSET
leaf: Union[Unset, LeafNode] = UNSET leaf: Union[Unset, LeafNode] = UNSET
leafnodes: Union[Unset, int] = UNSET leafnodes: Union[Unset, int] = UNSET
@ -54,7 +51,6 @@ class Connection:
proto: Union[Unset, int] = UNSET proto: Union[Unset, int] = UNSET
remotes: Union[Unset, int] = UNSET remotes: Union[Unset, int] = UNSET
routes: Union[Unset, int] = UNSET routes: Union[Unset, int] = UNSET
rtt: Union[Unset, Duration] = UNSET
server_id: Union[Unset, str] = UNSET server_id: Union[Unset, str] = UNSET
server_name: Union[Unset, str] = UNSET server_name: Union[Unset, str] = UNSET
slow_consumers: Union[Unset, int] = UNSET slow_consumers: Union[Unset, int] = UNSET
@ -92,10 +88,8 @@ class Connection:
http_port = self.http_port http_port = self.http_port
http_req_stats = self.http_req_stats http_req_stats = self.http_req_stats
https_port = self.https_port https_port = self.https_port
id = self.id
in_bytes = self.in_bytes in_bytes = self.in_bytes
in_msgs = self.in_msgs in_msgs = self.in_msgs
ip = self.ip
jetstream: Union[Unset, str] = UNSET jetstream: Union[Unset, str] = UNSET
if not isinstance(self.jetstream, Unset): if not isinstance(self.jetstream, Unset):
jetstream = self.jetstream.value jetstream = self.jetstream.value
@ -119,9 +113,6 @@ class Connection:
proto = self.proto proto = self.proto
remotes = self.remotes remotes = self.remotes
routes = self.routes routes = self.routes
rtt: Union[Unset, str] = UNSET
if not isinstance(self.rtt, Unset):
rtt = self.rtt.value
server_id = self.server_id server_id = self.server_id
server_name = self.server_name server_name = self.server_name
slow_consumers = self.slow_consumers slow_consumers = self.slow_consumers
@ -171,14 +162,10 @@ class Connection:
field_dict['http_req_stats'] = http_req_stats field_dict['http_req_stats'] = http_req_stats
if https_port is not UNSET: if https_port is not UNSET:
field_dict['https_port'] = https_port field_dict['https_port'] = https_port
if id is not UNSET:
field_dict['id'] = id
if in_bytes is not UNSET: if in_bytes is not UNSET:
field_dict['in_bytes'] = in_bytes field_dict['in_bytes'] = in_bytes
if in_msgs is not UNSET: if in_msgs is not UNSET:
field_dict['in_msgs'] = in_msgs field_dict['in_msgs'] = in_msgs
if ip is not UNSET:
field_dict['ip'] = ip
if jetstream is not UNSET: if jetstream is not UNSET:
field_dict['jetstream'] = jetstream field_dict['jetstream'] = jetstream
if leaf is not UNSET: if leaf is not UNSET:
@ -213,8 +200,6 @@ class Connection:
field_dict['remotes'] = remotes field_dict['remotes'] = remotes
if routes is not UNSET: if routes is not UNSET:
field_dict['routes'] = routes field_dict['routes'] = routes
if rtt is not UNSET:
field_dict['rtt'] = rtt
if server_id is not UNSET: if server_id is not UNSET:
field_dict['server_id'] = server_id field_dict['server_id'] = server_id
if server_name is not UNSET: if server_name is not UNSET:
@ -289,14 +274,10 @@ class Connection:
http_req_stats = d.pop("http_req_stats", UNSET) http_req_stats = d.pop("http_req_stats", UNSET)
https_port = d.pop("https_port", UNSET) https_port = d.pop("https_port", UNSET)
id = d.pop("id", UNSET)
in_bytes = d.pop("in_bytes", UNSET) in_bytes = d.pop("in_bytes", UNSET)
in_msgs = d.pop("in_msgs", UNSET) in_msgs = d.pop("in_msgs", UNSET)
ip = d.pop("ip", UNSET)
_jetstream = d.pop("jetstream", UNSET) _jetstream = d.pop("jetstream", UNSET)
jetstream: Union[Unset, Jetstream] jetstream: Union[Unset, Jetstream]
if isinstance(_jetstream, Unset): if isinstance(_jetstream, Unset):
@ -346,13 +327,6 @@ class Connection:
routes = d.pop("routes", UNSET) routes = d.pop("routes", UNSET)
_rtt = d.pop("rtt", UNSET)
rtt: Union[Unset, Duration]
if isinstance(_rtt, Unset):
rtt = UNSET
else:
rtt = Duration(_rtt)
server_id = d.pop("server_id", UNSET) server_id = d.pop("server_id", UNSET)
server_name = d.pop("server_name", UNSET) server_name = d.pop("server_name", UNSET)
@ -397,10 +371,8 @@ class Connection:
http_port=http_port, http_port=http_port,
http_req_stats=http_req_stats, http_req_stats=http_req_stats,
https_port=https_port, https_port=https_port,
id=id,
in_bytes=in_bytes, in_bytes=in_bytes,
in_msgs=in_msgs, in_msgs=in_msgs,
ip=ip,
jetstream=jetstream, jetstream=jetstream,
leaf=leaf, leaf=leaf,
leafnodes=leafnodes, leafnodes=leafnodes,
@ -418,7 +390,6 @@ class Connection:
proto=proto, proto=proto,
remotes=remotes, remotes=remotes,
routes=routes, routes=routes,
rtt=rtt,
server_id=server_id, server_id=server_id,
server_name=server_name, server_name=server_name,
slow_consumers=slow_consumers, slow_consumers=slow_consumers,

View File

@ -0,0 +1,76 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..models.o_auth2_grant_type import OAuth2GrantType
from ..types import UNSET, Unset
T = TypeVar("T", bound="DeviceAccessTokenRequestForm")
@attr.s(auto_attribs=True)
class DeviceAccessTokenRequestForm:
""" """
client_id: Union[Unset, str] = UNSET
device_code: Union[Unset, str] = UNSET
grant_type: Union[Unset, OAuth2GrantType] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
client_id = self.client_id
device_code = self.device_code
grant_type: Union[Unset, str] = UNSET
if not isinstance(self.grant_type, Unset):
grant_type = self.grant_type.value
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if client_id is not UNSET:
field_dict['client_id'] = client_id
if device_code is not UNSET:
field_dict['device_code'] = device_code
if grant_type is not UNSET:
field_dict['grant_type'] = grant_type
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
client_id = d.pop("client_id", UNSET)
device_code = d.pop("device_code", UNSET)
_grant_type = d.pop("grant_type", UNSET)
grant_type: Union[Unset, OAuth2GrantType]
if isinstance(_grant_type, Unset):
grant_type = UNSET
else:
grant_type = OAuth2GrantType(_grant_type)
device_access_token_request_form = cls(
client_id=client_id,
device_code=device_code,
grant_type=grant_type,
)
device_access_token_request_form.additional_properties = d
return device_access_token_request_form
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -4,38 +4,38 @@ import attr
from ..types import UNSET, Unset from ..types import UNSET, Unset
T = TypeVar("T", bound="LoginParams") T = TypeVar("T", bound="DeviceAuthRequestForm")
@attr.s(auto_attribs=True) @attr.s(auto_attribs=True)
class LoginParams: class DeviceAuthRequestForm:
""" """ """ """
session: Union[Unset, str] = UNSET client_id: Union[Unset, str] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict) additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]: def to_dict(self) -> Dict[str, Any]:
session = self.session client_id = self.client_id
field_dict: Dict[str, Any] = {} field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties) field_dict.update(self.additional_properties)
field_dict.update({}) field_dict.update({})
if session is not UNSET: if client_id is not UNSET:
field_dict['session'] = session field_dict['client_id'] = client_id
return field_dict return field_dict
@classmethod @classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T: def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy() d = src_dict.copy()
session = d.pop("session", UNSET) client_id = d.pop("client_id", UNSET)
login_params = cls( device_auth_request_form = cls(
session=session, client_id=client_id,
) )
login_params.additional_properties = d device_auth_request_form.additional_properties = d
return login_params return device_auth_request_form
@property @property
def additional_keys(self) -> List[str]: def additional_keys(self) -> List[str]:

View File

@ -0,0 +1,54 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..types import UNSET, Unset
T = TypeVar("T", bound="DeviceAuthVerifyParams")
@attr.s(auto_attribs=True)
class DeviceAuthVerifyParams:
""" """
user_code: Union[Unset, str] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
user_code = self.user_code
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if user_code is not UNSET:
field_dict['user_code'] = user_code
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
user_code = d.pop("user_code", UNSET)
device_auth_verify_params = cls(
user_code=user_code,
)
device_auth_verify_params.additional_properties = d
return device_auth_verify_params
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -0,0 +1,546 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..models.system_info_cgroup_driver_enum import SystemInfoCgroupDriverEnum
from ..models.system_info_cgroup_version_enum import SystemInfoCgroupVersionEnum
from ..models.commit import Commit
from ..models.system_info_isolation_enum import SystemInfoIsolationEnum
from ..models.plugins_info import PluginsInfo
from ..models.registry_service_config import RegistryServiceConfig
from ..models.runtime import Runtime
from ..types import UNSET, Unset
T = TypeVar("T", bound="DockerSystemInfo")
@attr.s(auto_attribs=True)
class DockerSystemInfo:
""" """
architecture: Union[Unset, str] = UNSET
bridge_nf_ip6tables: Union[Unset, bool] = False
bridge_nf_iptables: Union[Unset, bool] = False
cgroup_driver: Union[Unset, SystemInfoCgroupDriverEnum] = UNSET
cgroup_version: Union[Unset, SystemInfoCgroupVersionEnum] = UNSET
cluster_advertise: Union[Unset, str] = UNSET
cluster_store: Union[Unset, str] = UNSET
containerd_commit: Union[Unset, Commit] = UNSET
containers: Union[Unset, int] = UNSET
containers_paused: Union[Unset, int] = UNSET
containers_running: Union[Unset, int] = UNSET
containers_stopped: Union[Unset, int] = UNSET
cpu_cfs_period: Union[Unset, bool] = False
cpu_cfs_quota: Union[Unset, bool] = False
cpu_set: Union[Unset, bool] = False
cpu_shares: Union[Unset, bool] = False
debug: Union[Unset, bool] = False
from ..models.system_info_default_address_pools import SystemInfoDefaultAddressPools
default_address_pools: Union[Unset,
List[SystemInfoDefaultAddressPools]] = UNSET
default_runtime: Union[Unset, str] = UNSET
docker_root_dir: Union[Unset, str] = UNSET
driver: Union[Unset, str] = UNSET
driver_status: Union[Unset, List[List[str]]] = UNSET
experimental_build: Union[Unset, bool] = False
http_proxy: Union[Unset, str] = UNSET
https_proxy: Union[Unset, str] = UNSET
id: Union[Unset, str] = UNSET
images: Union[Unset, int] = UNSET
index_server_address: Union[Unset, str] = UNSET
init_binary: Union[Unset, str] = UNSET
init_commit: Union[Unset, Commit] = UNSET
ipv4_forwarding: Union[Unset, bool] = False
isolation: Union[Unset, SystemInfoIsolationEnum] = UNSET
kernel_memory: Union[Unset, bool] = False
kernel_memory_tcp: Union[Unset, bool] = False
kernel_version: Union[Unset, str] = UNSET
labels: Union[Unset, List[str]] = UNSET
live_restore_enabled: Union[Unset, bool] = False
logging_driver: Union[Unset, str] = UNSET
mem_total: Union[Unset, int] = UNSET
memory_limit: Union[Unset, bool] = False
n_events_listener: Union[Unset, int] = UNSET
n_fd: Union[Unset, int] = UNSET
name: Union[Unset, str] = UNSET
ncpu: Union[Unset, int] = UNSET
no_proxy: Union[Unset, str] = UNSET
oom_kill_disable: Union[Unset, bool] = False
operating_system: Union[Unset, str] = UNSET
os_type: Union[Unset, str] = UNSET
os_version: Union[Unset, str] = UNSET
pids_limit: Union[Unset, bool] = False
plugins: Union[Unset, PluginsInfo] = UNSET
product_license: Union[Unset, str] = UNSET
registry_config: Union[Unset, RegistryServiceConfig] = UNSET
runc_commit: Union[Unset, Commit] = UNSET
runtimes: Union[Unset, Any] = UNSET
security_options: Union[Unset, List[str]] = UNSET
server_version: Union[Unset, str] = UNSET
swap_limit: Union[Unset, bool] = False
system_time: Union[Unset, str] = UNSET
warnings: Union[Unset, List[str]] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
architecture = self.architecture
bridge_nf_ip6tables = self.bridge_nf_ip6tables
bridge_nf_iptables = self.bridge_nf_iptables
cgroup_driver: Union[Unset, str] = UNSET
if not isinstance(self.cgroup_driver, Unset):
cgroup_driver = self.cgroup_driver.value
cgroup_version: Union[Unset, str] = UNSET
if not isinstance(self.cgroup_version, Unset):
cgroup_version = self.cgroup_version.value
cluster_advertise = self.cluster_advertise
cluster_store = self.cluster_store
containerd_commit: Union[Unset, str] = UNSET
if not isinstance(self.containerd_commit, Unset):
containerd_commit = self.containerd_commit.value
containers = self.containers
containers_paused = self.containers_paused
containers_running = self.containers_running
containers_stopped = self.containers_stopped
cpu_cfs_period = self.cpu_cfs_period
cpu_cfs_quota = self.cpu_cfs_quota
cpu_set = self.cpu_set
cpu_shares = self.cpu_shares
debug = self.debug
from ..models.system_info_default_address_pools import SystemInfoDefaultAddressPools
default_address_pools: Union[Unset,
List[SystemInfoDefaultAddressPools]] = UNSET
if not isinstance(self.default_address_pools, Unset):
default_address_pools = self.default_address_pools
default_runtime = self.default_runtime
docker_root_dir = self.docker_root_dir
driver = self.driver
driver_status: Union[Unset, List[List[str]]] = UNSET
if not isinstance(self.driver_status, Unset):
driver_status = self.driver_status
experimental_build = self.experimental_build
http_proxy = self.http_proxy
https_proxy = self.https_proxy
id = self.id
images = self.images
index_server_address = self.index_server_address
init_binary = self.init_binary
init_commit: Union[Unset, str] = UNSET
if not isinstance(self.init_commit, Unset):
init_commit = self.init_commit.value
ipv4_forwarding = self.ipv4_forwarding
isolation: Union[Unset, str] = UNSET
if not isinstance(self.isolation, Unset):
isolation = self.isolation.value
kernel_memory = self.kernel_memory
kernel_memory_tcp = self.kernel_memory_tcp
kernel_version = self.kernel_version
labels: Union[Unset, List[str]] = UNSET
if not isinstance(self.labels, Unset):
labels = self.labels
live_restore_enabled = self.live_restore_enabled
logging_driver = self.logging_driver
mem_total = self.mem_total
memory_limit = self.memory_limit
n_events_listener = self.n_events_listener
n_fd = self.n_fd
name = self.name
ncpu = self.ncpu
no_proxy = self.no_proxy
oom_kill_disable = self.oom_kill_disable
operating_system = self.operating_system
os_type = self.os_type
os_version = self.os_version
pids_limit = self.pids_limit
plugins: Union[Unset, str] = UNSET
if not isinstance(self.plugins, Unset):
plugins = self.plugins.value
product_license = self.product_license
registry_config: Union[Unset, str] = UNSET
if not isinstance(self.registry_config, Unset):
registry_config = self.registry_config.value
runc_commit: Union[Unset, str] = UNSET
if not isinstance(self.runc_commit, Unset):
runc_commit = self.runc_commit.value
runtimes = self.runtimes
security_options: Union[Unset, List[str]] = UNSET
if not isinstance(self.security_options, Unset):
security_options = self.security_options
server_version = self.server_version
swap_limit = self.swap_limit
system_time = self.system_time
warnings: Union[Unset, List[str]] = UNSET
if not isinstance(self.warnings, Unset):
warnings = self.warnings
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if architecture is not UNSET:
field_dict['architecture'] = architecture
if bridge_nf_ip6tables is not UNSET:
field_dict['bridge_nf_ip6tables'] = bridge_nf_ip6tables
if bridge_nf_iptables is not UNSET:
field_dict['bridge_nf_iptables'] = bridge_nf_iptables
if cgroup_driver is not UNSET:
field_dict['cgroup_driver'] = cgroup_driver
if cgroup_version is not UNSET:
field_dict['cgroup_version'] = cgroup_version
if cluster_advertise is not UNSET:
field_dict['cluster_advertise'] = cluster_advertise
if cluster_store is not UNSET:
field_dict['cluster_store'] = cluster_store
if containerd_commit is not UNSET:
field_dict['containerd_commit'] = containerd_commit
if containers is not UNSET:
field_dict['containers'] = containers
if containers_paused is not UNSET:
field_dict['containers_paused'] = containers_paused
if containers_running is not UNSET:
field_dict['containers_running'] = containers_running
if containers_stopped is not UNSET:
field_dict['containers_stopped'] = containers_stopped
if cpu_cfs_period is not UNSET:
field_dict['cpu_cfs_period'] = cpu_cfs_period
if cpu_cfs_quota is not UNSET:
field_dict['cpu_cfs_quota'] = cpu_cfs_quota
if cpu_set is not UNSET:
field_dict['cpu_set'] = cpu_set
if cpu_shares is not UNSET:
field_dict['cpu_shares'] = cpu_shares
if debug is not UNSET:
field_dict['debug'] = debug
if default_address_pools is not UNSET:
field_dict['default_address_pools'] = default_address_pools
if default_runtime is not UNSET:
field_dict['default_runtime'] = default_runtime
if docker_root_dir is not UNSET:
field_dict['docker_root_dir'] = docker_root_dir
if driver is not UNSET:
field_dict['driver'] = driver
if driver_status is not UNSET:
field_dict['driver_status'] = driver_status
if experimental_build is not UNSET:
field_dict['experimental_build'] = experimental_build
if http_proxy is not UNSET:
field_dict['http_proxy'] = http_proxy
if https_proxy is not UNSET:
field_dict['https_proxy'] = https_proxy
if id is not UNSET:
field_dict['id'] = id
if images is not UNSET:
field_dict['images'] = images
if index_server_address is not UNSET:
field_dict['index_server_address'] = index_server_address
if init_binary is not UNSET:
field_dict['init_binary'] = init_binary
if init_commit is not UNSET:
field_dict['init_commit'] = init_commit
if ipv4_forwarding is not UNSET:
field_dict['ipv4_forwarding'] = ipv4_forwarding
if isolation is not UNSET:
field_dict['isolation'] = isolation
if kernel_memory is not UNSET:
field_dict['kernel_memory'] = kernel_memory
if kernel_memory_tcp is not UNSET:
field_dict['kernel_memory_tcp'] = kernel_memory_tcp
if kernel_version is not UNSET:
field_dict['kernel_version'] = kernel_version
if labels is not UNSET:
field_dict['labels'] = labels
if live_restore_enabled is not UNSET:
field_dict['live_restore_enabled'] = live_restore_enabled
if logging_driver is not UNSET:
field_dict['logging_driver'] = logging_driver
if mem_total is not UNSET:
field_dict['mem_total'] = mem_total
if memory_limit is not UNSET:
field_dict['memory_limit'] = memory_limit
if n_events_listener is not UNSET:
field_dict['n_events_listener'] = n_events_listener
if n_fd is not UNSET:
field_dict['n_fd'] = n_fd
if name is not UNSET:
field_dict['name'] = name
if ncpu is not UNSET:
field_dict['ncpu'] = ncpu
if no_proxy is not UNSET:
field_dict['no_proxy'] = no_proxy
if oom_kill_disable is not UNSET:
field_dict['oom_kill_disable'] = oom_kill_disable
if operating_system is not UNSET:
field_dict['operating_system'] = operating_system
if os_type is not UNSET:
field_dict['os_type'] = os_type
if os_version is not UNSET:
field_dict['os_version'] = os_version
if pids_limit is not UNSET:
field_dict['pids_limit'] = pids_limit
if plugins is not UNSET:
field_dict['plugins'] = plugins
if product_license is not UNSET:
field_dict['product_license'] = product_license
if registry_config is not UNSET:
field_dict['registry_config'] = registry_config
if runc_commit is not UNSET:
field_dict['runc_commit'] = runc_commit
if runtimes is not UNSET:
field_dict['runtimes'] = runtimes
if security_options is not UNSET:
field_dict['security_options'] = security_options
if server_version is not UNSET:
field_dict['server_version'] = server_version
if swap_limit is not UNSET:
field_dict['swap_limit'] = swap_limit
if system_time is not UNSET:
field_dict['system_time'] = system_time
if warnings is not UNSET:
field_dict['warnings'] = warnings
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
architecture = d.pop("architecture", UNSET)
bridge_nf_ip6tables = d.pop("bridge_nf_ip6tables", UNSET)
bridge_nf_iptables = d.pop("bridge_nf_iptables", UNSET)
_cgroup_driver = d.pop("cgroup_driver", UNSET)
cgroup_driver: Union[Unset, SystemInfoCgroupDriverEnum]
if isinstance(_cgroup_driver, Unset):
cgroup_driver = UNSET
else:
cgroup_driver = SystemInfoCgroupDriverEnum(_cgroup_driver)
_cgroup_version = d.pop("cgroup_version", UNSET)
cgroup_version: Union[Unset, SystemInfoCgroupVersionEnum]
if isinstance(_cgroup_version, Unset):
cgroup_version = UNSET
else:
cgroup_version = SystemInfoCgroupVersionEnum(_cgroup_version)
cluster_advertise = d.pop("cluster_advertise", UNSET)
cluster_store = d.pop("cluster_store", UNSET)
_containerd_commit = d.pop("containerd_commit", UNSET)
containerd_commit: Union[Unset, Commit]
if isinstance(_containerd_commit, Unset):
containerd_commit = UNSET
else:
containerd_commit = Commit(_containerd_commit)
containers = d.pop("containers", UNSET)
containers_paused = d.pop("containers_paused", UNSET)
containers_running = d.pop("containers_running", UNSET)
containers_stopped = d.pop("containers_stopped", UNSET)
cpu_cfs_period = d.pop("cpu_cfs_period", UNSET)
cpu_cfs_quota = d.pop("cpu_cfs_quota", UNSET)
cpu_set = d.pop("cpu_set", UNSET)
cpu_shares = d.pop("cpu_shares", UNSET)
debug = d.pop("debug", UNSET)
from ..models.system_info_default_address_pools import SystemInfoDefaultAddressPools
default_address_pools = cast(
List[SystemInfoDefaultAddressPools], d.pop(
"default_address_pools", UNSET))
default_runtime = d.pop("default_runtime", UNSET)
docker_root_dir = d.pop("docker_root_dir", UNSET)
driver = d.pop("driver", UNSET)
driver_status = cast(List[List[str]], d.pop("driver_status", UNSET))
experimental_build = d.pop("experimental_build", UNSET)
http_proxy = d.pop("http_proxy", UNSET)
https_proxy = d.pop("https_proxy", UNSET)
id = d.pop("id", UNSET)
images = d.pop("images", UNSET)
index_server_address = d.pop("index_server_address", UNSET)
init_binary = d.pop("init_binary", UNSET)
_init_commit = d.pop("init_commit", UNSET)
init_commit: Union[Unset, Commit]
if isinstance(_init_commit, Unset):
init_commit = UNSET
else:
init_commit = Commit(_init_commit)
ipv4_forwarding = d.pop("ipv4_forwarding", UNSET)
_isolation = d.pop("isolation", UNSET)
isolation: Union[Unset, SystemInfoIsolationEnum]
if isinstance(_isolation, Unset):
isolation = UNSET
else:
isolation = SystemInfoIsolationEnum(_isolation)
kernel_memory = d.pop("kernel_memory", UNSET)
kernel_memory_tcp = d.pop("kernel_memory_tcp", UNSET)
kernel_version = d.pop("kernel_version", UNSET)
labels = cast(List[str], d.pop("labels", UNSET))
live_restore_enabled = d.pop("live_restore_enabled", UNSET)
logging_driver = d.pop("logging_driver", UNSET)
mem_total = d.pop("mem_total", UNSET)
memory_limit = d.pop("memory_limit", UNSET)
n_events_listener = d.pop("n_events_listener", UNSET)
n_fd = d.pop("n_fd", UNSET)
name = d.pop("name", UNSET)
ncpu = d.pop("ncpu", UNSET)
no_proxy = d.pop("no_proxy", UNSET)
oom_kill_disable = d.pop("oom_kill_disable", UNSET)
operating_system = d.pop("operating_system", UNSET)
os_type = d.pop("os_type", UNSET)
os_version = d.pop("os_version", UNSET)
pids_limit = d.pop("pids_limit", UNSET)
_plugins = d.pop("plugins", UNSET)
plugins: Union[Unset, PluginsInfo]
if isinstance(_plugins, Unset):
plugins = UNSET
else:
plugins = PluginsInfo(_plugins)
product_license = d.pop("product_license", UNSET)
_registry_config = d.pop("registry_config", UNSET)
registry_config: Union[Unset, RegistryServiceConfig]
if isinstance(_registry_config, Unset):
registry_config = UNSET
else:
registry_config = RegistryServiceConfig(_registry_config)
_runc_commit = d.pop("runc_commit", UNSET)
runc_commit: Union[Unset, Commit]
if isinstance(_runc_commit, Unset):
runc_commit = UNSET
else:
runc_commit = Commit(_runc_commit)
runtimes = d.pop("runtimes", UNSET)
security_options = cast(List[str], d.pop("security_options", UNSET))
server_version = d.pop("server_version", UNSET)
swap_limit = d.pop("swap_limit", UNSET)
system_time = d.pop("system_time", UNSET)
warnings = cast(List[str], d.pop("warnings", UNSET))
docker_system_info = cls(
architecture=architecture,
bridge_nf_ip6tables=bridge_nf_ip6tables,
bridge_nf_iptables=bridge_nf_iptables,
cgroup_driver=cgroup_driver,
cgroup_version=cgroup_version,
cluster_advertise=cluster_advertise,
cluster_store=cluster_store,
containerd_commit=containerd_commit,
containers=containers,
containers_paused=containers_paused,
containers_running=containers_running,
containers_stopped=containers_stopped,
cpu_cfs_period=cpu_cfs_period,
cpu_cfs_quota=cpu_cfs_quota,
cpu_set=cpu_set,
cpu_shares=cpu_shares,
debug=debug,
default_address_pools=default_address_pools,
default_runtime=default_runtime,
docker_root_dir=docker_root_dir,
driver=driver,
driver_status=driver_status,
experimental_build=experimental_build,
http_proxy=http_proxy,
https_proxy=https_proxy,
id=id,
images=images,
index_server_address=index_server_address,
init_binary=init_binary,
init_commit=init_commit,
ipv4_forwarding=ipv4_forwarding,
isolation=isolation,
kernel_memory=kernel_memory,
kernel_memory_tcp=kernel_memory_tcp,
kernel_version=kernel_version,
labels=labels,
live_restore_enabled=live_restore_enabled,
logging_driver=logging_driver,
mem_total=mem_total,
memory_limit=memory_limit,
n_events_listener=n_events_listener,
n_fd=n_fd,
name=name,
ncpu=ncpu,
no_proxy=no_proxy,
oom_kill_disable=oom_kill_disable,
operating_system=operating_system,
os_type=os_type,
os_version=os_version,
pids_limit=pids_limit,
plugins=plugins,
product_license=product_license,
registry_config=registry_config,
runc_commit=runc_commit,
runtimes=runtimes,
security_options=security_options,
server_version=server_version,
swap_limit=swap_limit,
system_time=system_time,
warnings=warnings,
)
docker_system_info.additional_properties = d
return docker_system_info
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -0,0 +1,61 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..types import UNSET, Unset
T = TypeVar("T", bound="EmailAuthenticationForm")
@attr.s(auto_attribs=True)
class EmailAuthenticationForm:
""" """
callback_url: Union[Unset, str] = UNSET
email: Union[Unset, str] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
callback_url = self.callback_url
email = self.email
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if callback_url is not UNSET:
field_dict['callback_url'] = callback_url
if email is not UNSET:
field_dict['email'] = email
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
callback_url = d.pop("callback_url", UNSET)
email = d.pop("email", UNSET)
email_authentication_form = cls(
callback_url=callback_url,
email=email,
)
email_authentication_form.additional_properties = d
return email_authentication_form
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

4
kittycad/models/empty.py Normal file
View File

@ -0,0 +1,4 @@
class Empty(str):
def __str__(self) -> str:
return self

View File

@ -0,0 +1,84 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..models.docker_system_info import DockerSystemInfo
from ..models.environment import Environment
from ..types import UNSET, Unset
T = TypeVar("T", bound="ExecutorMetadata")
@attr.s(auto_attribs=True)
class ExecutorMetadata:
""" """
docker_info: Union[Unset, DockerSystemInfo] = UNSET
environment: Union[Unset, Environment] = UNSET
git_hash: Union[Unset, str] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
docker_info: Union[Unset, str] = UNSET
if not isinstance(self.docker_info, Unset):
docker_info = self.docker_info.value
environment: Union[Unset, str] = UNSET
if not isinstance(self.environment, Unset):
environment = self.environment.value
git_hash = self.git_hash
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if docker_info is not UNSET:
field_dict['docker_info'] = docker_info
if environment is not UNSET:
field_dict['environment'] = environment
if git_hash is not UNSET:
field_dict['git_hash'] = git_hash
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
_docker_info = d.pop("docker_info", UNSET)
docker_info: Union[Unset, DockerSystemInfo]
if isinstance(_docker_info, Unset):
docker_info = UNSET
else:
docker_info = DockerSystemInfo(_docker_info)
_environment = d.pop("environment", UNSET)
environment: Union[Unset, Environment]
if isinstance(_environment, Unset):
environment = UNSET
else:
environment = Environment(_environment)
git_hash = d.pop("git_hash", UNSET)
executor_metadata = cls(
docker_info=docker_info,
environment=environment,
git_hash=git_hash,
)
executor_metadata.additional_properties = d
return executor_metadata
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -5,9 +5,10 @@ import attr
from dateutil.parser import isoparse from dateutil.parser import isoparse
from ..models.uuid import Uuid from ..models.uuid import Uuid
from ..models.base64_data import Base64Data
from ..models.file_output_format import FileOutputFormat from ..models.file_output_format import FileOutputFormat
from ..models.file_source_format import FileSourceFormat from ..models.file_source_format import FileSourceFormat
from ..models.api_call_status import APICallStatus from ..models.api_call_status import ApiCallStatus
from ..types import UNSET, Unset from ..types import UNSET, Unset
T = TypeVar("T", bound="FileConversion") T = TypeVar("T", bound="FileConversion")
@ -20,11 +21,11 @@ class FileConversion:
created_at: Union[Unset, datetime.datetime] = UNSET created_at: Union[Unset, datetime.datetime] = UNSET
error: Union[Unset, str] = UNSET error: Union[Unset, str] = UNSET
id: Union[Unset, str] = UNSET id: Union[Unset, str] = UNSET
output: Union[Unset, str] = UNSET output: Union[Unset, Base64Data] = UNSET
output_format: Union[Unset, FileOutputFormat] = UNSET output_format: Union[Unset, FileOutputFormat] = UNSET
src_format: Union[Unset, FileSourceFormat] = UNSET src_format: Union[Unset, FileSourceFormat] = UNSET
started_at: Union[Unset, datetime.datetime] = UNSET started_at: Union[Unset, datetime.datetime] = UNSET
status: Union[Unset, APICallStatus] = UNSET status: Union[Unset, ApiCallStatus] = UNSET
updated_at: Union[Unset, datetime.datetime] = UNSET updated_at: Union[Unset, datetime.datetime] = UNSET
user_id: Union[Unset, str] = UNSET user_id: Union[Unset, str] = UNSET
@ -39,7 +40,9 @@ class FileConversion:
created_at = self.created_at.isoformat() created_at = self.created_at.isoformat()
error = self.error error = self.error
id = self.id id = self.id
output = self.output output: Union[Unset, str] = UNSET
if not isinstance(self.output, Unset):
output = self.output.value
output_format: Union[Unset, str] = UNSET output_format: Union[Unset, str] = UNSET
if not isinstance(self.output_format, Unset): if not isinstance(self.output_format, Unset):
output_format = self.output_format.value output_format = self.output_format.value
@ -106,7 +109,12 @@ class FileConversion:
id = d.pop("id", UNSET) id = d.pop("id", UNSET)
output = d.pop("output", UNSET) _output = d.pop("output", UNSET)
output: Union[Unset, Base64Data]
if isinstance(_output, Unset):
output = UNSET
else:
output = Base64Data(_output)
_output_format = d.pop("output_format", UNSET) _output_format = d.pop("output_format", UNSET)
output_format: Union[Unset, FileOutputFormat] output_format: Union[Unset, FileOutputFormat]
@ -130,11 +138,11 @@ class FileConversion:
started_at = isoparse(_started_at) started_at = isoparse(_started_at)
_status = d.pop("status", UNSET) _status = d.pop("status", UNSET)
status: Union[Unset, APICallStatus] status: Union[Unset, ApiCallStatus]
if isinstance(_status, Unset): if isinstance(_status, Unset):
status = UNSET status = UNSET
else: else:
status = APICallStatus(_status) status = ApiCallStatus(_status)
_updated_at = d.pop("updated_at", UNSET) _updated_at = d.pop("updated_at", UNSET)
updated_at: Union[Unset, datetime.datetime] updated_at: Union[Unset, datetime.datetime]

View File

@ -6,7 +6,7 @@ from dateutil.parser import isoparse
from ..models.uuid import Uuid from ..models.uuid import Uuid
from ..models.file_source_format import FileSourceFormat from ..models.file_source_format import FileSourceFormat
from ..models.api_call_status import APICallStatus from ..models.api_call_status import ApiCallStatus
from ..types import UNSET, Unset from ..types import UNSET, Unset
T = TypeVar("T", bound="FileDensity") T = TypeVar("T", bound="FileDensity")
@ -23,7 +23,7 @@ class FileDensity:
material_mass: Union[Unset, float] = UNSET material_mass: Union[Unset, float] = UNSET
src_format: Union[Unset, FileSourceFormat] = UNSET src_format: Union[Unset, FileSourceFormat] = UNSET
started_at: Union[Unset, datetime.datetime] = UNSET started_at: Union[Unset, datetime.datetime] = UNSET
status: Union[Unset, APICallStatus] = UNSET status: Union[Unset, ApiCallStatus] = UNSET
updated_at: Union[Unset, datetime.datetime] = UNSET updated_at: Union[Unset, datetime.datetime] = UNSET
user_id: Union[Unset, str] = UNSET user_id: Union[Unset, str] = UNSET
@ -122,11 +122,11 @@ class FileDensity:
started_at = isoparse(_started_at) started_at = isoparse(_started_at)
_status = d.pop("status", UNSET) _status = d.pop("status", UNSET)
status: Union[Unset, APICallStatus] status: Union[Unset, ApiCallStatus]
if isinstance(_status, Unset): if isinstance(_status, Unset):
status = UNSET status = UNSET
else: else:
status = APICallStatus(_status) status = ApiCallStatus(_status)
_updated_at = d.pop("updated_at", UNSET) _updated_at = d.pop("updated_at", UNSET)
updated_at: Union[Unset, datetime.datetime] updated_at: Union[Unset, datetime.datetime]

View File

@ -6,7 +6,7 @@ from dateutil.parser import isoparse
from ..models.uuid import Uuid from ..models.uuid import Uuid
from ..models.file_source_format import FileSourceFormat from ..models.file_source_format import FileSourceFormat
from ..models.api_call_status import APICallStatus from ..models.api_call_status import ApiCallStatus
from ..types import UNSET, Unset from ..types import UNSET, Unset
T = TypeVar("T", bound="FileMass") T = TypeVar("T", bound="FileMass")
@ -23,7 +23,7 @@ class FileMass:
material_density: Union[Unset, float] = UNSET material_density: Union[Unset, float] = UNSET
src_format: Union[Unset, FileSourceFormat] = UNSET src_format: Union[Unset, FileSourceFormat] = UNSET
started_at: Union[Unset, datetime.datetime] = UNSET started_at: Union[Unset, datetime.datetime] = UNSET
status: Union[Unset, APICallStatus] = UNSET status: Union[Unset, ApiCallStatus] = UNSET
updated_at: Union[Unset, datetime.datetime] = UNSET updated_at: Union[Unset, datetime.datetime] = UNSET
user_id: Union[Unset, str] = UNSET user_id: Union[Unset, str] = UNSET
@ -122,11 +122,11 @@ class FileMass:
started_at = isoparse(_started_at) started_at = isoparse(_started_at)
_status = d.pop("status", UNSET) _status = d.pop("status", UNSET)
status: Union[Unset, APICallStatus] status: Union[Unset, ApiCallStatus]
if isinstance(_status, Unset): if isinstance(_status, Unset):
status = UNSET status = UNSET
else: else:
status = APICallStatus(_status) status = ApiCallStatus(_status)
_updated_at = d.pop("updated_at", UNSET) _updated_at = d.pop("updated_at", UNSET)
updated_at: Union[Unset, datetime.datetime] updated_at: Union[Unset, datetime.datetime]

View File

@ -6,7 +6,7 @@ from dateutil.parser import isoparse
from ..models.uuid import Uuid from ..models.uuid import Uuid
from ..models.file_source_format import FileSourceFormat from ..models.file_source_format import FileSourceFormat
from ..models.api_call_status import APICallStatus from ..models.api_call_status import ApiCallStatus
from ..types import UNSET, Unset from ..types import UNSET, Unset
T = TypeVar("T", bound="FileVolume") T = TypeVar("T", bound="FileVolume")
@ -21,7 +21,7 @@ class FileVolume:
id: Union[Unset, str] = UNSET id: Union[Unset, str] = UNSET
src_format: Union[Unset, FileSourceFormat] = UNSET src_format: Union[Unset, FileSourceFormat] = UNSET
started_at: Union[Unset, datetime.datetime] = UNSET started_at: Union[Unset, datetime.datetime] = UNSET
status: Union[Unset, APICallStatus] = UNSET status: Union[Unset, ApiCallStatus] = UNSET
updated_at: Union[Unset, datetime.datetime] = UNSET updated_at: Union[Unset, datetime.datetime] = UNSET
user_id: Union[Unset, str] = UNSET user_id: Union[Unset, str] = UNSET
volume: Union[Unset, float] = UNSET volume: Union[Unset, float] = UNSET
@ -114,11 +114,11 @@ class FileVolume:
started_at = isoparse(_started_at) started_at = isoparse(_started_at)
_status = d.pop("status", UNSET) _status = d.pop("status", UNSET)
status: Union[Unset, APICallStatus] status: Union[Unset, ApiCallStatus]
if isinstance(_status, Unset): if isinstance(_status, Unset):
status = UNSET status = UNSET
else: else:
status = APICallStatus(_status) status = ApiCallStatus(_status)
_updated_at = d.pop("updated_at", UNSET) _updated_at = d.pop("updated_at", UNSET)
updated_at: Union[Unset, datetime.datetime] updated_at: Union[Unset, datetime.datetime]

View File

@ -0,0 +1,77 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..types import UNSET, Unset
T = TypeVar("T", bound="IndexInfo")
@attr.s(auto_attribs=True)
class IndexInfo:
""" """
mirrors: Union[Unset, List[str]] = UNSET
name: Union[Unset, str] = UNSET
official: Union[Unset, bool] = False
secure: Union[Unset, bool] = False
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
mirrors: Union[Unset, List[str]] = UNSET
if not isinstance(self.mirrors, Unset):
mirrors = self.mirrors
name = self.name
official = self.official
secure = self.secure
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if mirrors is not UNSET:
field_dict['mirrors'] = mirrors
if name is not UNSET:
field_dict['name'] = name
if official is not UNSET:
field_dict['official'] = official
if secure is not UNSET:
field_dict['secure'] = secure
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
mirrors = cast(List[str], d.pop("mirrors", UNSET))
name = d.pop("name", UNSET)
official = d.pop("official", UNSET)
secure = d.pop("secure", UNSET)
index_info = cls(
mirrors=mirrors,
name=name,
official=official,
secure=secure,
)
index_info.additional_properties = d
return index_info
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -21,21 +21,24 @@ class Invoice:
attempted: Union[Unset, bool] = False attempted: Union[Unset, bool] = False
created_at: Union[Unset, datetime.datetime] = UNSET created_at: Union[Unset, datetime.datetime] = UNSET
currency: Union[Unset, Currency] = UNSET currency: Union[Unset, Currency] = UNSET
customer_email: Union[Unset, str] = UNSET
customer_id: Union[Unset, str] = UNSET
default_payment_method: Union[Unset, str] = UNSET
description: Union[Unset, str] = UNSET description: Union[Unset, str] = UNSET
id: Union[Unset, str] = UNSET id: Union[Unset, str] = UNSET
invoice_pdf: Union[Unset, str] = UNSET
invoice_url: Union[Unset, str] = UNSET
from ..models.invoice_line_item import InvoiceLineItem from ..models.invoice_line_item import InvoiceLineItem
lines: Union[Unset, List[InvoiceLineItem]] = UNSET lines: Union[Unset, List[InvoiceLineItem]] = UNSET
metadata: Union[Unset, Any] = UNSET metadata: Union[Unset, Any] = UNSET
number: Union[Unset, str] = UNSET number: Union[Unset, str] = UNSET
paid: Union[Unset, bool] = False paid: Union[Unset, bool] = False
pdf: Union[Unset, str] = UNSET
receipt_number: Union[Unset, str] = UNSET receipt_number: Union[Unset, str] = UNSET
statement_descriptor: Union[Unset, str] = UNSET statement_descriptor: Union[Unset, str] = UNSET
status: Union[Unset, InvoiceStatus] = UNSET status: Union[Unset, InvoiceStatus] = UNSET
subtotal: Union[Unset, int] = UNSET subtotal: Union[Unset, int] = UNSET
tax: Union[Unset, int] = UNSET tax: Union[Unset, int] = UNSET
total: Union[Unset, int] = UNSET total: Union[Unset, int] = UNSET
url: Union[Unset, str] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict) additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
@ -51,10 +54,11 @@ class Invoice:
currency: Union[Unset, str] = UNSET currency: Union[Unset, str] = UNSET
if not isinstance(self.currency, Unset): if not isinstance(self.currency, Unset):
currency = self.currency.value currency = self.currency.value
customer_email = self.customer_email
customer_id = self.customer_id
default_payment_method = self.default_payment_method
description = self.description description = self.description
id = self.id id = self.id
invoice_pdf = self.invoice_pdf
invoice_url = self.invoice_url
from ..models.invoice_line_item import InvoiceLineItem from ..models.invoice_line_item import InvoiceLineItem
lines: Union[Unset, List[InvoiceLineItem]] = UNSET lines: Union[Unset, List[InvoiceLineItem]] = UNSET
if not isinstance(self.lines, Unset): if not isinstance(self.lines, Unset):
@ -62,6 +66,7 @@ class Invoice:
metadata = self.metadata metadata = self.metadata
number = self.number number = self.number
paid = self.paid paid = self.paid
pdf = self.pdf
receipt_number = self.receipt_number receipt_number = self.receipt_number
statement_descriptor = self.statement_descriptor statement_descriptor = self.statement_descriptor
status: Union[Unset, str] = UNSET status: Union[Unset, str] = UNSET
@ -70,6 +75,7 @@ class Invoice:
subtotal = self.subtotal subtotal = self.subtotal
tax = self.tax tax = self.tax
total = self.total total = self.total
url = self.url
field_dict: Dict[str, Any] = {} field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties) field_dict.update(self.additional_properties)
@ -88,14 +94,16 @@ class Invoice:
field_dict['created_at'] = created_at field_dict['created_at'] = created_at
if currency is not UNSET: if currency is not UNSET:
field_dict['currency'] = currency field_dict['currency'] = currency
if customer_email is not UNSET:
field_dict['customer_email'] = customer_email
if customer_id is not UNSET:
field_dict['customer_id'] = customer_id
if default_payment_method is not UNSET:
field_dict['default_payment_method'] = default_payment_method
if description is not UNSET: if description is not UNSET:
field_dict['description'] = description field_dict['description'] = description
if id is not UNSET: if id is not UNSET:
field_dict['id'] = id field_dict['id'] = id
if invoice_pdf is not UNSET:
field_dict['invoice_pdf'] = invoice_pdf
if invoice_url is not UNSET:
field_dict['invoice_url'] = invoice_url
if lines is not UNSET: if lines is not UNSET:
field_dict['lines'] = lines field_dict['lines'] = lines
if metadata is not UNSET: if metadata is not UNSET:
@ -104,6 +112,8 @@ class Invoice:
field_dict['number'] = number field_dict['number'] = number
if paid is not UNSET: if paid is not UNSET:
field_dict['paid'] = paid field_dict['paid'] = paid
if pdf is not UNSET:
field_dict['pdf'] = pdf
if receipt_number is not UNSET: if receipt_number is not UNSET:
field_dict['receipt_number'] = receipt_number field_dict['receipt_number'] = receipt_number
if statement_descriptor is not UNSET: if statement_descriptor is not UNSET:
@ -116,6 +126,8 @@ class Invoice:
field_dict['tax'] = tax field_dict['tax'] = tax
if total is not UNSET: if total is not UNSET:
field_dict['total'] = total field_dict['total'] = total
if url is not UNSET:
field_dict['url'] = url
return field_dict return field_dict
@ -146,14 +158,16 @@ class Invoice:
else: else:
currency = Currency(_currency) currency = Currency(_currency)
customer_email = d.pop("customer_email", UNSET)
customer_id = d.pop("customer_id", UNSET)
default_payment_method = d.pop("default_payment_method", UNSET)
description = d.pop("description", UNSET) description = d.pop("description", UNSET)
id = d.pop("id", UNSET) id = d.pop("id", UNSET)
invoice_pdf = d.pop("invoice_pdf", UNSET)
invoice_url = d.pop("invoice_url", UNSET)
from ..models.invoice_line_item import InvoiceLineItem from ..models.invoice_line_item import InvoiceLineItem
lines = cast(List[InvoiceLineItem], d.pop("lines", UNSET)) lines = cast(List[InvoiceLineItem], d.pop("lines", UNSET))
@ -162,6 +176,8 @@ class Invoice:
paid = d.pop("paid", UNSET) paid = d.pop("paid", UNSET)
pdf = d.pop("pdf", UNSET)
receipt_number = d.pop("receipt_number", UNSET) receipt_number = d.pop("receipt_number", UNSET)
statement_descriptor = d.pop("statement_descriptor", UNSET) statement_descriptor = d.pop("statement_descriptor", UNSET)
@ -179,6 +195,8 @@ class Invoice:
total = d.pop("total", UNSET) total = d.pop("total", UNSET)
url = d.pop("url", UNSET)
invoice = cls( invoice = cls(
amount_due=amount_due, amount_due=amount_due,
amount_paid=amount_paid, amount_paid=amount_paid,
@ -187,20 +205,23 @@ class Invoice:
attempted=attempted, attempted=attempted,
created_at=created_at, created_at=created_at,
currency=currency, currency=currency,
customer_email=customer_email,
customer_id=customer_id,
default_payment_method=default_payment_method,
description=description, description=description,
id=id, id=id,
invoice_pdf=invoice_pdf,
invoice_url=invoice_url,
lines=lines, lines=lines,
metadata=metadata, metadata=metadata,
number=number, number=number,
paid=paid, paid=paid,
pdf=pdf,
receipt_number=receipt_number, receipt_number=receipt_number,
statement_descriptor=statement_descriptor, statement_descriptor=statement_descriptor,
status=status, status=status,
subtotal=subtotal, subtotal=subtotal,
tax=tax, tax=tax,
total=total, total=total,
url=url,
) )
invoice.additional_properties = d invoice.additional_properties = d

View File

@ -0,0 +1,4 @@
class IpAddr(str):
def __str__(self) -> str:
return self

View File

@ -5,6 +5,7 @@ import attr
from ..models.cache_metadata import CacheMetadata from ..models.cache_metadata import CacheMetadata
from ..models.engine_metadata import EngineMetadata from ..models.engine_metadata import EngineMetadata
from ..models.environment import Environment from ..models.environment import Environment
from ..models.executor_metadata import ExecutorMetadata
from ..models.file_system_metadata import FileSystemMetadata from ..models.file_system_metadata import FileSystemMetadata
from ..models.connection import Connection from ..models.connection import Connection
from ..types import UNSET, Unset from ..types import UNSET, Unset
@ -18,6 +19,7 @@ class Metadata:
cache: Union[Unset, CacheMetadata] = UNSET cache: Union[Unset, CacheMetadata] = UNSET
engine: Union[Unset, EngineMetadata] = UNSET engine: Union[Unset, EngineMetadata] = UNSET
environment: Union[Unset, Environment] = UNSET environment: Union[Unset, Environment] = UNSET
executor: Union[Unset, ExecutorMetadata] = UNSET
fs: Union[Unset, FileSystemMetadata] = UNSET fs: Union[Unset, FileSystemMetadata] = UNSET
git_hash: Union[Unset, str] = UNSET git_hash: Union[Unset, str] = UNSET
pubsub: Union[Unset, Connection] = UNSET pubsub: Union[Unset, Connection] = UNSET
@ -34,6 +36,9 @@ class Metadata:
environment: Union[Unset, str] = UNSET environment: Union[Unset, str] = UNSET
if not isinstance(self.environment, Unset): if not isinstance(self.environment, Unset):
environment = self.environment.value environment = self.environment.value
executor: Union[Unset, str] = UNSET
if not isinstance(self.executor, Unset):
executor = self.executor.value
fs: Union[Unset, str] = UNSET fs: Union[Unset, str] = UNSET
if not isinstance(self.fs, Unset): if not isinstance(self.fs, Unset):
fs = self.fs.value fs = self.fs.value
@ -51,6 +56,8 @@ class Metadata:
field_dict['engine'] = engine field_dict['engine'] = engine
if environment is not UNSET: if environment is not UNSET:
field_dict['environment'] = environment field_dict['environment'] = environment
if executor is not UNSET:
field_dict['executor'] = executor
if fs is not UNSET: if fs is not UNSET:
field_dict['fs'] = fs field_dict['fs'] = fs
if git_hash is not UNSET: if git_hash is not UNSET:
@ -84,6 +91,13 @@ class Metadata:
else: else:
environment = Environment(_environment) environment = Environment(_environment)
_executor = d.pop("executor", UNSET)
executor: Union[Unset, ExecutorMetadata]
if isinstance(_executor, Unset):
executor = UNSET
else:
executor = ExecutorMetadata(_executor)
_fs = d.pop("fs", UNSET) _fs = d.pop("fs", UNSET)
fs: Union[Unset, FileSystemMetadata] fs: Union[Unset, FileSystemMetadata]
if isinstance(_fs, Unset): if isinstance(_fs, Unset):
@ -104,6 +118,7 @@ class Metadata:
cache=cache, cache=cache,
engine=engine, engine=engine,
environment=environment, environment=environment,
executor=executor,
fs=fs, fs=fs,
git_hash=git_hash, git_hash=git_hash,
pubsub=pubsub, pubsub=pubsub,

View File

@ -0,0 +1,68 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..types import UNSET, Unset
T = TypeVar("T", bound="OAuth2ClientInfo")
@attr.s(auto_attribs=True)
class OAuth2ClientInfo:
""" """
csrf_token: Union[Unset, str] = UNSET
pkce_code_verifier: Union[Unset, str] = UNSET
url: Union[Unset, str] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
csrf_token = self.csrf_token
pkce_code_verifier = self.pkce_code_verifier
url = self.url
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if csrf_token is not UNSET:
field_dict['csrf_token'] = csrf_token
if pkce_code_verifier is not UNSET:
field_dict['pkce_code_verifier'] = pkce_code_verifier
if url is not UNSET:
field_dict['url'] = url
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
csrf_token = d.pop("csrf_token", UNSET)
pkce_code_verifier = d.pop("pkce_code_verifier", UNSET)
url = d.pop("url", UNSET)
o_auth2_client_info = cls(
csrf_token=csrf_token,
pkce_code_verifier=pkce_code_verifier,
url=url,
)
o_auth2_client_info.additional_properties = d
return o_auth2_client_info
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -0,0 +1,8 @@
from enum import Enum
class OAuth2GrantType(str, Enum):
URN_IETF_PARAMS_OAUTH_GRANT_TYPE_DEVICE_CODE = 'urn:ietf:params:oauth:grant-type:device_code'
def __str__(self) -> str:
return str(self.value)

View File

@ -0,0 +1,83 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..types import UNSET, Unset
T = TypeVar("T", bound="PluginsInfo")
@attr.s(auto_attribs=True)
class PluginsInfo:
""" """
authorization: Union[Unset, List[str]] = UNSET
log: Union[Unset, List[str]] = UNSET
network: Union[Unset, List[str]] = UNSET
volume: Union[Unset, List[str]] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
authorization: Union[Unset, List[str]] = UNSET
if not isinstance(self.authorization, Unset):
authorization = self.authorization
log: Union[Unset, List[str]] = UNSET
if not isinstance(self.log, Unset):
log = self.log
network: Union[Unset, List[str]] = UNSET
if not isinstance(self.network, Unset):
network = self.network
volume: Union[Unset, List[str]] = UNSET
if not isinstance(self.volume, Unset):
volume = self.volume
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if authorization is not UNSET:
field_dict['authorization'] = authorization
if log is not UNSET:
field_dict['log'] = log
if network is not UNSET:
field_dict['network'] = network
if volume is not UNSET:
field_dict['volume'] = volume
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
authorization = cast(List[str], d.pop("authorization", UNSET))
log = cast(List[str], d.pop("log", UNSET))
network = cast(List[str], d.pop("network", UNSET))
volume = cast(List[str], d.pop("volume", UNSET))
plugins_info = cls(
authorization=authorization,
log=log,
network=network,
volume=volume,
)
plugins_info.additional_properties = d
return plugins_info
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -0,0 +1,98 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..models.index_info import IndexInfo
from ..types import UNSET, Unset
T = TypeVar("T", bound="RegistryServiceConfig")
@attr.s(auto_attribs=True)
class RegistryServiceConfig:
""" """
allow_nondistributable_artifacts_cid_rs: Union[Unset, List[str]] = UNSET
allow_nondistributable_artifacts_hostnames: Union[Unset, List[str]] = UNSET
index_configs: Union[Unset, Any] = UNSET
insecure_registry_cid_rs: Union[Unset, List[str]] = UNSET
mirrors: Union[Unset, List[str]] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
allow_nondistributable_artifacts_cid_rs: Union[Unset,
List[str]] = UNSET
if not isinstance(self.allow_nondistributable_artifacts_cid_rs, Unset):
allow_nondistributable_artifacts_cid_rs = self.allow_nondistributable_artifacts_cid_rs
allow_nondistributable_artifacts_hostnames: Union[Unset,
List[str]] = UNSET
if not isinstance(
self.allow_nondistributable_artifacts_hostnames,
Unset):
allow_nondistributable_artifacts_hostnames = self.allow_nondistributable_artifacts_hostnames
index_configs = self.index_configs
insecure_registry_cid_rs: Union[Unset, List[str]] = UNSET
if not isinstance(self.insecure_registry_cid_rs, Unset):
insecure_registry_cid_rs = self.insecure_registry_cid_rs
mirrors: Union[Unset, List[str]] = UNSET
if not isinstance(self.mirrors, Unset):
mirrors = self.mirrors
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if allow_nondistributable_artifacts_cid_rs is not UNSET:
field_dict['allow_nondistributable_artifacts_cid_rs'] = allow_nondistributable_artifacts_cid_rs
if allow_nondistributable_artifacts_hostnames is not UNSET:
field_dict['allow_nondistributable_artifacts_hostnames'] = allow_nondistributable_artifacts_hostnames
if index_configs is not UNSET:
field_dict['index_configs'] = index_configs
if insecure_registry_cid_rs is not UNSET:
field_dict['insecure_registry_cid_rs'] = insecure_registry_cid_rs
if mirrors is not UNSET:
field_dict['mirrors'] = mirrors
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
allow_nondistributable_artifacts_cid_rs = cast(
List[str], d.pop("allow_nondistributable_artifacts_cid_rs", UNSET))
allow_nondistributable_artifacts_hostnames = cast(
List[str], d.pop("allow_nondistributable_artifacts_hostnames", UNSET))
index_configs = d.pop("index_configs", UNSET)
insecure_registry_cid_rs = cast(
List[str], d.pop(
"insecure_registry_cid_rs", UNSET))
mirrors = cast(List[str], d.pop("mirrors", UNSET))
registry_service_config = cls(
allow_nondistributable_artifacts_cid_rs=allow_nondistributable_artifacts_cid_rs,
allow_nondistributable_artifacts_hostnames=allow_nondistributable_artifacts_hostnames,
index_configs=index_configs,
insecure_registry_cid_rs=insecure_registry_cid_rs,
mirrors=mirrors,
)
registry_service_config.additional_properties = d
return registry_service_config
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -0,0 +1,63 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..types import UNSET, Unset
T = TypeVar("T", bound="Runtime")
@attr.s(auto_attribs=True)
class Runtime:
""" """
path: Union[Unset, str] = UNSET
runtime_args: Union[Unset, List[str]] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
path = self.path
runtime_args: Union[Unset, List[str]] = UNSET
if not isinstance(self.runtime_args, Unset):
runtime_args = self.runtime_args
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if path is not UNSET:
field_dict['path'] = path
if runtime_args is not UNSET:
field_dict['runtime_args'] = runtime_args
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
path = d.pop("path", UNSET)
runtime_args = cast(List[str], d.pop("runtime_args", UNSET))
runtime = cls(
path=path,
runtime_args=runtime_args,
)
runtime.additional_properties = d
return runtime
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -0,0 +1,11 @@
from enum import Enum
class SystemInfoCgroupDriverEnum(str, Enum):
EMPTY = ''
CGROUPFS = 'cgroupfs'
SYSTEMD = 'systemd'
NONE = 'none'
def __str__(self) -> str:
return str(self.value)

View File

@ -0,0 +1,10 @@
from enum import Enum
class SystemInfoCgroupVersionEnum(str, Enum):
EMPTY = ''
ONE = '1'
TWO = '2'
def __str__(self) -> str:
return str(self.value)

View File

@ -0,0 +1,61 @@
from typing import Any, Dict, List, Type, TypeVar, Union, cast
import attr
from ..types import UNSET, Unset
T = TypeVar("T", bound="SystemInfoDefaultAddressPools")
@attr.s(auto_attribs=True)
class SystemInfoDefaultAddressPools:
""" """
base: Union[Unset, str] = UNSET
size: Union[Unset, int] = UNSET
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
def to_dict(self) -> Dict[str, Any]:
base = self.base
size = self.size
field_dict: Dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if base is not UNSET:
field_dict['base'] = base
if size is not UNSET:
field_dict['size'] = size
return field_dict
@classmethod
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
d = src_dict.copy()
base = d.pop("base", UNSET)
size = d.pop("size", UNSET)
system_info_default_address_pools = cls(
base=base,
size=size,
)
system_info_default_address_pools.additional_properties = d
return system_info_default_address_pools
@property
def additional_keys(self) -> List[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties

View File

@ -0,0 +1,11 @@
from enum import Enum
class SystemInfoIsolationEnum(str, Enum):
EMPTY = ''
DEFAULT = 'default'
HYPERV = 'hyperv'
PROCESS = 'process'
def __str__(self) -> str:
return str(self.value)

View File

@ -6,7 +6,7 @@ from dateutil.parser import isoparse
from ..models.uuid import Uuid from ..models.uuid import Uuid
from ..models.unit_metric_format import UnitMetricFormat from ..models.unit_metric_format import UnitMetricFormat
from ..models.api_call_status import APICallStatus from ..models.api_call_status import ApiCallStatus
from ..types import UNSET, Unset from ..types import UNSET, Unset
T = TypeVar("T", bound="UnitConversion") T = TypeVar("T", bound="UnitConversion")
@ -24,7 +24,7 @@ class UnitConversion:
output_format: Union[Unset, UnitMetricFormat] = UNSET output_format: Union[Unset, UnitMetricFormat] = UNSET
src_format: Union[Unset, UnitMetricFormat] = UNSET src_format: Union[Unset, UnitMetricFormat] = UNSET
started_at: Union[Unset, datetime.datetime] = UNSET started_at: Union[Unset, datetime.datetime] = UNSET
status: Union[Unset, APICallStatus] = UNSET status: Union[Unset, ApiCallStatus] = UNSET
updated_at: Union[Unset, datetime.datetime] = UNSET updated_at: Union[Unset, datetime.datetime] = UNSET
user_id: Union[Unset, str] = UNSET user_id: Union[Unset, str] = UNSET
@ -135,11 +135,11 @@ class UnitConversion:
started_at = isoparse(_started_at) started_at = isoparse(_started_at)
_status = d.pop("status", UNSET) _status = d.pop("status", UNSET)
status: Union[Unset, APICallStatus] status: Union[Unset, ApiCallStatus]
if isinstance(_status, Unset): if isinstance(_status, Unset):
status = UNSET status = UNSET
else: else:
status = APICallStatus(_status) status = ApiCallStatus(_status)
_updated_at = d.pop("updated_at", UNSET) _updated_at = d.pop("updated_at", UNSET)
updated_at: Union[Unset, datetime.datetime] updated_at: Union[Unset, datetime.datetime]

1680
spec.json

File diff suppressed because it is too large Load Diff