Puppet should report filesystem permission errors instead of class not found errors
|Affected Puppet version:||2.7.6||Branch:|
if puppet can not access a folder/subfolder in a module, i get the error
err: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find class yum::repos::oracle for test.example.org at /var/lib/puppet/environments/produktion/yum/manifests/init.pp:11 on node test.example.org
the structure is (removed the unneeded parts)
tree -p /var/lib/puppet/environments/produktion/yum/manifests /var/lib/puppet/environments/produktion/yum/manifests ├── [-rw-r--r--] init.pp ├── [drwxr--r-x] repos │ ├── [-rw-r--r--] epel.pp │ ├── [-rw-r--r--] oracle.pp
The folder repos is missing the x bit for other, so puppet can not change into ,and should report a Permission Denied error
If i import the classes from repos in the init.pp with import “repos/*” i get
err: Could not retrieve catalog from remote server: Error 400 on SERVER: Permission denied – /var/lib/puppet/environments/produktion/yum/manifests/repos/epel.pp at /var/lib/puppet/environments/produktion/yum/manifests/init.pp:3 on node test.example.org
#2 Updated by Daniel Pittman almost 2 years ago
- Status changed from Unreviewed to Accepted
- Priority changed from Normal to Low
Thanks for the report, Florian. I am sorry to took so long to get a first look – I agree that this is a good change, and we will slot it into the overall process.
While the error is kind of misleading, Ruby actually makes it harder to get useful information than we would like, and the overall priority of improving this is not that high. I can’t give any sort of commitment about when it will be fixed, but it absolutely is a problem and we will get to it.