compose-viz/compose_viz/models/service.py

97 lines
2.1 KiB
Python
Raw Permalink Normal View History

2022-05-18 23:28:18 +08:00
from typing import List, Optional
2022-05-08 00:42:14 +08:00
2022-06-07 00:34:18 +08:00
from compose_viz.models.device import Device
2022-05-27 14:17:04 +08:00
from compose_viz.models.extends import Extends
from compose_viz.models.port import Port
from compose_viz.models.volume import Volume
2022-05-18 15:12:24 +08:00
2022-05-08 00:42:14 +08:00
class Service:
2022-05-18 23:28:18 +08:00
def __init__(
self,
name: str,
image: Optional[str] = None,
2022-05-21 23:19:01 +08:00
ports: List[Port] = [],
2022-05-18 23:28:18 +08:00
networks: List[str] = [],
2022-05-21 17:41:26 +08:00
volumes: List[Volume] = [],
2022-05-18 23:28:18 +08:00
depends_on: List[str] = [],
links: List[str] = [],
extends: Optional[Extends] = None,
2022-06-03 17:19:43 +08:00
cgroup_parent: Optional[str] = None,
container_name: Optional[str] = None,
2022-06-08 20:57:28 +08:00
devices: List[Device] = [],
2022-06-03 16:57:06 +08:00
env_file: List[str] = [],
expose: List[str] = [],
profiles: List[str] = [],
2022-05-18 23:28:18 +08:00
) -> None:
2022-05-15 01:15:31 +08:00
self._name = name
self._image = image
self._ports = ports
self._networks = networks
self._volumes = volumes
self._depends_on = depends_on
self._links = links
self._extends = extends
2022-06-07 00:34:18 +08:00
self._cgroup_parent = cgroup_parent
self._container_name = container_name
self._devices = devices
self._env_file = env_file
self._expose = expose
self._profiles = profiles
2022-05-15 01:15:31 +08:00
@property
def name(self):
return self._name
2022-05-15 02:27:33 +08:00
2022-05-15 01:15:31 +08:00
@property
def image(self):
return self._image
@property
def ports(self):
return self._ports
@property
def networks(self):
return self._networks
@property
def volumes(self):
return self._volumes
@property
def depends_on(self):
return self._depends_on
@property
def links(self):
return self._links
@property
def extends(self):
return self._extends
2022-06-07 00:34:18 +08:00
@property
def cgroup_parent(self):
return self._cgroup_parent
@property
def container_name(self):
return self._container_name
@property
def devices(self):
return self._devices
@property
def env_file(self):
return self._env_file
@property
def expose(self):
return self._expose
@property
def profiles(self):
return self._profiles