コード例 #1
0
def generate_config():
    """
    Uses a current configuration if possible otherwise creates a new
    configuration for the specified job type.

    :Returns:
        - An instance of the :class:`batchapps.Configuration`.
    """

    try:
        cfg = Configuration(log_level="info", job_type="ImageMagick")
        print("Existing config found.")
        return cfg

    except InvalidConfigException as exp:
        print("Invalid Configuration: {0}\n" "Attempting to create new config.".format(exp))

    try:
        cfg = Configuration(log_level="info")

        cfg.aad_config(account=ACCOUNT_ID, key=ACCOUNT_KEY, ENDPOINT=endpoint, unattended=True)

        cfg.add_jobtype("ImageMagick")
        cfg.current_jobtype("ImageMagick")
        cfg.set("width", "500")
        cfg.set("height", "500")
        cfg.set_default_jobtype()

    except InvalidConfigException as exp:
        raise RuntimeError("Invalid Configuration: {0}".format(exp))

    finally:
        cfg.save_config()
        return cfg
コード例 #2
0
def create_config():
    """
    Looks for configuration settings for specified application, otherwise
    creates new configuration, sets chosen log_level.
    
    :Returns:
        - a :class:`.Configuration` instance object
    """

    global LOG_LEVEL

    if input("Run in debug mode? (yes/no)")[0].lower() == 'n':
        LOG_LEVEL = "info"

    try:
        # Look for application in existing config file
        config = Configuration(log_level=LOG_LEVEL, jobtype="MyApp")
        print("Config found.")
        return config

    except InvalidConfigException:
        print("Valid config not found. Attempting to create new config.")

    try:  
        config = Configuration(log_level=LOG_LEVEL)
        config.aad_config(endpoint=ENDPOINT,
                          account=ACCOUNT_ID,
                          key=ACCOUNT_KEY,
                          unattended=True)

        config.add_jobtype("MyApp")
        config.current_jobtype("MyApp")
        
        # Examples of default config settings for your job
        config.set("width", "500")
        config.set("height", "500")

        # Set MyApp to be the default job type
        config.set_default_jobtype()

    except InvalidConfigException as e:
         raise RuntimeError("Invalid Configuration: {0}".format(e))

    finally:
        config.save_config()
        return config
def create_config():
    """
    Looks for configuration settings for specified application, otherwise
    creates new configuration, sets chosen log_level.
    
    :Returns:
        - a :class:`.Configuration` instance object
    """

    global LOG_LEVEL

    if input("Run in debug mode? (yes/no)")[0].lower() == 'n':
        LOG_LEVEL = "info"

    try:
        # Look for application in existing config file
        config = Configuration(log_level=LOG_LEVEL, jobtype="MyApp")
        print("Config found.")
        return config

    except InvalidConfigException:
        print("Valid config not found. Attempting to create new config.")

    try:
        config = Configuration(log_level=LOG_LEVEL)
        config.aad_config(endpoint=ENDPOINT,
                          account=ACCOUNT_ID,
                          key=ACCOUNT_KEY,
                          unattended=True)

        config.add_jobtype("MyApp")
        config.current_jobtype("MyApp")

        # Examples of default config settings for your job
        config.set("width", "500")
        config.set("height", "500")

        # Set MyApp to be the default job type
        config.set_default_jobtype()

    except InvalidConfigException as e:
        raise RuntimeError("Invalid Configuration: {0}".format(e))

    finally:
        config.save_config()
        return config
