added podman, json and yaml
This commit is contained in:
60
venv/lib/python3.11/site-packages/podman/domain/ipam.py
Normal file
60
venv/lib/python3.11/site-packages/podman/domain/ipam.py
Normal file
@ -0,0 +1,60 @@
|
||||
"""Classes to support Internet Protocol Address Management.
|
||||
|
||||
Provided for compatibility
|
||||
"""
|
||||
from typing import Any, List, Mapping, Optional
|
||||
|
||||
|
||||
class IPAMPool(dict):
|
||||
"""Collect IP Network configuration."""
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
subnet: Optional[str] = None,
|
||||
iprange: Optional[str] = None,
|
||||
gateway: Optional[str] = None,
|
||||
aux_addresses: Optional[Mapping[str, str]] = None,
|
||||
):
|
||||
"""Create IPAMPool.
|
||||
|
||||
Args:
|
||||
subnet: IP subnet in CIDR format for this network.
|
||||
iprange: IP range in CIDR format for endpoints on this network.
|
||||
gateway: IP gateway address for this network.
|
||||
aux_addresses: Ignored.
|
||||
"""
|
||||
super().__init__()
|
||||
self.update(
|
||||
{
|
||||
"AuxiliaryAddresses": aux_addresses,
|
||||
"Gateway": gateway,
|
||||
"IPRange": iprange,
|
||||
"Subnet": subnet,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
class IPAMConfig(dict):
|
||||
"""Collect IP Address configuration."""
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
driver: Optional[str] = "default",
|
||||
pool_configs: Optional[List[IPAMPool]] = None,
|
||||
options: Optional[Mapping[str, Any]] = None,
|
||||
):
|
||||
"""Create IPAMConfig.
|
||||
|
||||
Args:
|
||||
driver: Network driver to use with this network.
|
||||
pool_configs: Network and endpoint information. Podman only supports one pool.
|
||||
options: Options to provide to the Network driver.
|
||||
"""
|
||||
super().__init__()
|
||||
self.update(
|
||||
{
|
||||
"Config": pool_configs or [],
|
||||
"Driver": driver,
|
||||
"Options": options or {},
|
||||
}
|
||||
)
|
||||
Reference in New Issue
Block a user