#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
@summary: Print a list of all virtual machines in VMWare VSphere.

@author: Frank Brehm
@contact: frank@brehm-online.com
@copyright: © 2025 by Frank Brehm, Berlin
"""

from __future__ import print_function

import locale
import os
import sys

MIN_PYTHON_MAJOR = 3
MIN_PYTHON_MINOR = 6

if sys.version_info[0] != MIN_PYTHON_MAJOR:
    print(
        'This script is intended to use with Python{}.'.format(MIN_PYTHON_MAJOR), file=sys.stderr)
    print('You are using Python: {0}.{1}.{2}-{3}-{4}.\n'.format(
        *sys.version_info), file=sys.stderr)
    sys.exit(1)

if sys.version_info[0] == MIN_PYTHON_MAJOR and sys.version_info[1] < MIN_PYTHON_MINOR:
    print(
        'A minimal Python version of {}.{} is necessary to execute this script.'.format(
            MIN_PYTHON_MAJOR, MIN_PYTHON_MINOR), file=sys.stderr)
    print('You are using Python: {0}.{1}.{2}-{3}-{4}.\n'.format(
        *sys.version_info), file=sys.stderr)
    sys.exit(1)

# own modules:
cur_dir = os.getcwd()
base_dir = cur_dir

if sys.argv[0] != '' and sys.argv[0] != '-c':
    bin_dir = os.path.dirname(os.path.realpath(sys.argv[0]))
else:
    bin_dir = os.path.dirname(os.path.realpath(__file__))
base_dir = os.path.abspath(os.path.join(bin_dir, '..'))
lib_dir = os.path.join(base_dir, 'lib')
module_dir = os.path.join(lib_dir, 'fb_vmware')
if os.path.exists(module_dir):
    sys.path.insert(0, lib_dir)

from fb_vmware.app.get_vm_list import GetVmListApplication
from fb_vmware.xlate import XLATOR

_ = XLATOR.gettext

__author__ = 'Frank Brehm <frank@brehm-online.com>'
__copyright__ = '(C) 2025 by Frank Brehm, Berlin'

appname = os.path.basename(sys.argv[0])

locale.setlocale(locale.LC_ALL, '')

app = GetVmListApplication(appname=appname, base_dir=base_dir)
app.initialized = True

if app.verbose > 2:
    print(_('{c}-Object:\n{a}').format(c=app.__class__.__name__, a=app))

app()

sys.exit(0)

# vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4
