Description of problem: When Repo API methods are invoked that impact the repo in such a way that affects the pulp.repo, an asynchronous RMI needs to be invoked on all subscribed (bound) consumers to update the .repo file. Examples: * Changes to GPG keys. * Changes to 'published' flag. * Changes to 'relative_path'. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. Subscribe a consumer to a repo. 2. Add a package signed with a new GPG key 3. Add the new GPG key 4. Do yum install the <new package> 5. Watch yum barf. Actual results: Yum fails to install package. Expected results: The .repo file should be updated and yum downloads the new key. Additional info:
agent RepoLib.update() is called via RMI for consumers that are subscribed to repos modified in any of the following ways: * publish flag changes * gpg keys changed.
Fixed in 0.77.
Fixed in build 0.78.
jortel basically you create a repo and bind a consumer ... jortel make sure the agent (gofer) is running .. jortel then, change something like the 'publish' flag and see that it update the pulp.repo. should set enabled=0 jortel things like that. jortel or, you can set a gpgkey on the repo and then change it. then, observe the change in the .repo file
[root@preethi ~]# yum clean all Loaded plugins: langpacks, presto, refresh-packagekit Adding en_US to language list Cleaning repos: f14-updates fedora fedora-pulp updates Cleaning up Everything 0 delta-package files removed, by presto [root@preethi ~]# yum repolist Loaded plugins: langpacks, presto, refresh-packagekit Adding en_US to language list f14-updates | 4.7 kB 00:00 f14-updates/primary_db | 3.7 MB 00:00 fedora/metalink | 21 kB 00:00 fedora | 4.3 kB 00:00 fedora/primary_db | 14 MB 00:00 fedora-pulp | 1.3 kB 00:00 fedora-pulp/primary | 3.0 kB 00:00 fedora-pulp 10/10 updates/metalink | 18 kB 00:00 updates | 4.7 kB 00:00 updates/primary_db | 3.7 MB 00:00 repo id repo name status f14-updates f14-updates 5,280 fedora Fedora 14 - x86_64 22,161 fedora-pulp Pulp Testing Builds 10 updates Fedora 14 - x86_64 - Updates 5,280 repolist: 32,731 [root@preethi ~]# [root@preethi ~]# [root@preethi ~]# [root@preethi ~]# service goferd status goferd (25472) is running. [root@preethi ~]# vi /etc/gofer/agent.conf [root@preethi ~]# [root@preethi ~]# pulp-admin repo publish --id=f14-updates --disable Repository [f14-updates] 'published' has been set to [False] [root@preethi ~]# yum clean all Loaded plugins: langpacks, presto, refresh-packagekit Adding en_US to language list Cleaning repos: f14-updates fedora fedora-pulp updates Cleaning up Everything 0 delta-package files removed, by presto [root@preethi ~]# yum repolist Loaded plugins: langpacks, presto, refresh-packagekit Adding en_US to language list https://localhost/pulp/repos/pub/fedora/linux/updates/14/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 : https://localhost/pulp/repos/pub/fedora/linux/updates/14/x86_64/repodata/repomd.xml Trying other mirror. repo id repo name status f14-updates f14-updates 0 fedora Fedora 14 - x86_64 0 fedora-pulp Pulp Testing Builds 0 updates Fedora 14 - x86_64 - Updates 0 repolist: 0 [root@preethi ~]# cat /etc/yum.repos.d/pulp.repo # # Pulp Repositories # Managed by Pulp client # [f14-updates] name = f14-updates baseurl = https://localhost/pulp/repos/pub/fedora/linux/updates/14/x86_64 enabled = 1 sslverify = 0[root@preethi ~]# [root@preethi ~]# [root@preethi ~]#
Jeff, Please see my results in the above comment. The enabled doesn't seem to be switching to 0.
All of the pulp.repo updates are broken. The remote 'RepoLib' was renamed to 'Repo' and the RepoApi and ConsumerApi was not updated to match. Fixing for this and 663729 in pulp now. Also, the exception should have been logged. Will be fixed in gofer 0.13.
Fixed: d471805924691b5f349ab66c5abb3dad75d2841e
Fixed in build 0.123.
verified [root@preethi ~]# rpm -q pulp pulp-0.0.123-1.fc14.noarch [root@preethi ~]# pulp-admin repo publish --id=pulp-repo --disable Repository [pulp-repo] 'published' has been set to [False] [root@10 ~]# cat /etc/yum.repos.d/pulp.repo # # Pulp Repositories # Managed by Pulp client # [f13] name = f13 baseurl = https://preethi.usersys.redhat.com/pulp/repos/released/F-13/GOLD/Fedora/x86_64/os enabled = 1 sslverify = 0 [pulp-repo] name = pulp-repo baseurl = https://preethi.usersys.redhat.com/pulp/repos/repos/pulp/pulp/testing/fedora-13/x86_64 enabled = 0
Closing with Community Release 15 pulp-0.0.223-4.