new_contents: #!/usr/bin/python
  
  import os
  import sys
  import yaml
  
  def mkdirp(path):
      try:
          os.makedirs(path)
      except OSError as e:
          if e.errno != 17:
              raise
  
  def makeboot_tree(distribution, profiledir):
      bootdir = os.path.join(profiledir, 'boot')
      efisrc = os.path.join(distribution, 'EFI')
      efidir = os.path.join(bootdir, 'efi/boot')
      mkdirp(efidir)
      initrfsdir = os.path.join(bootdir, 'initramfs')
      mkdirp(initrfsdir)
      for directory in os.walk(efisrc):
          for filename in directory[2]:
              if filename.lower() == 'bootx64.efi':
                  srcfile = os.path.join(directory[0], filename)
                  trgfile = os.path.join(efidir, 'bootx64.efi')
                  os.link(srcfile, trgfile)
              elif filename.lower() == 'grubx64.efi':
                  srcfile = os.path.join(directory[0], filename)
                  trgfile = os.path.join(efidir, 'grubx64.efi')
                  os.link(srcfile, trgfile)
      netbootdir = os.path.join(distribution, 'images/pxeboot')
      srckern = os.path.join(netbootdir, 'vmlinuz')
      srcinitramfs = os.path.join(netbootdir, 'initrd.img')
      trgkern = os.path.join(bootdir, 'kernel')
      trginitramfs = os.path.join(initrfsdir, 'initrd.img')
      os.link(srckern, trgkern)
      os.link(srcinitramfs, trginitramfs)
      trginitramfs = os.path.join(initrfsdir, 'site-initramfs.gz')
      os.link('/var/lib/confluent/public/site/site-initramfs.gz', trginitramfs)
      profileinfo = os.path.join(profiledir, 'profile.yaml')
      with open(profileinfo) as info:
          profile = yaml.load(info)
      cfgfile = os.path.join(efidir, 'grub.cfg')
      with open(cfgfile, 'w') as grubcfg:
          grubcfg.write('set timeout=5\n')
          grubcfg.write("menuentry '{0}' {{\n".format(
              profile.get('label', 'Unknown')))
          grubcfg.write('    linuxefi /kernel {0}\n'.format(profile.get(
                       'kernelargs', 'quiet')))
          initrds = ' '.join(
              ['/initramfs/{0}'.format(x) for x in os.listdir(initrfsdir)])
          grubcfg.write('    initrdefi {0}\n}}'.format(initrds))
      #TODO: create the netboot grub.cfg, is there a way to use grub http
      # without putting the server in the cfg?
      # If server is omitted, value of environment variable ‘net_default_server’
      # is used
  
  
  if __name__ == '__main__':
      makeboot_tree(sys.argv[1], sys.argv[2])
subject: Add a sample CentOS/RH handler snippet