Esempio n. 1
0
def test_push_one_collision(tmpdir):
    rdoup_path, dest_path = prep_push_test(tmpdir, 'one_added', 'collision')
    dest_base = str(dest_path.join('openstack-'))
    pre_rdoup_tree = cfind(rdoup_path)
    pre_dest_tree = cfind(dest_path)
    with tmpdir.as_cwd():
        rdopkg.shell.main(cargs=['push-updates', str(rdoup_path), dest_base])
    # Nothing should change on collision - ensure rollback
    dest_tree = cfind(dest_path)
    assert dest_tree == pre_dest_tree
    rdoup_tree = cfind(rdoup_path)
    assert rdoup_tree == pre_rdoup_tree
Esempio n. 2
0
def test_push_selected_mixed_clean(tmpdir):
    rdoup_path, dest_path = prep_push_test(tmpdir, 'mixed', 'clean')
    dest_base = str(dest_path.join('openstack-'))
    with tmpdir.as_cwd():
        rdopkg.shell.main(cargs=['push-updates',
                                 str(rdoup_path), dest_base,
                                 '-f', 'ready/iceh.yml', 'updates/griz.yml',
                                 ])

    tree = cfind(dest_path)
    exp_tree = {
        './openstack-grizzly',
        './openstack-grizzly/EMPTY',
        './openstack-grizzly/epel-6',
        './openstack-grizzly/epel-6/potato-1.0.0-3.el6.noarch.rpm',
        './openstack-grizzly/epel-6/potato-1.0.0-3.el6.src.rpm',
        './openstack-grizzly/fedora-20',
        './openstack-grizzly/fedora-20/potato-1.0.0-2.fc21.noarch.rpm',
        './openstack-grizzly/fedora-20/potato-1.0.0-2.fc21.src.rpm',
        './openstack-havana',
        './openstack-havana/EMPTY',
        './openstack-icehouse',
        './openstack-icehouse/EMPTY',
        './openstack-icehouse/epel-6',
        './openstack-icehouse/epel-6/banana-1.0.0-3.el6.noarch.rpm',
        './openstack-icehouse/epel-6/banana-1.0.0-3.el6.src.rpm',
        './openstack-icehouse/fedora-20',
        './openstack-icehouse/fedora-20/banana-1.0.0-2.fc21.noarch.rpm',
        './openstack-icehouse/fedora-20/banana-1.0.0-2.fc21.src.rpm',
        './sign-rpms',
    }
    assert tree == exp_tree

    tree = cfind(rdoup_path, include_dirs=False)
    assert tree == {
        './ready/fail.yml',
        './ready/hava.yml',
        './pushed/iceh.yml',
        './pushed/iceh.yml.files',
        './pushed/griz.yml',
        './pushed/griz.yml.files',
    }

    assert_files_list(
        str(rdoup_path.join('pushed/iceh.yml.files')), dest_base,
        FILE_LISTS['iceh.yml'])
    assert_files_list(
        str(rdoup_path.join('pushed/griz.yml.files')), dest_base,
        FILE_LISTS['griz.yml'])
Esempio n. 3
0
def test_push_all_mixed_collision_overwrite(tmpdir):
    rdoup_path, dest_path = prep_push_test(tmpdir, 'mixed', 'collision')
    dest_base = str(dest_path.join('openstack-'))
    with tmpdir.as_cwd():
        rdopkg.shell.main(
            cargs=['push-updates', str(rdoup_path), dest_base, '-w'])

    tree = cfind(dest_path)
    exp_tree = {
        './openstack-grizzly',
        './openstack-grizzly/EMPTY',
        './openstack-havana',
        './openstack-havana/epel-6',
        './openstack-havana/epel-6/banana-1.0.0-3.el6.src.rpm',
        './openstack-havana/epel-6/orange-1.0.0-3.el6.noarch.rpm',
        './openstack-havana/epel-6/orange-1.0.0-3.el6.src.rpm',
        './openstack-havana/fedora-20',
        './openstack-havana/fedora-20/orange-1.0.0-2.fc21.noarch.rpm',
        './openstack-havana/fedora-20/orange-1.0.0-2.fc21.src.rpm',
        './openstack-icehouse',
        './openstack-icehouse/epel-6',
        './openstack-icehouse/epel-6/banana-1.0.0-3.el6.src.rpm',
        './openstack-icehouse/fedora-20',
        './openstack-icehouse/fedora-20/banana-1.0.0-2.fc21.noarch.rpm',
        './openstack-icehouse/fedora-20/banana-1.0.0-2.fc21.src.rpm',
        './openstack-icehouse/epel-6/banana-1.0.0-3.el6.noarch.rpm',
        './sign-rpms',
    }
    assert tree == exp_tree

    tree = cfind(rdoup_path, include_dirs=False)
    # failed update shoud remain as well as updates outside of ready/
    assert tree == {
        './pushed/hava.yml',
        './pushed/hava.yml.files',
        './pushed/iceh.yml',
        './pushed/iceh.yml.files',
        './ready/fail.yml',
        './updates/griz.yml',
    }

    assert_files_list(
        str(rdoup_path.join('pushed/hava.yml.files')), dest_base,
        FILE_LISTS['hava.yml'])
Esempio n. 4
0
def test_push_one_clean(tmpdir):
    rdoup_path, dest_path = prep_push_test(tmpdir, 'one_added', 'clean')
    dest_base = str(dest_path.join('openstack-'))
    with tmpdir.as_cwd():
        rdopkg.shell.main(cargs=['push-updates', str(rdoup_path), dest_base])

    # pushed packages
    tree = cfind(dest_path)
    exp_tree = {
        './openstack-grizzly',
        './openstack-grizzly/EMPTY',
        './openstack-havana',
        './openstack-havana/EMPTY',
        './openstack-icehouse',
        './openstack-icehouse/EMPTY',
        './openstack-icehouse/epel-6',
        './openstack-icehouse/epel-6/banana-1.0.0-3.el6.noarch.rpm',
        './openstack-icehouse/epel-6/banana-1.0.0-3.el6.src.rpm',
        './openstack-icehouse/fedora-20',
        './openstack-icehouse/fedora-20/banana-1.0.0-2.fc21.noarch.rpm',
        './openstack-icehouse/fedora-20/banana-1.0.0-2.fc21.src.rpm',
        './sign-rpms',
    }
    assert tree == exp_tree

    # rdo-update repo changes
    tree = cfind(rdoup_path, include_dirs=False)
    exp_tree = {
        './pushed/iceh.yml',
        './pushed/iceh.yml.files',
    }
    assert tree == exp_tree

    # list of pushed files
    assert_files_list(
        str(rdoup_path.join('pushed/iceh.yml.files')), dest_base,
        FILE_LISTS['iceh.yml'])
Esempio n. 5
0
def test_dl_basic(tmpdir):
    upf = common.update_file('basic')
    assert upf.check()
    with tmpdir.as_cwd():
        run('download', '-f', str(upf), '-o', 'out')
        current = common.cfind('out')
    right = {
        './icehouse',
        './icehouse/fedora-20',
        './icehouse/fedora-20/banana-1.0-1.fc21.noarch.rpm',
        './icehouse/fedora-20/banana-1.0-1.fc21.src.rpm',
        './icehouse/fedora-20/orange-2.0-2.el6.noarch.rpm',
        './icehouse/fedora-20/orange-2.0-2.el6.src.rpm',
    }
    assert current == right
Esempio n. 6
0
def test_dl_archfail(tmpdir):
    upf = common.update_file('archfail')
    assert upf.check()
    with tmpdir.as_cwd():
        ec = run('download', '--file', str(upf), '-u', '-o', 'out')
        current = common.cfind('.')
    right = {
          "./out",
          "./out/archfail.yml",
          "./out/archfail.yml/icehouse",
          "./out/archfail.yml/icehouse/fedora-20",
          "./out/archfail.yml/icehouse/fedora-20/banana-1.0-1.fc21.noarch.rpm",
          "./out/archfail.yml/icehouse/fedora-20/banana-1.0-1.fc21.src.rpm",
          "./out/archfail.yml/icehouse/fedora-20/orange-2.0-2.el6.src.rpm",
    }
    import json
    print json.dumps(sorted(current), indent=2)
    assert current == right