Source code for saltext.vmware.utils.datacenter

# Copyright 2021 VMware, Inc.
# SPDX-License-Identifier: Apache-2.0
# pylint: disable=no-name-in-module
import logging

import salt.exceptions
import salt.modules.cmdmod
import salt.utils.path
import salt.utils.platform
import salt.utils.stringutils
from saltext.vmware.utils.common import create_datacenter as create_datacenter
from saltext.vmware.utils.common import delete_datacenter as delete_datacenter
from saltext.vmware.utils.common import get_datacenter as get_datacenter
from saltext.vmware.utils.common import get_datacenters as get_datacenters
from saltext.vmware.utils.common import list_datacenters as list_datacenters

try:
    from pyVmomi import vim, vmodl

    HAS_PYVMOMI = True
except ImportError:
    HAS_PYVMOMI = False

log = logging.getLogger(__name__)


[docs]def get_vm_datacenter(*, vm): """ Return a datacenter from vm """ datacenter = None while True: if isinstance(vm, vim.Datacenter): datacenter = vm break try: vm = vm.parent except AttributeError: break return datacenter