diff --git a/Jenkinsfile b/Jenkinsfile
deleted file mode 100644
index 4538b55..0000000
--- a/Jenkinsfile
+++ /dev/null
@@ -1,128 +0,0 @@
-pipeline {
- agent {
- label 'puppet'
- }
-
- post {
- always {
- deleteDir() /* clean up our workspace */
- }
- success {
- updateGitlabCommitStatus state: 'success'
- }
- failure {
- updateGitlabCommitStatus state: 'failed'
- step([$class: 'Mailer', notifyEveryUnstableBuild: true, recipients: 'support@confdroid.com', sendToIndividuals: true])
- }
- }
-
- options {
- gitLabConnection('gitlab.confdroid.com')
- }
-
- stages {
-
- stage('pull master') {
- steps {
- sshagent(['edd05eb6-26b5-4c7b-a5cc-ea2ab899f4fa']) {
- sh '''
- git config user.name "Jenkins Server"
- git config user.email jenkins@confdroid.com
- # Ensure we're on the development branch (triggered by push)
- git checkout development
- # Create jenkins branch from development
- git checkout -b jenkins-build-$BUILD_NUMBER
- # Optionally merge master into jenkins to ensure compatibility
- git merge origin/master --no-ff || { echo "Merge conflict detected"; exit 1; }
- '''
- }
- }
- }
-
- stage('puppet parser') {
- steps {
- sh '''for file in $(find . -iname \'*.pp\'); do
- /opt/puppetlabs/bin/puppet parser validate --color false --render-as s --modulepath=modules $file || exit 1;
- done;'''
- }
- }
-
- stage('check templates') {
- steps{
- sh '''for file in $(find . -iname \'*.erb\');
- do erb -P -x -T "-" $file | ruby -c || exit 1;
- done;'''
- }
- }
-
- stage('puppet-lint') {
- steps {
- sh '''/usr/local/bin/puppet-lint . \\
- --no-variable_scope-check \\
- || { echo "Puppet lint failed"; exit 1; }
- '''
- }
- }
-
- stage('SonarScan') {
- steps {
- withCredentials([string(credentialsId: 'sonar-token', variable: 'SONAR_TOKEN')]) {
- sh '''
- /opt/sonar-scanner/bin/sonar-scanner \
- -Dsonar.projectKey=confdroid_puppet \
- -Dsonar.sources=. \
- -Dsonar.host.url=https://sonarqube.confdroid.com \
- -Dsonar.token=$SONAR_TOKEN
- '''
- }
- }
- }
-
- stage('create Puppet documentation') {
- steps {
- sh '/opt/puppetlabs/bin/puppet strings'
- }
- }
-
- stage('update repo') {
- steps {
- sshagent(['edd05eb6-26b5-4c7b-a5cc-ea2ab899f4fa']) {
- sh '''
- git config user.name "Jenkins Server"
- git config user.email jenkins@confdroid.com
- git rm -r --cached .vscode || echo "No .vscode to remove from git"
- git add -A && git commit -am "Recommit for updates in build $BUILD_NUMBER" || echo "No changes to commit"
- git push origin HEAD:master
- '''
- }
- }
- }
-
- stage('Mirror to Gitea') {
- steps {
- sshagent(['edd05eb6-26b5-4c7b-a5cc-ea2ab899f4fa']) {
- withCredentials([usernamePassword(
- credentialsId: 'Jenkins-gitea',
- usernameVariable: 'GITEA_USER',
- passwordVariable: 'GITEA_TOKEN')]) {
- script {
- // Checkout from GitLab (already done implicitly)
- sh '''
- git checkout master
- git pull origin master
- git branch -D development
- git branch -D jenkins-build-$BUILD_NUMBER
- git rm -f Jenkinsfile
- git rm -r --cached .vscode || echo "No .vscode to remove from git"
- git commit --amend --no-edit --allow-empty
- git remote add master https://sourcecode.confdroid.com/confdroid/confdroid_puppet.git
- git -c credential.helper="!f() { echo username=${GITEA_USER}; echo password=${GITEA_TOKEN}; }; f" \
- push master --mirror
- '''
- }
- }
- }
- }
- }
- }
-}
diff --git a/doc/_index.html b/doc/_index.html
index 25153cd..4ac509b 100644
--- a/doc/_index.html
+++ b/doc/_index.html
@@ -98,6 +98,11 @@
+
+ confdroid_puppet::monitoring::target
+
+
+
confdroid_puppet::params
diff --git a/doc/file.README.html b/doc/file.README.html
index a758f53..959bfe6 100644
--- a/doc/file.README.html
+++ b/doc/file.README.html
@@ -142,7 +142,7 @@
Directories, Files and Services
-
-
manage directories and required files including permissions and selinux context (todo)
+manage directories and required files including permissions and selinux context
-
start services as required
diff --git a/doc/index.html b/doc/index.html
index bc7dfbf..d71ce2c 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -142,7 +142,7 @@
Directories, Files and Services
-
-
manage directories and required files including permissions and selinux context (todo)
+manage directories and required files including permissions and selinux context
-
start services as required
diff --git a/doc/puppet_class_list.html b/doc/puppet_class_list.html
index e01ed00..c9eccc0 100644
--- a/doc/puppet_class_list.html
+++ b/doc/puppet_class_list.html
@@ -78,35 +78,42 @@
-
+
+
+
+
+
+
-
+
-
+
-
+
-
+
diff --git a/doc/puppet_classes/confdroid_puppet_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/confdroid_puppet_3A_3Amain_3A_3Aconfig.html
index a87414d..3d6b92c 100644
--- a/doc/puppet_classes/confdroid_puppet_3A_3Amain_3A_3Aconfig.html
+++ b/doc/puppet_classes/confdroid_puppet_3A_3Amain_3A_3Aconfig.html
@@ -83,7 +83,7 @@
-
confdroid_puppet::main::config.pp Module name: confdroid_puppet Author: Arne Teuke (arne_teuke@confdroid)
+
confdroid_puppet::main::config.pp Module name: confdroid_puppet Author: 12ww1160 (12ww1160@confdroid.com)
@@ -109,7 +109,11 @@
11
12
13
-14
+14
+15
+16
+17
+18
# File 'manifests/main/config.pp', line 6
@@ -122,6 +126,10 @@ class confdroid_puppet::main::config (
if $pt_use_r10k == true {
include confdroid_puppet::r10k::install
}
+
+ if $pt_manage_nagios == true {
+ include confdroid_puppet::monitoring::target
+ }
}
|
diff --git a/doc/puppet_classes/confdroid_puppet_3A_3Amain_3A_3Adirs.html b/doc/puppet_classes/confdroid_puppet_3A_3Amain_3A_3Adirs.html
index 0148b07..42be5ef 100644
--- a/doc/puppet_classes/confdroid_puppet_3A_3Amain_3A_3Adirs.html
+++ b/doc/puppet_classes/confdroid_puppet_3A_3Amain_3A_3Adirs.html
@@ -83,7 +83,7 @@
-
confdroid_puppet::main::dirs.pp Module name: confdroid_puppet Author: Arne Teuke (arne_teuke@confdroid)
+
confdroid_puppet::main::dirs.pp Module name: confdroid_puppet Author: 12ww1160 (12ww1160@confdroid.com)
@@ -144,7 +144,20 @@
46
47
48
-49
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
# File 'manifests/main/dirs.pp', line 6
@@ -191,6 +204,19 @@ class confdroid_puppet::main::dirs (
seltype => puppet_etc_t,
seluser => system_u,
}
+
+ # code dir
+ file { $pt_code_dir:
+ ensure => directory,
+ path => $pt_code_dir,
+ owner => 'root',
+ group => 'root',
+ mode => '0755',
+ selrange => s0,
+ selrole => object_r,
+ seltype => puppet_etc_t,
+ seluser => system_u,
+ }
}
}
|
diff --git a/doc/puppet_classes/confdroid_puppet_3A_3Amonitoring_3A_3Atarget.html b/doc/puppet_classes/confdroid_puppet_3A_3Amonitoring_3A_3Atarget.html
new file mode 100644
index 0000000..59ba328
--- /dev/null
+++ b/doc/puppet_classes/confdroid_puppet_3A_3Amonitoring_3A_3Atarget.html
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+ Puppet Class: confdroid_puppet::monitoring::target
+
+ — Documentation by YARD 0.9.36
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Puppet Class: confdroid_puppet::monitoring::target
+
+
+
Summary
+ class manages exports for nagios monitoring
+
+
Overview
+
+
+
+
confdroid_puppet::monitoring::target.pp Module name: confdroid_puppet Author: 12ww1160 (12ww1160@puppetsoft.com)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+ |
+
+ # File 'manifests/monitoring/target.pp', line 6
+
+class confdroid_puppet::monitoring::target (
+
+) inherits confdroid_puppet::params {
+ if $pt_manage_nagios == true {
+ @@nagios_service { "check_puppet_${fqdn}":
+ check_command => "check_nrpe!check_puppet!${pt_procs_allowed}!puppet",
+ use => 'generic-service',
+ host_name => $fqdn,
+ notification_period => '24x7',
+ service_description => "${fqdn}_check_puppet",
+ target => $pt_target_service,
+ owner => 'nagios',
+ group => 'nagios',
+ mode => '0640',
+ contacts => $pt_target_contacts,
+ }
+ }
+}
+ |
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/doc/puppet_classes/confdroid_puppet_3A_3Aparams.html b/doc/puppet_classes/confdroid_puppet_3A_3Aparams.html
index e6e0d9a..5ce3245 100644
--- a/doc/puppet_classes/confdroid_puppet_3A_3Aparams.html
+++ b/doc/puppet_classes/confdroid_puppet_3A_3Aparams.html
@@ -85,6 +85,8 @@
confdroid_puppet::firewall::iptables
+ confdroid_puppet::monitoring::target
+
@@ -1194,6 +1196,73 @@
+
+
+ pt_manage_nagios
+
+
+ (Boolean)
+
+
+ (defaults to: false)
+
+
+ —
+
+
whether to manage nagios settings
+
+
+
+
+
+
+ pt_target_service
+
+
+ (String)
+
+
+ (defaults to: '/etc/nagios/conf.d/puppet_service.cfg')
+
+
+ —
+
+
the nagios service config file
+
+
+
+
+
+
+ pt_target_contacts
+
+
+ (Array)
+
+
+ (defaults to: ['nagiosadmin'])
+
+
+ —
+
+
the nagios contacts to notify
+
+
+
+
+
+
+ pt_procs_allowed
+
+
+ (String)
+
+
+ (defaults to: '1:')
+
+
+
+
@@ -1205,9 +1274,6 @@
-69
-70
-71
72
73
74
@@ -1359,10 +1425,19 @@
220
221
222
-223
+223
+224
+225
+226
+227
+228
+229
+230
+231
+232
- # File 'manifests/params.pp', line 69
+ # File 'manifests/params.pp', line 72
class confdroid_puppet::params (
@@ -1439,6 +1514,12 @@ class confdroid_puppet::params (
String $pt_r10k_basedir = '/etc/puppetlabs/code/environments',
String $pt_r10k_webhook_port = '8085',
+# nagios
+ Boolean $pt_manage_nagios = false,
+ String $pt_target_service = '/etc/nagios/conf.d/puppet_service.cfg',
+ Array $pt_target_contacts = ['nagiosadmin'],
+ String $pt_procs_allowed = '1:'
+
) {
# facts
$fqdn = $facts['networking']['fqdn']
|