Bug 876725

Summary: RFE - consumer/agent - support option to perform 'best effort' install of content
Product: [Retired] Pulp Reporter: Brad Buckingham <bbuckingham>
Component: consumersAssignee: Sayli Karmarkar <skarmark>
Status: CLOSED CURRENTRELEASE QA Contact: Preethi Thomas <pthomas>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: MasterCC: cperry, jason.dobies, skarmark
Target Milestone: ---Keywords: FutureFeature, Triaged
Target Release: 2.1.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-04-08 16:03:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 854726    

Description Brad Buckingham 2012-11-14 19:38:42 UTC
Description of problem:

There is an inconsistency in behavior between a client-initiated yum install and server-initiated install of packages when one or more of the packages doesn't exist.

For example, (assuming unknownpkg doesn't exist)

action: client-initiated "yum install unknownpkg xterm"
result: xterm is installed

action: server (e.g. katello) initiated install of unknownpkg xterm
result: No package(s) available to install

From a user-perspective, I'd expect the behavior to be the same.  Based on discussion with Jeff, perhaps this could be allowed by introducing a new option on the server-initiated interface to support a 'best effort' install.  

Alternatively, if it cannot be supported the error message should be updated to be more accurate, since in this case xterm is available, but unknownpkg is not.

Version-Release number of selected component (if applicable):
pulp-server-2.0.6-0.2.beta.noarch

How reproducible:
always

Additional info:

The following is the complete result from pulp when attempting the server initiated install:

{"trace"=>"Traceback (most recent call last):\n\n  File \"/usr/lib/python2.7/site-packages/pulp/agent/lib/dispatcher.py\", line 75, in install\n    r = handler.install(conduit, units, dict(options))\n\n  File \"/usr/lib/pulp/agent/handlers/rpm.py\", line 99, in install\n    details = pkg.install(names)\n\n  File \"/usr/lib/python2.7/site-packages/pulp_rpm/handler/rpmtools.py\", line 124, in install\n    yb.install(pattern=info)\n\n  File \"/usr/lib/python2.7/site-packages/yum/__init__.py\", line 4157, in install\n    raise Errors.InstallError, _('No package(s) available to install')\n\nInstallError: No package(s) available to install\n", "message"=>"No package(s) available to install"}

Comment 1 Sayli Karmarkar 2013-01-23 10:12:45 UTC
Done.

$ pulp-admin rpm consumer package install run --consumer-id test-consumer -n pulp-test-package -n pulp-dot-2.0-test -n fail-pkg1 -n fail-pkg2
Install task created with id [106f4674-b3f6-44f4-b4be-0d1ef33cccfb]

This command may be exited via ctrl+c without affecting the install.

Refresh Repository Metadata [ OK ]
Downloading Packages [ OK ]
Check Package Signatures [ OK ]
Running Test Transaction [ OK ]
Running Transaction [ OK ]
Install Completed

+----------------------------------------------------------------------+
Installed
+----------------------------------------------------------------------+

Name: pulp-test-package
Version: 0.3.1
Arch: x86_64
Repoid: test-repo

Name: pulp-dot-2.0-test
Version: 0.1.2
Arch: x86_64
Repoid: test-repo

Failed to install following packages:

fail-pkg2 : No package(s) available to install

fail-pkg1 : No package(s) available to install

Comment 2 Sayli Karmarkar 2013-01-29 19:15:03 UTC
Merged changes. 

commit a69225421bc19d21022199e958ca70ccbea12143
Merge: f1f8558 59c9103
Author: skarmark <skarmark>
Date:   Tue Jan 29 11:13:08 2013 -0800

    Merge pull request #98 from pulp/skarmark-876725
    
    876725 - adding support for best effort install of content and unit tests

Moving to modified.

Comment 3 Jeff Ortel 2013-02-05 20:57:10 UTC
build: 2.1.0-0.3.alpha

Comment 4 Preethi Thomas 2013-03-19 13:42:02 UTC
verified

[root@cloud-qe-8 ~]# rpm -q pulp-server
pulp-server-2.1.0-0.23.beta.noarch
[root@cloud-qe-8 ~]#

Comment 5 Preethi Thomas 2013-04-08 16:03:03 UTC
Pulp 2.1 released 


http://www.pulpproject.org/2013/04/05/pulp-2-1-0-released/