def main()

in selftest/selftest.py [0:0]


def main() -> None:
    """Main entry point."""
    parser = argparse.ArgumentParser(
        description="Azure VM utilities self-tests script."
    )
    parser.add_argument(
        "--debug",
        action="store_true",
        help="Enable debug logging",
    )
    parser.add_argument(
        "--skip-imds-validation",
        action="store_true",
        help="Skip imds validation (allow for running tests outside Azure VM)",
    )
    parser.add_argument(
        "--skip-network-validation",
        action="store_true",
        help="Skip network validation (allow for running test without reboot after install)",
    )
    parser.add_argument(
        "--skip-symlink-validation",
        action="store_true",
        help="Skip symlink validation (allow for running test without reboot after install)",
    )
    args = parser.parse_args()

    if args.debug:
        logging.basicConfig(format="[%(asctime)s] %(message)s", level=logging.DEBUG)
    else:
        logging.basicConfig(format="[%(asctime)s] %(message)s", level=logging.INFO)

    validator = AzureVmUtilsValidator(
        skip_imds_validation=args.skip_imds_validation,
        skip_network_validation=args.skip_network_validation,
        skip_symlink_validation=args.skip_symlink_validation,
    )
    validator.validate()