Giuseppe Lavagetto has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/394981 )
Change subject: [WiP] Puppet 4 compatibility
......................................................................
[WiP] Puppet 4 compatibility
Change-Id: I509e00f6363a7245f19c0717e35d0f2c9a48a00a
---
M puppet_compiler/differ.py
M puppet_compiler/puppet.py
2 files changed, 10 insertions(+), 4 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/software/puppet-compiler
refs/changes/81/394981/1
diff --git a/puppet_compiler/differ.py b/puppet_compiler/differ.py
index b9c9a71..212de38 100644
--- a/puppet_compiler/differ.py
+++ b/puppet_compiler/differ.py
@@ -95,11 +95,15 @@
self.resources = {}
with open(filename, 'r') as fh:
catalog = json.load(fh, 'latin_1')
- for resource in catalog['data']['resources']:
+ if 'data' in catalog:
+ base = catalog['data'] # Puppet 3
+ else:
+ base = catalog # Puppet 4 and above
+ for resource in base['resources']:
r = PuppetResource(resource, resource_filter)
self.resources[str(r)] = r
self.all_resources = set(self.resources.keys())
- self.name = catalog['data']['name']
+ self.name = base['name']
def diff_if_present(self, other):
diffs = []
diff --git a/puppet_compiler/puppet.py b/puppet_compiler/puppet.py
index 4b6261c..ba08eca 100644
--- a/puppet_compiler/puppet.py
+++ b/puppet_compiler/puppet.py
@@ -9,6 +9,7 @@
def compile_cmd_env(hostname, label, vardir, *extra_flags):
+ puppet_version = os.environ.get('PUPPET_VERSION', 4)
env = os.environ.copy()
if label == 'prod':
basedir = FHS.prod_dir
@@ -27,10 +28,11 @@
'--trusted_node_data',
'--compile=%s' % hostname,
'--color=false',
- '--parser=future',
'--manifest=$confdir/manifests',
- '--environment=future'
+ '--environmentpath=$confdir/environments'
]
+ if puppet_version < 4:
+ cmd.extend(['--trusted_node_data', '--parser=future',
'--environment=future' ])
cmd.extend(extra_flags)
return (cmd, env)
--
To view, visit https://gerrit.wikimedia.org/r/394981
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I509e00f6363a7245f19c0717e35d0f2c9a48a00a
Gerrit-PatchSet: 1
Gerrit-Project: operations/software/puppet-compiler
Gerrit-Branch: master
Gerrit-Owner: Giuseppe Lavagetto <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits