Bug 1037693

Summary: puppet module install fails when you run pulp-consumer puppet module install
Product: [Retired] Pulp Reporter: Preethi Thomas <pthomas>
Component: puppet-supportAssignee: Barnaby Court <bcourt>
Status: CLOSED DUPLICATE QA Contact: pulp-qe-list
Severity: unspecified Docs Contact:
Priority: high    
Version: 2.3CC: kim-andre.johansen, mhrivnak, skarmark
Target Milestone: ---Keywords: Triaged
Target Release: 2.3.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-12-17 14:23:59 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:

Description Preethi Thomas 2013-12-03 15:37:20 UTC
Description of problem

pulp-admin puppet consumer install run failing


[root@pulp-v2-node ~]# pulp-admin puppet consumer install run --consumer-id client --content-unit puppetlabs/stdlib/4.1.0
This command may be exited via ctrl+c without affecting the request.

[-]
Waiting to begin...


An unexpected error has occurred. More information can be found in the client
log file ~/.pulp/admin.log.


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. create and sync a puppet repo
2. bind a consumer to the repo
3. try to install a module using the pulp-admin

Actual results:

[root@pulp-v2-node ~]# pulp-admin puppet consumer install run --consumer-id client --content-unit puppetlabs/stdlib/4.1.0
This command may be exited via ctrl+c without affecting the request.

[-]
Waiting to begin...


An unexpected error has occurred. More information can be found in the client
log file ~/.pulp/admin.log.


[root@pulp-v2-node ~]# pulp-admin puppet repo modules --repo-id puppet-repo --str-eq "name=stdlib"
Name:         stdlib
Version:      3.2.0
Author:       offline
Dependencies: 
Description:  Standard Library for Puppet Modules
License:      Apache 2.0
Project Page: https://github.com/puppetlabs/puppetlabs-stdlib
Source:       git://github.com/puppetlabs/puppetlabs-stdlib
Summary:      Puppet Module Standard Library
Tag List:     

Name:         stdlib
Version:      4.1.0
Author:       puppetlabs
Dependencies: 
Description:  Standard Library for Puppet Modules
License:      Apache 2.0
Project Page: https://github.com/puppetlabs/puppetlabs-stdlib
Source:       git://github.com/puppetlabs/puppetlabs-stdlib.git
Summary:      Puppet Module Standard Library
Tag List:     puppetlabs, library, stdlib, standard, stages


[root@pulp-v2-node ~]# 


Expected results:


Additional info:


