docs: def gen_hyper_keys(minion_id,
                     country='US',
                     state='Utah',
                     locality='Salt Lake City',
                     organization='Salted',
                     expiration_days='365'):
      '''
      Generate the keys to be used by libvirt hypervisors, this routine gens
      the keys and applies them to the pillar for the hypervisor minions
      '''
      key_dir = os.path.join(
              __opts__['pki_dir'],
              'libvirt')
      if not os.path.isdir(key_dir):
          os.makedirs(key_dir)
      cakey = os.path.join(key_dir, 'cakey.pem')
      cacert = os.path.join(key_dir, 'cacert.pem')
      cainfo = os.path.join(key_dir, 'ca.info')
      if not os.path.isfile(cainfo):
          with salt.utils.files.fopen(cainfo, 'w+') as fp_:
              fp_.write('cn = salted\nca\ncert_signing_key')
      if not os.path.isfile(cakey):
          subprocess.call(
                  'certtool --generate-privkey > {0}'.format(cakey),
                  shell=True)
      if not os.path.isfile(cacert):
          cmd = ('certtool --generate-self-signed --load-privkey {0} '
                 '--template {1} --outfile {2}').format(cakey, cainfo, cacert)
          subprocess.call(cmd, shell=True)
      sub_dir = os.path.join(key_dir, minion_id)
      if not os.path.isdir(sub_dir):
          os.makedirs(sub_dir)
      priv = os.path.join(sub_dir, 'serverkey.pem')
      cert = os.path.join(sub_dir, 'servercert.pem')
      srvinfo = os.path.join(sub_dir, 'server.info')
      cpriv = os.path.join(sub_dir, 'clientkey.pem')
      ccert = os.path.join(sub_dir, 'clientcert.pem')
      clientinfo = os.path.join(sub_dir, 'client.info')
      if not os.path.isfile(srvinfo):
          with salt.utils.files.fopen(srvinfo, 'w+') as fp_:
              infodat = salt.utils.stringutils.to_str(
                  'organization = salted\ncn = {0}\ntls_www_server'
                  '\nencryption_key\nsigning_key'
                  '\ndigitalSignature\nexpiration_days = {1}'.format(
                     __grains__['fqdn'], expiration_days
                  )
              )
              fp_.write(infodat)
      if not os.path.isfile(priv):
          subprocess.call(
                  'certtool --generate-privkey > {0}'.format(priv),
                  shell=True)
      if not os.path.isfile(cert):
          cmd = ('certtool --generate-certificate --load-privkey {0} '
                 '--load-ca-certificate {1} --load-ca-privkey {2} '
                 '--template {3} --outfile {4}'
                 ).format(priv, cacert, cakey, srvinfo, cert)
          subprocess.call(cmd, shell=True)
      if not os.path.isfile(clientinfo):
          with salt.utils.files.fopen(clientinfo, 'w+') as fp_:
              infodat = salt.utils.stringutils.to_str(
                  'country = {0}\nstate = {1}\nlocality = {2}\n'
                  'organization = {3}\ncn = {4}\n'
                  'tls_www_client\nencryption_key\nsigning_key\n'
                  'digitalSignature'.format(
                      country,
                      state,
                      locality,
                      organization,
                      __grains__['fqdn']
                  )
              )
              fp_.write(infodat)
      if not os.path.isfile(cpriv):
          subprocess.call(
                  'certtool --generate-privkey > {0}'.format(cpriv),
                  shell=True)
      if not os.path.isfile(ccert):
          cmd = ('certtool --generate-certificate --load-privkey {0} '
                 '--load-ca-certificate {1} --load-ca-privkey {2} '
                 '--template {3} --outfile {4}'
                 ).format(cpriv, cacert, cakey, clientinfo, ccert)
          subprocess.call(cmd, shell=True)