coolipy.models.services
Service models for the Coolify API.
1"""Service models for the Coolify API.""" 2 3from __future__ import annotations 4 5from datetime import datetime 6 7from coolipy.models.base import CoolipyBaseModel 8 9 10class ServiceURL(CoolipyBaseModel): 11 """A per-service URL mapping for docker-compose services.""" 12 13 name: str | None = None 14 url: str | None = None 15 16 17class ServiceModel(CoolipyBaseModel): 18 """A service as returned by the API.""" 19 20 id: int | None = None 21 uuid: str | None = None 22 name: str | None = None 23 environment_id: int | None = None 24 server_id: int | None = None 25 description: str | None = None 26 docker_compose_raw: str | None = None 27 docker_compose: str | None = None 28 destination_type: str | None = None 29 destination_id: int | None = None 30 connect_to_docker_network: bool | None = None 31 is_container_label_escape_enabled: bool | None = None 32 is_container_label_readonly_enabled: bool | None = None 33 config_hash: str | None = None 34 service_type: str | None = None 35 created_at: datetime | None = None 36 updated_at: datetime | None = None 37 deleted_at: datetime | None = None 38 39 40class ServiceCreateModel(CoolipyBaseModel): 41 """Body for creating a service (one-click or custom).""" 42 43 type: str | None = None 44 name: str | None = None 45 description: str | None = None 46 project_uuid: str | None = None 47 environment_name: str | None = None 48 environment_uuid: str | None = None 49 server_uuid: str | None = None 50 destination_uuid: str | None = None 51 instant_deploy: bool | None = None 52 docker_compose_raw: str | None = None 53 urls: list[ServiceURL] | None = None 54 force_domain_override: bool | None = None 55 is_container_label_escape_enabled: bool | None = None 56 tags: list[str] | None = None 57 58 59class ServiceUpdateModel(CoolipyBaseModel): 60 """Body for updating a service.""" 61 62 name: str | None = None 63 description: str | None = None 64 docker_compose_raw: str | None = None 65 is_container_label_escape_enabled: bool | None = None 66 force_domain_override: bool | None = None 67 urls: list[ServiceURL] | None = None
11class ServiceURL(CoolipyBaseModel): 12 """A per-service URL mapping for docker-compose services.""" 13 14 name: str | None = None 15 url: str | None = None
A per-service URL mapping for docker-compose services.
18class ServiceModel(CoolipyBaseModel): 19 """A service as returned by the API.""" 20 21 id: int | None = None 22 uuid: str | None = None 23 name: str | None = None 24 environment_id: int | None = None 25 server_id: int | None = None 26 description: str | None = None 27 docker_compose_raw: str | None = None 28 docker_compose: str | None = None 29 destination_type: str | None = None 30 destination_id: int | None = None 31 connect_to_docker_network: bool | None = None 32 is_container_label_escape_enabled: bool | None = None 33 is_container_label_readonly_enabled: bool | None = None 34 config_hash: str | None = None 35 service_type: str | None = None 36 created_at: datetime | None = None 37 updated_at: datetime | None = None 38 deleted_at: datetime | None = None
A service as returned by the API.
41class ServiceCreateModel(CoolipyBaseModel): 42 """Body for creating a service (one-click or custom).""" 43 44 type: str | None = None 45 name: str | None = None 46 description: str | None = None 47 project_uuid: str | None = None 48 environment_name: str | None = None 49 environment_uuid: str | None = None 50 server_uuid: str | None = None 51 destination_uuid: str | None = None 52 instant_deploy: bool | None = None 53 docker_compose_raw: str | None = None 54 urls: list[ServiceURL] | None = None 55 force_domain_override: bool | None = None 56 is_container_label_escape_enabled: bool | None = None 57 tags: list[str] | None = None
Body for creating a service (one-click or custom).
60class ServiceUpdateModel(CoolipyBaseModel): 61 """Body for updating a service.""" 62 63 name: str | None = None 64 description: str | None = None 65 docker_compose_raw: str | None = None 66 is_container_label_escape_enabled: bool | None = None 67 force_domain_override: bool | None = None 68 urls: list[ServiceURL] | None = None
Body for updating a service.