コード例 #4
0
    def test_config_aad_config(self):
        """Test aad_config"""

        _cfg = configparser.RawConfigParser()
        cfg = mock.create_autospec(Configuration)
        cfg._log = logging.getLogger("aad")
        cfg._config = _cfg
        cfg._reformat_config.return_value = {"a":1, "b":2}
        cfg._validate_auth = lambda a: dict(_cfg.items("Authentication"))

        with self.assertRaises(InvalidConfigException):
            Configuration.aad_config(cfg)

        _cfg.add_section("Authentication")
        aad = Configuration.aad_config(cfg)
        self.assertEqual(aad, {"a":1, "b":2})

        aad = Configuration.aad_config(cfg, client_id="a", tenant="b",
                                       endpoint="c")
        self.assertEqual(aad, {"a":1, "b":2, "client_id":"a", "tenant":"b",
                               "endpoint":"c"})
        _cfg.remove_section("Authentication")
        _cfg.add_section("Authentication")

        _cfg.set("Authentication", "root", "test")
        aad = Configuration.aad_config(cfg, key=3, redirect=4)
        self.assertEqual(aad, {"root":"test", "unattended_key":"3",
                               "redirect_uri":"4"})

        _cfg.remove_section("Authentication")
        _cfg.add_section("Authentication")
        _cfg.set("Authentication", "root", "test")
        
        aad = Configuration.aad_config(cfg, account=3)
        aad = Configuration.aad_config(cfg, account="test;test")
        aad = Configuration.aad_config(cfg, account="ClientID=abc;TenantID=xyz")
        self.assertEqual(aad, {"root":"test", "unattended_account":"ClientID=abc;TenantID=xyz"})

        _cfg.remove_section("Authentication")
        _cfg.add_section("Authentication")
        _cfg.set("Authentication", "root", "test")

        aad = Configuration.aad_config(cfg, account="ClientID=abc;TenantID=xyz",
                                       client_id="foo", tenant="bar")
        self.assertEqual(aad, {"root":"test", "client_id":"foo", "tenant":"bar",
                               "unattended_account":"ClientID=abc;TenantID=xyz"})
コード例 #5
0
def generate_config():
    """
    Uses a current configuration if possible otherwise creates a new
    configuration for the specified job type.

    :Returns:
        - An instance of the :class:`batchapps.Configuration`.
    """

    try:
        cfg = Configuration(log_level="info", job_type="ImageMagick")
        print("Existing config found.")
        return cfg

    except InvalidConfigException as exp:
        print("Invalid Configuration: {0}\n"
              "Attempting to create new config.".format(exp))

    try:
        cfg = Configuration(log_level="info")

        cfg.aad_config(account=ACCOUNT_ID,
                       key=ACCOUNT_KEY,
                       ENDPOINT=endpoint,
                       unattended=True)

        cfg.add_jobtype("ImageMagick")
        cfg.current_jobtype("ImageMagick")
        cfg.set("width", "500")
        cfg.set("height", "500")
        cfg.set_default_jobtype()

    except InvalidConfigException as exp:
        raise RuntimeError("Invalid Configuration: {0}".format(exp))

    finally:
        cfg.save_config()
        return cfg
コード例 #6
0
    def test_config_aad_config(self):
        """Test aad_config"""

        _cfg = configparser.RawConfigParser()
        cfg = mock.create_autospec(Configuration)
        cfg._log = logging.getLogger("aad")
        cfg._config = _cfg
        cfg._reformat_config.return_value = {"a": 1, "b": 2}
        cfg._validate_auth = lambda a: dict(_cfg.items("Authentication"))

        with self.assertRaises(InvalidConfigException):
            Configuration.aad_config(cfg)

        _cfg.add_section("Authentication")
        aad = Configuration.aad_config(cfg)
        self.assertEqual(aad, {"a": 1, "b": 2})

        aad = Configuration.aad_config(cfg,
                                       client_id="a",
                                       tenant="b",
                                       endpoint="c")
        self.assertEqual(aad, {
            "a": 1,
            "b": 2,
            "client_id": "a",
            "tenant": "b",
            "endpoint": "c"
        })
        _cfg.remove_section("Authentication")
        _cfg.add_section("Authentication")

        _cfg.set("Authentication", "root", "test")
        aad = Configuration.aad_config(cfg, key=3, redirect=4)
        self.assertEqual(aad, {
            "root": "test",
            "unattended_key": "3",
            "redirect_uri": "4"
        })

        _cfg.remove_section("Authentication")
        _cfg.add_section("Authentication")
        _cfg.set("Authentication", "root", "test")

        aad = Configuration.aad_config(cfg, account=3)
        aad = Configuration.aad_config(cfg, account="test;test")
        aad = Configuration.aad_config(cfg,
                                       account="ClientID=abc;TenantID=xyz")
        self.assertEqual(aad, {
            "root": "test",
            "unattended_account": "ClientID=abc;TenantID=xyz"
        })

        _cfg.remove_section("Authentication")
        _cfg.add_section("Authentication")
        _cfg.set("Authentication", "root", "test")

        aad = Configuration.aad_config(cfg,
                                       account="ClientID=abc;TenantID=xyz",
                                       client_id="foo",
                                       tenant="bar")
        self.assertEqual(
            aad, {
                "root": "test",
                "client_id": "foo",
                "tenant": "bar",
                "unattended_account": "ClientID=abc;TenantID=xyz"
            })