Add manifests to inject and trust CA certificates

Change-Id: I84273b4cd6576a63fa78dc93ad6b077dd2a780c7
This commit is contained in:
Juan Antonio Osorio Robles 2016-08-09 20:12:38 +03:00 committed by Jiri Stransky
parent a812fdbf05
commit 0d001f951d
2 changed files with 67 additions and 0 deletions

39
manifests/trusted_ca.pp Normal file
View File

@ -0,0 +1,39 @@
# Copyright 2016 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# == Class: tripleo::trusted_ca
#
# Does the necessary action to deploy and trust a CA certificate.
#
# === Parameters
#
# [*content*]
# The content of the CA certificate in PEM format.
#
define tripleo::trusted_ca(
$content,
) {
file { "/etc/pki/ca-trust/source/anchors/${name}.pem":
content => $content,
mode => '0644',
owner => 'root',
group => 'root',
}
exec { "trust-ca-${name}":
command => 'update-ca-trust extract',
path => '/usr/bin',
subscribe => File["/etc/pki/ca-trust/source/anchors/${name}.pem"],
refreshonly => true,
}
}

28
manifests/trusted_cas.pp Normal file
View File

@ -0,0 +1,28 @@
# Copyright 2016 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# == Class: tripleo::trusted_cas
#
# Does the necessary actions to deploy and trust a set of CA certificates.
#
# === Parameters
#
# [*ca_map*]
# The content of the CA certificate in PEM format.
#
class tripleo::trusted_cas(
$ca_map = {},
) {
create_resources('::tripleo::trusted_ca', $ca_map)
}