Source code for selvpcclient.resources.vrrp

from selvpcclient import base
from selvpcclient.util import resource_filter


[docs]class VRRP(base.Resource): """Represents a vrrp."""
[docs] def delete(self): """Delete current vrrp subnet from domain.""" self.manager.delete(self.id)
[docs]class VRRPManager(base.Manager): """Manager class for manipulating vrrp subnets.""" resource_class = VRRP @resource_filter def list(self): """Get list of all vrrp in current domain. :rtype: list of :class:`VRRP` """ return self._list('/vrrp_subnets', 'vrrp_subnets')
[docs] def add(self, project_id, vrrp): """Create vrrp in project. :param string project_id: Project id. :param dict vrrp: Dict with key `vrrp` and value as array of items region and quantity:: { "vrrp_subnets": [ { "regions": ["ru-1", "ru-2"], "quantity": 1, "prefix_length": 29, "type": "ipv4", } ] } :rtype: list of :class:`VRRP` """ url = '/vrrp_subnets/projects/{}'.format(project_id) return self._list(url, 'vrrp_subnets', body=vrrp)
[docs] def show(self, vrrp_id): """Show detailed vrrp information. :param string vrrp_id: VRRP id. :rtype: :class:`VRRP` """ return self._get('/vrrp_subnets/{}'.format(vrrp_id), 'vrrp_subnet')
[docs] def delete(self, vrrp_id): """Delete vrrp from domain. :param string vrrp_id: VRRP id. """ self._delete('/vrrp_subnets/{}'.format(vrrp_id))