Issue #680
closedpuppet repo publish with install_path set, installs to wrong directory
Description
Description of problem:
Publishing a puppet repo with an install path causes repo to be 'installed' to the wrong directory.
For example, given this distributor config:
{"repo_id"=>"Default_Organization-Library-puppet1comp", "_ns"=>"repo_distributors", "last_publish"=>"2015-01-27T14:08:31Z", "auto_publish"=>true, "scheduled_publishes"=>[], "distributor_type_id"=>"puppet_install_distributor", "_id"=>{"$oid"=>"54c79bdd5ca01357c0612249"}, "config"=>{"install_path"=>"/etc/puppet/environments/KT_Default_Organization_Library_puppet1comp_12/modules", "auto_publish"=>true}, "id"=>"Default_Organization-Library-puppet1comp"}
it gets published to:
/etc/puppet/environments/KT_Default_Organization_Library_puppet1comp_12/pulp1bKXUS/
Version-Release number of selected component (if applicable):
pulp-puppet-plugins-2.5.1-1.el6.noarch
pulp-server-2.5.1-1.el6.noarch
How reproducible:
Always
Steps to Reproduce:
1. Create a puppet repo with an install_path set to some path: /etc/puppet/environments/foo/modules
2. Upload one or more puppet modules
3. Examine the install path to verify that the modules made it there
Actual results:
modules are not there, but are in one directory up in a randomly named directory.
Expected results:
puppet modules are deployed to /etc/puppet/environments/foo/module
+ This bug was cloned from Bugzilla Bug #1186445 +
Files
Updated by jsherril@redhat.com over 8 years ago
In my Steps to reproduce, i forgot a step:
2.5. Publish the puppet distributor for this puppet repo.
+ This comment was cloned from Bugzilla #1186445 comment 1 +
Updated by jsherril@redhat.com over 8 years ago
Its odd because in my case the task shows a failure (see the attached text file), but the task in pulp shows as success:
Operations: publish
Resources: Default_Organization-Library-mycontentview (repository)
State: Successful
Start Time: 2015-01-27T18:07:03Z
Finish Time: 2015-01-27T18:07:03Z
Task Id: f8088fd2-139c-4092-9c2b-66168b45455a
+ This comment was cloned from Bugzilla #1186445 comment 2 +
Updated by jsherril@redhat.com over 8 years ago
In yaml format
+ This comment was cloned from Bugzilla #1186445 comment 3 +
Updated by jsherril@redhat.com over 8 years ago
the relevant part of the task:
summary: ! 'failed to clear destination directory: [Errno 2] No such file or directory:
''/etc/puppet/environments/KT_Default_Organization_Library_mycontentview_2/modules'''
but i see no errors in /var/log/messages during the publish, just:
Jan 27 13:07:03 localhost pulp: pulp.server.managers.repo.publish:INFO: publish failed for repo [Default_Organization-Library-mycontentview] with distributor ID [Default_Organization-Library-mycontentview]
+ This comment was cloned from Bugzilla #1186445 comment 4 +
Updated by bcourt over 8 years ago
https://github.com/pulp/pulp_puppet/pull/161
+ This comment was cloned from Bugzilla #1186445 comment 5 +
Updated by bcourt over 8 years ago
A second bug has been opened for the failure to mark the task as failed: https://bugzilla.redhat.com/show_bug.cgi?id=1186920
+ This comment was cloned from Bugzilla #1186445 comment 6 +
Updated by cduryee over 8 years ago
2.6.0-0.7.beta
+ This comment was cloned from Bugzilla #1186445 comment 7 +
Updated by pthomas@redhat.com over 8 years ago
[root@rhsm-jenkins ~]# rpm -qa pulp-server
pulp-server-2.6.0-0.7.beta.el6.noarch
[root@rhsm-jenkins ~]#
verified
pic.POST ('/v2/repositories/forge/distributors/', {'distributor_type_id':'puppet_install_distributor', 'distributor_id':'puppet_install_distributor', 'auto_publish': False, 'distributor_config': {'install_path':'/etc/puppet/modules/'}})
[root@rhsm-jenkins ~]# ls -l /etc/puppet/
total 12
-rwxrwxrwx. 1 root root 2569 Jan 19 08:32 auth.conf
drwxrwxrwx. 3 root root 4096 Feb 20 14:52 modules
-rwxrwxrwx. 1 root root 853 Jun 10 2014 puppet.conf
[root@rhsm-jenkins ~]# ls -l /etc/puppet/modules/
total 4
drwxr-xr-x. 7 apache apache 4096 Feb 10 14:09 mysql
[root@rhsm-jenkins ~]#
[root@rhsm-jenkins ~]# puppet module list
Warning: Missing dependency 'nanliu-staging':
'puppetlabs-mysql' (v3.2.0) requires 'nanliu-staging' (v1.x)
Warning: Missing dependency 'puppetlabs-stdlib':
'puppetlabs-mysql' (v3.2.0) requires 'puppetlabs-stdlib' (>= 3.2.0 < 5.0.0)
/etc/puppet/modules
└── puppetlabs-mysql (v3.2.0)
+ This comment was cloned from Bugzilla #1186445 comment 8 +
Updated by rbarlow about 8 years ago
- Status changed from 6 to CLOSED - CURRENTRELEASE