Coverage for src/edwh_restic_plugin/restictypes.py: 0%

1 from typing import Optional, TypedDict

2

3

4 class State(TypedDict):

5 Status: str

6 Running: bool

7 Paused: bool

8 Restarting: bool

9 OOMKilled: bool

10 Dead: bool

11 Pid: int

12 ExitCode: int

13 Error: str

14 StartedAt: str

15 FinishedAt: str

16

17

18 class LogConfig(TypedDict):

19 Type: str

20 Config: dict

21

22

23 class RestartPolicy(TypedDict):

24 Name: str

25 MaximumRetryCount: int

26

27

28 class PortBinding(TypedDict):

29 # Assuming more specific details may be added later

30 pass

31

32

33 class VolumeOptions(TypedDict):

34 # Assuming more specific details may be added later

35 pass

36

37

38 class VolumeMount(TypedDict):

39 Type: str

40 Source: str

41 Target: str

42 VolumeOptions: VolumeOptions

43

44

45 class HostConfig(TypedDict):

46 Binds: Optional[None]

47 ContainerIDFile: str

48 LogConfig: LogConfig

49 NetworkMode: str

50 PortBindings: dict

51 RestartPolicy: RestartPolicy

52 AutoRemove: bool

53 VolumeDriver: str

54 VolumesFrom: Optional[None]

55 ConsoleSize: list[int]

56 CapAdd: Optional[None]

57 CapDrop: Optional[None]

58 CgroupnsMode: str

59 Dns: Optional[None]

60 DnsOptions: Optional[None]

61 DnsSearch: Optional[None]

62 ExtraHosts: list[str]

63 GroupAdd: Optional[None]

64 IpcMode: str

65 Cgroup: str

66 Links: Optional[None]

67 OomScoreAdj: int

68 PidMode: str

69 Privileged: bool

70 PublishAllPorts: bool

71 ReadonlyRootfs: bool

72 SecurityOpt: Optional[None]

73 UTSMode: str

74 UsernsMode: str

75 ShmSize: int

76 Runtime: str

77 Isolation: str

78 CpuShares: int

79 Memory: int

80 NanoCpus: int

81 CgroupParent: str

82 BlkioWeight: int

83 BlkioWeightDevice: Optional[None]

84 BlkioDeviceReadBps: Optional[None]

85 BlkioDeviceWriteBps: Optional[None]

86 BlkioDeviceReadIOps: Optional[None]

87 BlkioDeviceWriteIOps: Optional[None]

88 CpuPeriod: int

89 CpuQuota: int

90 CpuRealtimePeriod: int

91 CpuRealtimeRuntime: int

92 CpusetCpus: str

93 CpusetMems: str

94 Devices: Optional[None]

95 DeviceCgroupRules: Optional[None]

96 DeviceRequests: Optional[None]

97 MemoryReservation: int

98 MemorySwap: int

99 MemorySwappiness: Optional[None]

100 OomKillDisable: Optional[None]

101 PidsLimit: Optional[None]

102 Ulimits: Optional[None]

103 CpuCount: int

104 CpuPercent: int

105 IOMaximumIOps: int

106 IOMaximumBandwidth: int

107 Mounts: list[VolumeMount]

108 MaskedPaths: list[str]

109 ReadonlyPaths: list[str]

110

111

112 class GraphDriverData(TypedDict):

113 LowerDir: str

114 MergedDir: str

115 UpperDir: str

116 WorkDir: str

117

118

119 class GraphDriver(TypedDict):

120 Data: GraphDriverData

121 Name: str

122

123

124 class Mount(TypedDict):

125 Type: str

126 Name: str

127 Source: str

128 Destination: str

129 Driver: str

130 Mode: str

131 RW: bool

132 Propagation: str

133

134

135 class ConfigLabels(TypedDict):

136 # Assuming more specific details may be added later

137 pass

138

139

140 class Config(TypedDict):

141 Hostname: str

142 Domainname: str

143 User: str

144 AttachStdin: bool

145 AttachStdout: bool

146 AttachStderr: bool

147 ExposedPorts: dict

148 Tty: bool

149 OpenStdin: bool

150 StdinOnce: bool

151 Env: list[str]

152 Cmd: list[str]

153 Image: str

154 Volumes: Optional[None]

155 WorkingDir: str

156 Entrypoint: list[str]

157 OnBuild: Optional[None]

158 Labels: ConfigLabels

159

160

161 class NetworkSettingsNetwork(TypedDict):

162 IPAMConfig: dict

163 Links: Optional[None]

164 Aliases: list[str]

165 NetworkID: str

166 EndpointID: str

167 Gateway: str

168 IPAddress: str

169 IPPrefixLen: int

170 IPv6Gateway: str

171 GlobalIPv6Address: str

172 GlobalIPv6PrefixLen: int

173 MacAddress: str

174 DriverOpts: Optional[None]

175

176

177 class NetworkSettings(TypedDict):

178 Bridge: str

179 SandboxID: str

180 HairpinMode: bool

181 LinkLocalIPv6Address: str

182 LinkLocalIPv6PrefixLen: int

183 Ports: dict

184 SandboxKey: str

185 SecondaryIPAddresses: Optional[None]

186 SecondaryIPv6Addresses: Optional[None]

187 EndpointID: str

188 Gateway: str

189 GlobalIPv6Address: str

190 GlobalIPv6PrefixLen: int

191 IPAddress: str

192 IPPrefixLen: int

193 IPv6Gateway: str

194 MacAddress: str

195 Networks: dict

196

197

198 class DockerContainer(TypedDict):

199 Id: str

200 Created: str

201 Path: str

202 Args: list[str]

203 State: State

204 Image: str

205 ResolvConfPath: str

206 HostnamePath: str

207 HostsPath: str

208 LogPath: str

209 Name: str

210 RestartCount: int

211 Driver: str

212 Platform: str

213 MountLabel: str

214 ProcessLabel: str

215 AppArmorProfile: str

216 ExecIDs: Optional[None]

217 HostConfig: HostConfig

218 GraphDriver: GraphDriver

219 Mounts: list[Mount]

220 Config: Config

221 NetworkSettings: NetworkSettings