Project

General

Profile

Actions

Feature #1552

closed

Puppet proxy should support $confdir in modulepath when looking for environments/classes

Added by Jason Antman over 12 years ago. Updated over 12 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
Puppet
Target version:
-
Difficulty:
Triaged:
Fixed in Releases:
Found in Releases:

Description

This is related to issue:1387. For those of use who followed the PuppetLabs blog (http://puppetlabs.com/blog/git-workflow-and-puppet-environments/) literally:

[main]
  server = puppet.example.com
  environment = production
  confdir = /etc/puppet
[master]
  environment = production
  manifest    = $confdir/environments/$environment/manifests/site.pp
  modulepath  = $confdir/environments/$environment/modules
[agent]
  report = true
  show_diff = true
  environment = production

The smart-proxy puppet component is returning an empty list of environments. As far as I can tell, the solution here can be as simple as looking at the modulepath value (in the dynamic environments block in lib/proxy/puppet/environment.rb) and, if that value contains "$confdir" and conf[:main][:confdir] is not nil, making the replacement.

I'm going to try and submit a patch for this later this week, but be warned, I'll be flipping through Learning Ruby as I do it.


Related issues 2 (0 open2 closed)

Related to Smart Proxy - Bug #1761: confdir appears to be broken again in 1.0rc3Closed07/17/2012Actions
Has duplicate Foreman - Feature #1106: puppet variable $confdir is not evaluatedDuplicate08/11/2011Actions
Actions #1

Updated by Jason Antman over 12 years ago

Not exactly tested, but I have code for this that works in my environment:
https://github.com/jantman/smart-proxy/commit/95314b5cee6e93380efb7d64fbe50511f194f031
and a pull request:
https://github.com/theforeman/smart-proxy/pull/14

Actions #2

Updated by Jason Antman over 12 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100
Actions

Also available in: Atom PDF