Description of problem: When I directly upload splunkforwarder (splunk.com) rpms into pulp, they are presented at the url /pulp/repos/misc/splunkforwarder-5.0.2-149561-linux-2.6-x86_64.rpm , and the metadata agrees with this. Which is corrrect. However, when my three pulp-slaves sync up with my pulp-master (nothing fancy here, just set up to feed off of the master, with a cron script to sync them nightly (see bug id 968524)) they publish the rpm at the url /pulp/repos/misc/splunkforwarder-5.0.2-149561.x86_64.rpm ; AND they keep their metadata the same as the pulp-master, which is not self-consistent. This means that yum on any of my servers pointed at the pulp-slaves will fail to download this rpm. Version-Release number of selected component (if applicable): # rpm -qa |grep pulp pulp-builtins-admin-extensions-2.1.3-1.el6.noarch python-pulp-rpm-extension-2.1.3-1.el6.noarch python-oauth2-1.5.170-3.pulp.el6.noarch python-pulp-common-2.1.3-1.el6.noarch python-pulp-puppet-common-2.1.3-1.el6.noarch m2crypto-0.21.1.pulp-8.el6.x86_64 python-pulp-client-lib-2.1.3-1.el6.noarch mod_wsgi-3.4-1.pulp.el6.x86_64 pulp-rpm-admin-extensions-2.1.3-1.el6.noarch python-isodate-0.5.0-1.pulp.el6.noarch python-rhsm-1.8.0-1.pulp.el6.x86_64 python-pulp-rpm-common-2.1.3-1.el6.noarch pulp-nodes-common-2.1.3-1.el6.noarch pulp-admin-client-2.1.3-1.el6.noarch pulp-nodes-admin-extensions-2.1.3-1.el6.noarch python-pulp-bindings-2.1.3-1.el6.noarch pulp-puppet-admin-extensions-2.1.3-1.el6.noarch pulp-server-2.1.3-1.el6.noarch pulp-rpm-plugins-2.1.3-1.el6.noarch pulp-nodes-parent-2.1.3-1.el6.noarch How reproducible: Immanently Steps to Reproduce: 1. Set up an environment with pulp-slaves and a pulp-master 2. Download the splunk rpm 3. Upload to pulp-master 4. See what happens when your slaves sync it Actual results: Inconsistent url and metadata Expected results: Consistent url and metadata Additional info:
Jim, I have been unable to duplicate this issue using the pulp 2.3 testing branch. Would it be possible for you to send a copy of the splunkforwarder-5.0.2-149561-linux-2.6-x86_64.rpm in order to verify that there is not something specific about this RPM that is causing trouble?
The rpm is available here: http://www.splunk.com/download/universalforwarder The current version is newer, but this problem persists. -Jim
Jim, I have verified this issue as fixed in the current 2.3 testing builds using splunkforwarder-5.0.4-172409-linux-2.6-x86_64.rpm. If you are comfortable with trying out your scenario on the alpha build of Pulp 2.3 that would be helpful. I'm going to assume this issue has been taken care of with the other nodes work that was done for the 2.3 release. If you are able to duplicate this problem on the current 2.3 Alpha build I'd like to understand more about your particular scenario as I was not able to duplicate.
For reference, I also tested creating an http feed from one pulp server pointing to a repo on another pulp server in order to bypass the nodese code. I was unable to duplicate to duplicate using this scenario as well.
Excellent, I'll verify that I, also, cannot reproduce the bug on 2.3, and get back to this thread. Thanks, -Jim
verified on 2.3 [root@pulp-v2-server ~]# pulp-admin rpm repo uploads rpm --repo-id splunk --file splunkforwarder-5.0.4-172409-linux-2.6-x86_64.rpm -v +----------------------------------------------------------------------+ Unit Upload +----------------------------------------------------------------------+ Extracting necessary metadata for each request... [==================================================] 100% Analyzing: splunkforwarder-5.0.4-172409-linux-2.6-x86_64.rpm ... completed Files to be uploaded: splunkforwarder-5.0.4-172409-linux-2.6-x86_64.rpm Creating upload requests on the server... [==================================================] 100% Initializing: splunkforwarder-5.0.4-172409-linux-2.6-x86_64.rpm ... completed Starting upload of selected units. If this process is stopped through ctrl+c, the uploads will be paused and may be resumed later using the resume command or cancelled entirely using the cancel command. Uploading: splunkforwarder-5.0.4-172409-linux-2.6-x86_64.rpm [==================================================] 100% 21042386/21042386 bytes ... completed Importing into the repository... ... completed Deleting the upload request... ... completed [root@pulp-v2-server ~]# pulp-admin rpm repo content rpm --repo-id splunk Arch: x86_64 Buildhost: re-lin64-4 Checksum: 716407b11c3a1f69409fd6bf0cb8a0283a7e33d325fdbb42c2e2c9c2939f84f3 Checksumtype: sha256 Description: Splunk> The platform for machine data. Epoch: 0 Filename: splunkforwarder-5.0.4-172409-linux-2.6-x86_64.rpm License: (C) 2005-2013 Splunk Inc. All Rights Reserved Name: splunkforwarder Provides: splunkforwarder = 5.0.4-172409-0 Release: 172409 Requires: /bin/mv, /bin/sh, /bin/uname Vendor: Splunk Inc. Version: 5.0.4 [root@pulp-v2-server ~]# pulp-admin rpm repo publish run --repo-id splunk +----------------------------------------------------------------------+ Publishing Repository [splunk] +----------------------------------------------------------------------+ This command may be exited by pressing ctrl+c without affecting the actual operation on the server. Publishing packages... [==================================================] 100% Packages: 1/1 items ... completed Publishing distributions... [==================================================] 100% Distributions: 0/0 items ... completed Generating metadata [\] ... completed Publishing repository over HTTPS [-] ... completed [root@pulp-v2-server ~]# pulp-admin node repo enable --repo-id splunk Repository enabled. Note: Repository [ splunk ] will not be available for node synchronization until published. See: the 'node repo publish' command. Warning: enabling with auto-publish may degrade repository synchronization performance. [root@pulp-v2-server ~]# pulp-admin node repo publish --repo-id splunk This command may be exited via ctrl+c without affecting the request. [-] Waiting to begin... [-] Running... Publish succeeded. [root@pulp-v2-server ~]# pulp-admin node bind --node-id node2 --repo-id splunk Node bind succeeded. Note: Repository [ splunk ] will be included in node synchronization. [root@pulp-v2-server ~]# pulp-admin node sync run --node-id node2 This command may be exited via ctrl+c without affecting the request. [-] Waiting to begin... (1/3) Repository: errata-install [==================================================] 100% (2/3) Repository: splunk [==================================================] 100% (3/3) Repository: zoo [==================================================] 100% Synchronization succeeded +----------------------------------------------------------------------+ Child Node Synchronization +----------------------------------------------------------------------+ Repository: Action: Merged Id: errata-install Units: Added: 0 Removed: 0 Updated: 0 Repository: Action: Added Id: splunk Units: Added: 1 Removed: 0 Updated: 0 Repository: Action: Merged Id: zoo Units: Added: 0 Removed: 0 Updated: 0 [root@pulp-v2-server ~]#
Pulp 2.3 released.