Making updates-testing more useful
Seth Vidal
skvidal at fedoraproject.org
Thu Dec 11 14:27:04 UTC 2008
On Thu, 11 Dec 2008, Richard Hughes wrote:
> On Wed, 2008-12-10 at 17:43 +0000, Richard Hughes wrote:
>> Also, this would imply automatically turning on updates-testing,
>> downloading metadata, and disabling updates-testing all behind the
>> users back. A few people might get upset by this.
>
> I've been prototyping something like this, but it doesn't seem to work:
>
> repos = self.yumbase.repos.repos.values()
> repos_enabled = []
> repos_disabled = []
>
> pkgs = []
> yb._up = None
> ygl = yb.doPackageLists(pkgnarrow='updates')
> pkgs.extend(ygl.updates)
> ygl = yb.doPackageLists(pkgnarrow='obsoletes')
> pkgs.extend(ygl.obsoletes)
>
> print pkgs
>
> for repo in repos:
> if repo.id.endswith('testing'):
> if not repo.isEnabled():
> repo.enablePersistent()
> repos_enabled.append(repo)
> else:
> if repo.isEnabled():
> repo.disablePersistent()
> repos_disabled.append(repo)
>
> pkgs = []
> yb._up = None
> ygl = yb.doPackageLists(pkgnarrow='updates')
> pkgs.extend(ygl.updates)
> ygl = yb.doPackageLists(pkgnarrow='obsoletes')
> pkgs.extend(ygl.obsoletes)
>
> print pkgs
>
> for repo in repos_enabled:
> repo.disablePersistent()
> for repo in repos_disabled:
> repo.enablePersistent()
>
> I'm already clearing the update list by doing "yb._up = None", but I
> can't seem to get the "testing" updates in the second pass. Any ideas?
two things:
1. yb.up has a property() setter so you can do yb.up = None
2. you need to do the doRepoSetup(thisrepo=repo) for the repo to get
picked up.
-sv
More information about the fedora-devel-list
mailing list