2013-12-03 11:28:14,104 - ERROR - Client-side exception occurred
Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/pulp/client/extensions/core.py", line 478, in run
    exit_code = Cli.run(self, args)
  File "/usr/lib/python2.6/site-packages/okaara/cli.py", line 974, in run
    exit_code = command_or_section.execute(self.prompt, remaining_args)
  File "/usr/lib/python2.6/site-packages/pulp/client/extensions/extensions.py", line 224, in execute
    return self.method(*arg_list, **clean_kwargs)
  File "/usr/lib/python2.6/site-packages/pulp_puppet/extensions/admin/consumer/content.py", line 201, in run
    return super(InstallCommand, self).run(**kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/client/commands/consumer/content.py", line 115, in run
    self.poll([task], kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/client/commands/polling.py", line 143, in poll
    self.succeeded(task)
TypeError: succeeded() takes exactly 3 arguments (2 given)
2013-12-03 11:28:28,405 - ERROR - Client-side exception occurred
Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/pulp/client/extensions/core.py", line 478, in run
    exit_code = Cli.run(self, args)
  File "/usr/lib/python2.6/site-packages/okaara/cli.py", line 974, in run
    exit_code = command_or_section.execute(self.prompt, remaining_args)
  File "/usr/lib/python2.6/site-packages/pulp/client/extensions/extensions.py", line 224, in execute
    return self.method(*arg_list, **clean_kwargs)
  File "/usr/lib/python2.6/site-packages/pulp_puppet/extensions/admin/consumer/content.py", line 201, in run
    return super(InstallCommand, self).run(**kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/client/commands/consumer/content.py", line 115, in run
    self.poll([task], kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/client/commands/polling.py", line 143, in poll
    self.succeeded(task)
TypeError: succeeded() takes exactly 3 arguments (2 given)
2013-12-03 11:48:46,105 - ERROR - Client-side exception occurred
Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/pulp/client/extensions/core.py", line 478, in run
    exit_code = Cli.run(self, args)
  File "/usr/lib/python2.6/site-packages/okaara/cli.py", line 974, in run
    exit_code = command_or_section.execute(self.prompt, remaining_args)
  File "/usr/lib/python2.6/site-packages/pulp/client/extensions/extensions.py", line 224, in execute
    return self.method(*arg_list, **clean_kwargs)
  File "/usr/lib/python2.6/site-packages/pulp_puppet/extensions/admin/consumer/content.py", line 201, in run
    return super(InstallCommand, self).run(**kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/client/commands/consumer/content.py", line 115, in run
    self.poll([task], kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/client/commands/polling.py", line 143, in poll
    self.succeeded(task)
TypeError: succeeded() takes exactly 3 arguments (2 given)

Comment 1 Kim Johansen 2013-12-11 13:50:50 UTC
Got the same issue:

[root@git01 pulp]# rpm -qa|grep pulp
createrepo-0.9.9-21.2.pulp.el6.noarch
python-pulp-puppet-common-2.3.0-1.el6.noarch
pulp-selinux-2.3.0-1.el6.noarch
pulp-puppet-admin-extensions-2.3.0-1.el6.noarch
python-pulp-common-2.3.0-1.el6.noarch
python-pulp-client-lib-2.3.0-1.el6.noarch
python-isodate-0.5.0-1.pulp.el6.noarch
pulp-rpm-plugins-2.3.0-1.el6.noarch
python-pulp-bindings-2.3.0-1.el6.noarch
mod_wsgi-3.4-1.pulp.el6.x86_64
pulp-puppet-plugins-2.3.0-1.el6.noarch
python-pulp-rpm-common-2.3.0-1.el6.noarch
m2crypto-0.21.1.pulp-8.el6.x86_64
pulp-admin-client-2.3.0-1.el6.noarch
pulp-server-2.3.0-1.el6.noarch

[root@ritd-git01 pulp]# pulp-admin puppet consumer install run --consumer-id=puppetproxy02 -u puppetlabs/stdlib/4.1.0
This command may be exited via ctrl+c without affecting the request.

[-]
Waiting to begin...


An unexpected error has occurred. More information can be found in the client
log file ~/.pulp/admin.log.

2013-12-11 13:36:42,950 - ERROR - Client-side exception occurred
Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/pulp/client/extensions/core.py", line 478, in run
    exit_code = Cli.run(self, args)
  File "/usr/lib/python2.6/site-packages/okaara/cli.py", line 974, in run
    exit_code = command_or_section.execute(self.prompt, remaining_args)
  File "/usr/lib/python2.6/site-packages/pulp/client/extensions/extensions.py", line 224, in execute
    return self.method(*arg_list, **clean_kwargs)
  File "/usr/lib/python2.6/site-packages/pulp_puppet/extensions/admin/consumer/content.py", line 201, in run
    return super(InstallCommand, self).run(**kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/client/commands/consumer/content.py", line 115, in run
    self.poll([task], kwargs)
  File "/usr/lib/python2.6/site-packages/pulp/client/commands/polling.py", line 143, in poll
    self.succeeded(task)
TypeError: succeeded() takes exactly 3 arguments (2 given)

Comment 2 Michael Hrivnak 2013-12-12 20:02:21 UTC
I have reproduced this. It seems that the forge API is not able to find the unit. It is taking this code path:

https://github.com/pulp/pulp_puppet/blob/5af50530/pulp_puppet_plugins/pulp_puppet/forge/unit.py#L186

Comment 3 Michael Hrivnak 2013-12-17 13:51:23 UTC
In my case, an incorrect hostname on the server was causing the install to fail. The actual bug was only a client-side parsing error, which did not prevent the installation from being successful.

Comment 4 Barnaby Court 2013-12-17 14:23:30 UTC
I was able to install Puppet modules using the 2.3.0-1 build.  I did notice that the puppetlabs/stdlibs install is fairly picky about the version of puppet that is installed on the consumer client.  

The 4.1.0 version of stdlibs is not compatible with puppet 2.7.x

The errors regarding TypeError: succeeded() takes exactly 3 arguments (2 given) have been fixed as part of https://bugzilla.redhat.com/show_bug.cgi?id=1040958

Comment 5 Barnaby Court 2013-12-17 14:23:59 UTC

*** This bug has been marked as a duplicate of bug 1040958 ***