Ejemplo n.º 1
0
def test_dedicated_portmap():
    base_job = Job(name='hello_world',
                   role='john_doe',
                   cluster='test-cluster',
                   task=Task(name='main',
                             processes=[],
                             resources=Resources(cpu=0.1,
                                                 ram=64 * MB,
                                                 disk=64 * MB)))

    config._validate_announce_configuration(AuroraConfig(base_job))
    config._validate_announce_configuration(
        AuroraConfig(base_job(constraints={'dedicated': 'mesos-team'})))
    config._validate_announce_configuration(
        AuroraConfig(
            base_job(constraints={'dedicated': 'mesos-team'},
                     announce=Announcer(portmap={'http': 80}))))

    with pytest.raises(ValueError):
        config._validate_announce_configuration(
            AuroraConfig(base_job(announce=Announcer(portmap={'http': 80}))))

    with pytest.raises(ValueError):
        config._validate_announce_configuration(
            AuroraConfig(
                base_job(announce=Announcer(portmap={'http': 80}),
                         constraints={'foo': 'bar'})))
Ejemplo n.º 2
0
def test_ports():
    announce = Announcer(portmap={'http': 80})
    assert make_config(announce).ports() == set()
    assert make_config(announce, 'http').ports() == set()
    assert make_config(announce, 'http', 'thrift').ports() == set(['thrift'])

    announce = Announcer(portmap={'http': 'aurora'})
    assert make_config(announce).ports() == set(['aurora'])
    assert make_config(announce, 'http').ports() == set(['aurora'])
    assert make_config(announce, 'http',
                       'thrift').ports() == set(['thrift', 'aurora'])

    announce = Announcer(portmap={'aurora': 'http'})
    assert make_config(announce).ports() == set(['http'])
    assert make_config(announce, 'http').ports() == set(['http'])
    assert make_config(announce, 'http',
                       'thrift').ports() == set(['http', 'thrift'])

    assert make_config(Empty).ports() == set()
    assert make_config(Empty, 'http').ports() == set(['http'])
    assert make_config(Empty, 'http',
                       'thrift').ports() == set(['http', 'thrift'])
def make_job(role, environment, name, primary_port, portmap):
    from apache.aurora.config.schema.base import (
        Announcer,
        Job,
        Process,
        Resources,
        Task,
    )
    task = Task(name='ignore2',
                processes=[Process(name='ignore3', cmdline='ignore4')],
                resources=Resources(cpu=1, ram=1, disk=1))
    job = Job(role=role,
              environment=environment,
              name=name,
              cluster='ignore1',
              task=task,
              announce=Announcer(primary_port=primary_port, portmap=portmap))
    return job
Ejemplo n.º 4
0
def test_static_port_aliasing():
    announce = Announcer(primary_port='thrift',
                         portmap={
                             'thrift': 8081,
                             'health': 8300,
                             'aurora': 'health'
                         })
    assert make_config(announce).ports() == set()
    assert make_config(announce).job().taskConfig.requestedPorts == set()
    assert make_config(announce, 'thrift').ports() == set()
    assert make_config(announce,
                       'thrift').job().taskConfig.requestedPorts == set()
    assert make_config(announce, 'thrift', 'health').ports() == set()
    assert make_config(announce, 'thrift',
                       'health').job().taskConfig.requestedPorts == set()
    assert make_config(announce, 'derp').ports() == set(['derp'])
    assert make_config(announce,
                       'derp').job().taskConfig.requestedPorts == set(['derp'])
Ejemplo n.º 5
0
def test_static_port_aliasing():
    announce = Announcer(primary_port='thrift',
                         portmap={
                             'thrift': 8081,
                             'health': 8300,
                             'aurora': 'health'
                         })
    config = make_config(announce)
    assert config.ports() == set()
    for resource in list(config.job().taskConfig.resources):
        assert resource.namedPort is None
    config = make_config(announce, 'thrift')
    assert config.ports() == set()
    for resource in list(config.job().taskConfig.resources):
        assert resource.namedPort is None
    config = make_config(announce, 'thrift', 'health')
    assert config.ports() == set()
    for resource in list(config.job().taskConfig.resources):
        assert resource.namedPort is None
    config = make_config(announce, 'derp')
    assert config.ports() == set(['derp'])
    assert Resource(namedPort='derp') in list(
        config.job().taskConfig.resources)