| OLD | NEW | 
| (Empty) |  | 
 |    1 #!/usr/bin/env python  | 
 |    2 import distutils.spawn | 
 |    3 import io | 
 |    4 import os | 
 |    5 import subprocess | 
 |    6 import sys | 
 |    7  | 
 |    8 if distutils.spawn.find_executable('puppet') \ | 
 |    9     and distutils.spawn.find_executable('hiera'): | 
 |   10   sys.exit(os.EX_OK) | 
 |   11  | 
 |   12 PUPPETLABS_SOURCES = ''' | 
 |   13 deb http://apt.puppetlabs.com precise main | 
 |   14 deb-src http://apt.puppetlabs.com precise main''' | 
 |   15  | 
 |   16 PUPPETLABS_PREFS = ''' | 
 |   17 # Puppetlabs packages (e.g. hiera) would attempt to install a puppet 3.x | 
 |   18 # or later release (which is not available in precise) if not pinned here | 
 |   19 Package: puppet puppet-common | 
 |   20 Pin: version 2.7.11-* | 
 |   21 Pin-Priority: 1000''' | 
 |   22  | 
 |   23 PUPPETLABS_GPG_KEY = ''' | 
 |   24 -----BEGIN PGP PUBLIC KEY BLOCK----- | 
 |   25 Version: GnuPG v1.4.12 (GNU/Linux) | 
 |   26 Comment: GPGTools - http://gpgtools.org | 
 |   27  | 
 |   28 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 | 
 |   82 =a34C | 
 |   83 -----END PGP PUBLIC KEY BLOCK----- | 
 |   84 ''' | 
 |   85  | 
 |   86 add_key_process = subprocess.Popen(['apt-key', 'add', '-'], stdin=subprocess.PIP
     E) | 
 |   87 add_key_process.communicate(PUPPETLABS_GPG_KEY) | 
 |   88  | 
 |   89 with io.open('/etc/apt/sources.list.d/puppetlabs.list', 'wb') as handle: | 
 |   90   handle.write(PUPPETLABS_SOURCES) | 
 |   91  | 
 |   92 with io.open('/etc/apt/preferences.d/puppetlabs', 'wb') as handle: | 
 |   93   handle.write(PUPPETLABS_PREFS) | 
 |   94  | 
 |   95 subprocess.check_call(['apt-get', '-y', 'update']) | 
 |   96 subprocess.check_call(['apt-get', '-y', 'install', 'puppet']) | 
 |   97 subprocess.check_call(['apt-get', '-y', 'install', 'hiera-puppet']) | 
 |   98  | 
 |   99 if not os.path.exists('/etc/puppet/hiera.yaml'): | 
 |  100   config = os.path.join(os.path.dirname(__file__), 'hiera.yaml') | 
 |  101   if os.path.exists(config): | 
 |  102     os.symlink(config, '/etc/puppet/hiera.yaml') | 
| OLD | NEW |