Ejemplo n.º 1
0
def generate_preference_pin(repos, priority):
    packages = " ".join(magic_consts.OSD_UPGRADE_REQUIRED_PACKAGES)
    contents = []
    priority_getter = operator.itemgetter('priority')
    for repo in sorted(repos, key=priority_getter):
        if repo['priority'] is None:
            continue
        repo['priority'] = max(repo['priority'], priority)
        _, content = apt.create_repo_preferences(repo, packages)
        contents.append(content)
    return '\n\n'.join(contents)
Ejemplo n.º 2
0
def change_repositories(node, repos):
    ssh.remove_all_files_from_dirs(['/etc/apt/sources.list.d',
                                    '/etc/apt/preferences.d'], node)
    sftp = ssh.sftp(node)
    for repo in repos:
        filename_source, content_source = apt.create_repo_source(repo)
        ssh.write_content_to_file(sftp, filename_source, content_source)
        if repo['priority']:
            filename_pref, content_pref = apt.create_repo_preferences(repo)
            ssh.write_content_to_file(sftp, filename_pref, content_pref)
    ssh.call(['apt-get', 'update'], node=node)
Ejemplo n.º 3
0
def test_create_repo_preferences(mocker, params, repo, filename, content):
    mock_fetch_release = mocker.patch("octane.util.apt.fetch_release_parameters")
    mock_fetch_release.return_value = params
    result = apt.create_repo_preferences(repo)
    assert result[0] == filename
    assert result[1] == content