From d2db2750284dfeee15f375ce06bbcbc301738b84 Mon Sep 17 00:00:00 2001 From: Nick Walker Date: Mon, 21 Dec 2015 15:19:38 -0800 Subject: Create profile::git_webhook to abstract away the details Prior to this commit there were two possible webhooks - zack/r10k webhook - code manager I moved these two profiles under git_webhook and choose the correct one based on the version of PE being used. As a safety hatch, I provide the $force_zack_r10k_webhook param on profile::git_webhook in case someone needs to continue using it instead of code manager. --- site/profile/manifests/git_webhook.pp | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 site/profile/manifests/git_webhook.pp (limited to 'site/profile/manifests/git_webhook.pp') diff --git a/site/profile/manifests/git_webhook.pp b/site/profile/manifests/git_webhook.pp new file mode 100644 index 0000000..a46d4ea --- /dev/null +++ b/site/profile/manifests/git_webhook.pp @@ -0,0 +1,11 @@ +class profile::git_webhook ( + $force_zack_r10k_webhook = false +) { + + if versioncmp( $::pe_server_version, '2015.2.99' ) <= 0 or $force_zack_r10k_webhook { + include profile::git_webhook::zack_r10k_webhook + } else { + include profile::git_webhook::code_manager + } + +} -- cgit v1.2.3 From ec7a8d81a65051503e9f27e142f29b187327959b Mon Sep 17 00:00:00 2001 From: Nick Walker Date: Mon, 21 Dec 2015 15:52:15 -0800 Subject: Add functionality to disable the zack/r10k webhook Prior to this commit, if you upgraded from a previous version of the control-repo both code manager and zack/r10k webhook would be running and ready to receive data. This can present problems if the webhook isn't disbled in the git management system is sending data to both receivers. This commit adds rudimentary ability to break the zack/r10k webhook so it can't receive data. --- site/profile/manifests/git_webhook.pp | 1 + .../manifests/git_webhook/zack_r10k_webhook_disable.pp | 14 ++++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 site/profile/manifests/git_webhook/zack_r10k_webhook_disable.pp (limited to 'site/profile/manifests/git_webhook.pp') diff --git a/site/profile/manifests/git_webhook.pp b/site/profile/manifests/git_webhook.pp index a46d4ea..12ef786 100644 --- a/site/profile/manifests/git_webhook.pp +++ b/site/profile/manifests/git_webhook.pp @@ -6,6 +6,7 @@ class profile::git_webhook ( include profile::git_webhook::zack_r10k_webhook } else { include profile::git_webhook::code_manager + include profile::git_webhook::zack_r10k_webhook_disable } } diff --git a/site/profile/manifests/git_webhook/zack_r10k_webhook_disable.pp b/site/profile/manifests/git_webhook/zack_r10k_webhook_disable.pp new file mode 100644 index 0000000..ec54fc6 --- /dev/null +++ b/site/profile/manifests/git_webhook/zack_r10k_webhook_disable.pp @@ -0,0 +1,14 @@ +class profile::git_webhook::zack_r10k_webhook_disable { + + file { '/etc/webhook.yaml' : + ensure => absent, + notify => Exec['stop and disable webhook service'], + } + + exec { 'stop and disable webhook service' : + command => '/opt/puppetlabs/puppet/bin/puppet resource service webhook ensure=stopped enable=false', + logoutput => true, + refreshonly => true, + } + +} -- cgit v1.2.3