Example #1
0
    def test_fail_authenticated_session(self, tmpdir, ssl_session):
        url = 'https://example.com'
        args = {}

        session = flexmock()
        if ssl_session:
            args['ssl_certs_dir'] = str(tmpdir)
            session.should_receive('ssl_login').once().and_return(False)
        else:
            session.should_receive('krb_login').once().and_return(False)

        opts = {'krb_rdns': False, 'use_fast_upload': True}
        opts.update(KOJI_RETRY_OPTS)

        (flexmock(koji_util.koji).should_receive('ClientSession').with_args(
            url, opts=opts).and_return(session))
        with pytest.raises(RuntimeError):
            create_koji_session(url, args)
Example #2
0
    def test_create_simple_session(self):
        url = 'https://example.com'
        session = flexmock()
        opts = {'krb_rdns': False, 'use_fast_upload': True}
        opts.update(KOJI_RETRY_OPTS)

        (flexmock(koji_util.koji).should_receive('ClientSession').with_args(
            url, opts=opts).and_return(session))
        assert create_koji_session(url) == session
Example #3
0
def get_koji_session(config):
    from atomic_reactor.utils.koji import create_koji_session

    auth_info = {
        "proxyuser": config.koji['auth'].get('proxyuser'),
        "ssl_certs_dir": config.koji['auth'].get('ssl_certs_dir'),
        "krb_principal": config.koji['auth'].get('krb_principal'),
        "krb_keytab": config.koji['auth'].get('krb_keytab_path')
    }

    use_fast_upload = config.koji.get('use_fast_upload', True)

    return create_koji_session(config.koji['hub_url'], auth_info,
                               use_fast_upload)