1
0
mirror of https://github.com/krislamo/puppet-acme_vault synced 2024-09-19 12:30:35 +00:00

Merge pull request #1 from krislamo/master

Implement script-based restart method
This commit is contained in:
rbelnap 2020-08-11 17:13:41 -04:00 committed by GitHub
commit 0e9e7262b4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 20 additions and 29 deletions

View File

@ -1,5 +1,5 @@
# Common configuration for acme_vault
#
#
class acme_vault::common (
$user = $::acme_vault::params::user,
@ -17,12 +17,13 @@ class acme_vault::common (
) inherits acme_vault::params {
$common_bashrc_template = @(END)
export PATH=$HOME:$PATH
export VAULT_BIN=<%= @vault_bin %>
export VAULT_TOKEN=<%= @vault_token %>
export VAULT_ADDR=<%= @vault_addr %>
export VAULT_PREFIX=<%= @vault_prefix %>
END
export PATH=$HOME:$PATH
export VAULT_BIN=<%= @vault_bin %>
export VAULT_TOKEN=<%= @vault_token %>
export VAULT_ADDR=<%= @vault_addr %>
export VAULT_PREFIX=<%= @vault_prefix %>
| END
# create acme_vault user
user { $user:
ensure => present,

View File

@ -8,8 +8,8 @@ class acme_vault::deploy(
$domains = $::acme_vault::common::domains,
$cert_destination_path = $::acme_vault::params::cert_destination_path,
$restart = $::acme_vault::params::restart,
$restart_command = $::acme_vault::params::restart_command,
$deploy_scripts = $::acme_vault::params::deploy_scripts,
$restart_method = $::acme_vault::params::restart_method,
) inherits acme_vault::params {
include acme_vault::common
@ -23,25 +23,18 @@ class acme_vault::deploy(
source => 'puppet:///modules/acme_vault/check_cert.sh',
}
# ensure destination path exists
file {$cert_destination_path:
# ensure destination paths exist
file {[$cert_destination_path, $deploy_scripts]:
ensure => directory,
owner => $user,
group => $group,
mode => '0750',
}
# cron job for deploy
if $restart {
$restart_suffix = "&& ${restart_command}"
} else {
$restart_suffix = ''
}
# go through each domain, setup cron, and ensure the destination dir exists
$domains.each |$domain, $d_list| {
cron { "${domain}_deploy":
command => ". \$HOME/.bashrc && ${home_dir}/check_cert.sh ${domain} ${cert_destination_path} ${restart_suffix}",
command => ". \$HOME/.bashrc && ${home_dir}/check_cert.sh ${domain} ${cert_destination_path} && ${restart_method}",
user => $user,
weekday => 2,
hour => 11,

View File

@ -26,16 +26,13 @@ class acme_vault::params {
$acme_repo_path = "${home_dir}/acme.sh"
$acme_script = "${acme_repo_path}/acme.sh"
# lexicon
$lexicon_provider = undef
$lexicon_username = undef
$lexicon_token = undef
# lexicon
$lexicon_provider = undef
$lexicon_username = undef
$lexicon_token = undef
# settings for deploy
$cert_destination_path = '/etc/acme/'
$restart = false
$restart_command = 'echo restart!'
$cert_destination_path = '/etc/acme'
$deploy_scripts = "${cert_destination_path}/deploy.d"
$restart_method = "for f in ${deploy_scripts}/*.sh; do \"\$f\"; done"
}