#   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
   $aodh_network                  = hiera('aodh_api_network', undef),
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $step                          = hiera('step'),
 ) {
 
   include ::tripleo::profile::base::aodh
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$aodh_network {
       fail('aodh_api_network is not set in the hieradata.')
     }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
   $bootstrap_node                = hiera('bootstrap_nodeid', undef),
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $step                          = hiera('step'),
   $oslomsg_rpc_proto             = hiera('messaging_rpc_service_name', 'rabbit'),
   $oslomsg_rpc_hosts             = any2array(hiera('rabbitmq_node_names', undef)),
   }
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$barbican_network {
       fail('barbican_api_network is not set in the hieradata.')
     }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
   $ceilometer_network            = hiera('ceilometer_api_network', undef),
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $step                          = hiera('step'),
 ) {
   include ::tripleo::profile::base::ceilometer
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$ceilometer_network {
       fail('ceilometer_api_network is not set in the hieradata.')
     }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $cinder_api_network            = hiera('cinder_api_network', undef),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $step                          = hiera('step'),
 ) {
   if $::hostname == downcase($bootstrap_node) {
   include ::tripleo::profile::base::cinder
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$cinder_api_network {
       fail('cinder_api_network is not set in the hieradata.')
     }
 
 #   limit for the mysql service.
 #   Defaults to false
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   MySQL. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*manage_resources*]
 #   (Optional) Whether or not manage root user, root my.cnf, and service.
 #   Defaults to true
   $certificate_specs             = {},
   $enable_internal_tls           = hiera('enable_internal_tls', false),
   $generate_dropin_file_limit    = false,
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $manage_resources              = true,
   $mysql_server_options          = {},
   $mysql_max_connections         = hiera('mysql_max_connections', undef),
   validate_hash($certificate_specs)
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resource('class', 'tripleo::certmonger::mysql', $certificate_specs)
-    }
     $tls_certfile = $certificate_specs['service_certificate']
     $tls_keyfile = $certificate_specs['service_key']
   } else {
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*glance_backend*]
 #   (Optional) Glance backend(s) to use.
 #   Defaults to downcase(hiera('glance_backend', 'swift'))
   $bootstrap_node                = hiera('bootstrap_nodeid', undef),
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $glance_backend                = downcase(hiera('glance_backend', 'swift')),
   $glance_network                = hiera('glance_api_network', undef),
   $glance_nfs_enabled            = false,
   $tls_proxy_fqdn                = undef,
   $tls_proxy_port                = 9292,
 ) {
-  if $enable_internal_tls and $generate_service_certificates {
-    ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-  }
-
   if $::hostname == downcase($bootstrap_node) {
     $sync_db = true
   } else {
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*gnocchi_backend*]
 #   (Optional) Gnocchi backend string file, swift or rbd
 #   Defaults to swift
   $bootstrap_node                = hiera('bootstrap_nodeid', undef),
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $gnocchi_backend               = downcase(hiera('gnocchi_backend', 'swift')),
   $gnocchi_network               = hiera('gnocchi_api_network', undef),
   $step                          = hiera('step'),
   include ::tripleo::profile::base::gnocchi
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$gnocchi_network {
       fail('gnocchi_api_network is not set in the hieradata.')
     }
 
 #   (Optional) Whether or not loadbalancer is enabled.
 #   Defaults to hiera('enable_load_balancer', true).
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 class tripleo::profile::base::haproxy (
   $certificates_specs            = {},
   $enable_load_balancer          = hiera('enable_load_balancer', true),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $step                          = hiera('step'),
 ) {
   if $step >= 1 {
     if $enable_load_balancer {
-      if str2bool($generate_service_certificates) {
-        ensure_resources('tripleo::certmonger::haproxy', $certificates_specs)
-        # The haproxy fronends (or listen resources) depend on the certificate
-        # existing and need to be refreshed if it changed.
-        Tripleo::Certmonger::Haproxy<||> ~> Haproxy::Listen<||>
-      }
-
       class {'::tripleo::haproxy':
         internal_certificates_specs => $certificates_specs,
       }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*heat_api_network*]
 #   (Optional) The network name where the heat API endpoint is listening on.
 #   This is set by t-h-t.
 class tripleo::profile::base::heat::api (
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $heat_api_network              = hiera('heat_api_network', undef),
   $step                          = hiera('step'),
 ) {
   include ::tripleo::profile::base::heat
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$heat_api_network {
       fail('heat_api_network is not set in the hieradata.')
     }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*heat_api_cfn_network*]
 #   (Optional) The network name where the heat cfn endpoint is listening on.
 #   This is set by t-h-t.
 class tripleo::profile::base::heat::api_cfn (
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $heat_api_cfn_network          = hiera('heat_api_cfn_network', undef),
   $step                          = hiera('step'),
 ) {
   include ::tripleo::profile::base::heat
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$heat_api_cfn_network {
       fail('heat_api_cfn_network is not set in the hieradata.')
     }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*heat_api_cloudwatch_network*]
 #   (Optional) The network name where the heat cloudwatch endpoint is listening
 #   on. This is set by t-h-t.
 class tripleo::profile::base::heat::api_cloudwatch (
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $heat_api_cloudwatch_network   = hiera('heat_api_cloudwatch_network', undef),
   $step                          = hiera('step'),
 ) {
   include ::tripleo::profile::base::heat
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$heat_api_cloudwatch_network {
       fail('heat_api_cloudwatch_network is not set in the hieradata.')
     }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*heat_admin_domain*]
 #   domain name for heat admin
 #   Defaults to undef
   $bootstrap_node                = hiera('bootstrap_nodeid', undef),
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $heat_admin_domain             = undef,
   $heat_admin_email              = undef,
   $heat_admin_password           = undef,
   }
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$public_endpoint_network {
       fail('keystone_public_api_network is not set in the hieradata.')
     }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*l3_ha_override*]
 #   (Optional) Override the calculated value for neutron::server::l3_ha
 #   by default this is calculated to enable when DVR is not enabled
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $dvr_enabled                   = hiera('neutron::server::router_distributed', false),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $l3_ha_override                = '',
   $l3_nodes                      = hiera('neutron_l3_short_node_names', []),
   $neutron_network               = hiera('neutron_api_network', undef),
   $tls_proxy_fqdn                = undef,
   $tls_proxy_port                = 9696,
 ) {
-  if $enable_internal_tls and $generate_service_certificates {
-    ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-  }
-
   if $::hostname == downcase($bootstrap_node) {
     $sync_db = true
   } else {
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*nova_api_network*]
 #   (Optional) The network name where the nova API endpoint is listening on.
 #   This is set by t-h-t.
   $bootstrap_node                = hiera('bootstrap_nodeid', undef),
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $nova_api_network              = hiera('nova_api_network', undef),
   $nova_api_wsgi_enabled         = hiera('nova_wsgi_enabled', false),
   $step                          = hiera('step'),
   # https://bugs.launchpad.net/nova/+bug/1661360
   if $nova_api_wsgi_enabled {
     if $enable_internal_tls {
-      if $generate_service_certificates {
-        ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-      }
-
       if !$nova_api_network {
         fail('nova_api_network is not set in the hieradata.')
       }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*nova_placement_network*]
 #   (Optional) The network name where the nova placement endpoint is listening on.
 #   This is set by t-h-t.
   $bootstrap_node                = hiera('bootstrap_nodeid', undef),
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $nova_placement_network        = hiera('nova_placement_network', undef),
   $step                          = hiera('step'),
 ) {
   include ::tripleo::profile::base::nova::authtoken
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$nova_placement_network {
       fail('nova_placement_network is not set in the hieradata.')
     }
 
 #   (Optional) Whether TLS in the internal network is enabled or not.
 #   Defaults to hiera('enable_internal_tls', false)
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   HAProxy. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Note that this doesn't configure the certificates in haproxy, it merely
-#   creates the certificates.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*panko_network*]
 #   (Optional) The network name where the panko endpoint is listening on.
 #   This is set by t-h-t.
   $bootstrap_node                = hiera('bootstrap_nodeid', undef),
   $certificates_specs            = hiera('apache_certificates_specs', {}),
   $enable_internal_tls           = hiera('enable_internal_tls', false),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $panko_network                 = hiera('panko_api_network', undef),
   $step                          = hiera('step'),
 ) {
   include ::tripleo::profile::base::panko
 
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resources('tripleo::certmonger::httpd', $certificates_specs)
-    }
-
     if !$panko_network {
       fail('panko_api_network is not set in the hieradata.')
     }
 
 #   (Optional) RabbitMQ environment.
 #   Defaults to hiera('rabbitmq_environment').
 #
-# [*generate_service_certificates*]
-#   (Optional) Whether or not certmonger will generate certificates for
-#   MySQL. This could be as many as specified by the $certificates_specs
-#   variable.
-#   Defaults to hiera('generate_service_certificate', false).
-#
 # [*inet_dist_interface*]
 #   (Optional) Address to bind the inter-cluster interface
 #   to. It is the inet_dist_use_interface option in the kernel variables
   $config_variables              = hiera('rabbitmq_config_variables'),
   $enable_internal_tls           = undef,  # TODO(jaosorior): pass this via t-h-t
   $environment                   = hiera('rabbitmq_environment'),
-  $generate_service_certificates = hiera('generate_service_certificates', false),
   $inet_dist_interface           = hiera('rabbitmq::interface', undef),
   $ipv6                          = str2bool(hiera('rabbit_ipv6', false)),
   $kernel_variables              = hiera('rabbitmq_kernel_variables'),
   $step                          = hiera('step'),
 ) {
   if $enable_internal_tls {
-    if $generate_service_certificates {
-      ensure_resource('class', 'tripleo::certmonger::rabbitmq', $certificate_specs)
-    }
     $tls_certfile = $certificate_specs['service_certificate']
     $tls_keyfile = $certificate_specs['service_key']
   } else {
 
       let(:params) { {
         :step                          => 1,
         :enable_internal_tls           => true,
-        :generate_service_certificates => true,
         :nova_placement_network        => 'bar',
         :certificates_specs            => {
             'httpd-bar' => {
       it {
         is_expected.to contain_class('tripleo::profile::base::nova::placement')
         is_expected.to contain_class('tripleo::profile::base::nova')
-        is_expected.to contain_tripleo__certmonger__httpd('httpd-bar')
         is_expected.to_not contain_class('nova::keystone::authtoken')
         is_expected.to_not contain_class('nova::wsgi::apache_placement')
       }
       let(:params) { {
         :step => 3,
         :enable_internal_tls           => true,
-        :generate_service_certificates => false,
         :nova_placement_network        => 'bar',
         :certificates_specs            => {
             'httpd-bar' => {
       it {
         is_expected.to contain_class('tripleo::profile::base::nova::placement')
         is_expected.to contain_class('tripleo::profile::base::nova')
-        is_expected.to_not contain_tripleo__certmonger__httpd('foo')
         is_expected.to contain_class('nova::keystone::authtoken')
         is_expected.to contain_class('nova::wsgi::apache_placement').with(
           :ssl_cert => '/foo.pem',