Source code for saltext.vcf.modules.vcf_nsx_lb

"""Execution module for NSX Load Balancer (T7)."""

from saltext.vcf.clients import nsx_lb_app_profile as appprof
from saltext.vcf.clients import nsx_lb_monitor as monitor
from saltext.vcf.clients import nsx_lb_persistence as persistence
from saltext.vcf.clients import nsx_lb_pool as pool
from saltext.vcf.clients import nsx_lb_service as service
from saltext.vcf.clients import nsx_lb_virtual_server as vs

__virtualname__ = "vcf_nsx_lb"


def __virtual__():
    return __virtualname__


# Services


[docs] def list_services(profile=None): """List LB services. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.list_services """ return service.list_(__opts__, profile=profile)
[docs] def get_service(lb_service, profile=None): """Return one LB service. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.get_service <lb_service> """ return service.get(__opts__, lb_service, profile=profile)
[docs] def create_service(lb_service, profile=None, **spec): """Create / update an LB service (PUT semantics). CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.create_service <lb_service> size=SMALL """ return service.create(__opts__, lb_service, profile=profile, **spec)
[docs] def delete_service(lb_service, profile=None): """Delete an LB service. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.delete_service <lb_service> """ return service.delete(__opts__, lb_service, profile=profile)
# Virtual servers
[docs] def list_virtual_servers(profile=None): """List LB virtual servers. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.list_virtual_servers """ return vs.list_(__opts__, profile=profile)
[docs] def get_virtual_server(virtual_server, profile=None): """Return one virtual server. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.get_virtual_server <virtual_server> """ return vs.get(__opts__, virtual_server, profile=profile)
[docs] def create_virtual_server(virtual_server, profile=None, **spec): """Create / update a virtual server. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.create_virtual_server <vs> ip_address=10.0.0.1 ports='["80"]' """ return vs.create(__opts__, virtual_server, profile=profile, **spec)
[docs] def delete_virtual_server(virtual_server, profile=None): """Delete a virtual server. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.delete_virtual_server <virtual_server> """ return vs.delete(__opts__, virtual_server, profile=profile)
# Pools
[docs] def list_pools(profile=None): """List LB pools. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.list_pools """ return pool.list_(__opts__, profile=profile)
[docs] def get_pool(pool_id, profile=None): """Return one pool. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.get_pool <pool_id> """ return pool.get(__opts__, pool_id, profile=profile)
[docs] def create_pool(pool_id, profile=None, **spec): """Create / update a pool. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.create_pool <pool_id> algorithm=ROUND_ROBIN """ return pool.create(__opts__, pool_id, profile=profile, **spec)
[docs] def delete_pool(pool_id, profile=None): """Delete a pool. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.delete_pool <pool_id> """ return pool.delete(__opts__, pool_id, profile=profile)
# Monitor profiles
[docs] def list_monitors(profile=None): """List LB monitor profiles. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.list_monitors """ return monitor.list_(__opts__, profile=profile)
[docs] def get_monitor(monitor_id, profile=None): """Return one monitor profile. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.get_monitor <monitor_id> """ return monitor.get(__opts__, monitor_id, profile=profile)
[docs] def create_monitor(monitor_id, resource_type, profile=None, **spec): """Create / update a monitor profile. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.create_monitor <id> LBHttpMonitorProfile request_url=/healthz """ return monitor.create(__opts__, monitor_id, resource_type, profile=profile, **spec)
[docs] def delete_monitor(monitor_id, profile=None): """Delete a monitor profile. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.delete_monitor <monitor_id> """ return monitor.delete(__opts__, monitor_id, profile=profile)
# App profiles
[docs] def list_app_profiles(profile=None): """List LB application profiles. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.list_app_profiles """ return appprof.list_(__opts__, profile=profile)
[docs] def get_app_profile(app_profile, profile=None): """Return one app profile. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.get_app_profile <app_profile> """ return appprof.get(__opts__, app_profile, profile=profile)
[docs] def create_app_profile(app_profile, resource_type, profile=None, **spec): """Create / update an app profile. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.create_app_profile <id> LBHttpProfile """ return appprof.create(__opts__, app_profile, resource_type, profile=profile, **spec)
[docs] def delete_app_profile(app_profile, profile=None): """Delete an app profile. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.delete_app_profile <app_profile> """ return appprof.delete(__opts__, app_profile, profile=profile)
# Persistence profiles
[docs] def list_persistence_profiles(profile=None): """List LB persistence profiles. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.list_persistence_profiles """ return persistence.list_(__opts__, profile=profile)
[docs] def get_persistence_profile(persistence_id, profile=None): """Return one persistence profile. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.get_persistence_profile <persistence_id> """ return persistence.get(__opts__, persistence_id, profile=profile)
[docs] def create_persistence_profile(persistence_id, resource_type, profile=None, **spec): """Create / update a persistence profile. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.create_persistence_profile <id> LBSourceIpPersistenceProfile """ return persistence.create(__opts__, persistence_id, resource_type, profile=profile, **spec)
[docs] def delete_persistence_profile(persistence_id, profile=None): """Delete a persistence profile. CLI Example: .. code-block:: bash salt '*' vcf_nsx_lb.delete_persistence_profile <persistence_id> """ return persistence.delete(__opts__, persistence_id, profile=profile)