Compare commits
64 Commits
339ea57e35
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b5c0b3672c | ||
|
|
07fa818fea | ||
|
|
0dd226590a | ||
|
|
b0ba8611cc | ||
| 713be3a9ef | |||
|
|
d9b2fb9ce4 | ||
|
|
29d1c32e8d | ||
|
|
7695df44d3 | ||
| 1e2da5edf4 | |||
|
|
08461d4f86 | ||
|
|
d7ed416df3 | ||
|
|
99aad766f9 | ||
| d13b8c6a54 | |||
|
|
786dacfaad | ||
|
|
447a52c03e | ||
|
|
256db2dfc4 | ||
| 2a9d490fcb | |||
|
|
fa4e3b625a | ||
|
|
226a67e37b | ||
| 01f02f1cbd | |||
| 190c397809 | |||
|
|
f860dfa44e | ||
|
|
15a64cccd5 | ||
|
|
66bc7c25c5 | ||
| 1707d16d5e | |||
|
|
5c6dfa2b5b | ||
|
|
831e66bd54 | ||
| f6b2a99afa | |||
|
|
41f52c7277 | ||
|
|
5a6eb3ae0e | ||
|
|
fc6128e6f3 | ||
| 39b79517b1 | |||
|
|
6107af263f | ||
|
|
0b6492808c | ||
| f4d99f7e90 | |||
|
|
51aeb2c28b | ||
|
|
8074aebbf7 | ||
|
|
2ee26ead57 | ||
| 96abe7bd38 | |||
| 002172003a | |||
| 6b79ed1b50 | |||
|
|
06f863f4f5 | ||
|
|
61bb18e13f | ||
|
|
3a95d3eb66 | ||
| b755593488 | |||
|
|
660eb13cb4 | ||
|
|
083dd38721 | ||
|
|
0211e0b23b | ||
| a11ba2289b | |||
|
|
16362ba2ae | ||
|
|
d48be49fc9 | ||
|
|
a00078ff6d | ||
| 07eb81d5e6 | |||
|
|
0f1be9eea8 | ||
|
|
fbfba28dd0 | ||
| db468b4bbd | |||
|
|
50e0301188 | ||
|
|
66a067cf3f | ||
|
|
5f13a79a12 | ||
|
|
a78f217902 | ||
|
|
7e35fcaa2b | ||
|
|
94b6c68d9c | ||
|
|
e8e4341735 | ||
|
|
52000465d5 |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -2,3 +2,5 @@
|
||||
Gemfile.lock
|
||||
FileList
|
||||
.scannerwork
|
||||
.vscode
|
||||
.puppet-lint.rc
|
||||
5
.vscode/settings.json
vendored
5
.vscode/settings.json
vendored
@@ -1,5 +0,0 @@
|
||||
{
|
||||
"cSpell.words": [
|
||||
"fontconfig"
|
||||
]
|
||||
}
|
||||
100
Jenkinsfile
vendored
100
Jenkinsfile
vendored
@@ -1,100 +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=jenkins_cd \
|
||||
-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 add -A && git commit -am "Recommit for updates in build $BUILD_NUMBER" || echo "No changes to commit"
|
||||
git push origin HEAD:master
|
||||
'''
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
63
README.md
63
README.md
@@ -1,22 +1,47 @@
|
||||
# Readme
|
||||
|
||||
[](https://jenkins.confdroid.com/job/jenkins_cd/)|
|
||||
[](https://jenkins.confdroid.com/job/confdroid_jenkins/)
|
||||
[](https://sonarqube.confdroid.com/dashboard?id=confdroid_jenkins)
|
||||
|
||||
[[_TOC_]]
|
||||
- [Readme](#readme)
|
||||
- [Synopsis](#synopsis)
|
||||
- [WARNING](#warning)
|
||||
- [Features](#features)
|
||||
- [Core](#core)
|
||||
- [Optional](#optional)
|
||||
- [Repo Documentation](#repo-documentation)
|
||||
- [Dependencies](#dependencies)
|
||||
- [Deployment](#deployment)
|
||||
- [SELINUX](#selinux)
|
||||
- [Known Problems](#known-problems)
|
||||
- [Support](#support)
|
||||
- [Tests](#tests)
|
||||
- [Contact Us](#contact-us)
|
||||
- [Disclaimer](#disclaimer)
|
||||
|
||||
## Synopsis
|
||||
|
||||
Puppet 6 repo for managing Jenkins. Internal only due to access details for gitlab
|
||||
Jenkins is an open-source automation server written in Java that automates the software development process, including building, testing, and deploying code.
|
||||
|
||||
`confdroid_jenkins` is a Puppet module for installing and managing Jenkins.
|
||||
|
||||
> This is a Work in Progress, currently features are added.
|
||||
|
||||
## WARNING
|
||||
|
||||
***Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production***
|
||||
> **Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production**
|
||||
|
||||
## Features
|
||||
|
||||
INSTALLATION
|
||||
### Core
|
||||
|
||||
* installs required binaries
|
||||
- installs required binaries
|
||||
- manage service
|
||||
|
||||
### Optional
|
||||
|
||||
- create a sudoers file for the Jenkins user to allow passwordless sudo, via `js_use_sudo`. Defaults to `false`
|
||||
- manage firewall ports via `js_enable_fw`. Defaults to `true`. requires `puppetlabs-firewall`.
|
||||
|
||||
## Repo Documentation
|
||||
|
||||
@@ -26,21 +51,22 @@ See the full Puppet documentation including parameters in `docs/index.html`
|
||||
|
||||
All dependencies must be included in the catalogue.
|
||||
|
||||
* [java_cd](https://gitlab.confdroid.com/puppet/java_cd) to install java
|
||||
- [confdroid_java](https://sourcecode.confdroid.com/confdroid/confdroid_java) to install java
|
||||
- puppetlabs-firewall via r10k
|
||||
|
||||
## Deployment
|
||||
|
||||
* native Puppet deployment
|
||||
- native Puppet deployment
|
||||
|
||||
via site.pp or nodes.pp
|
||||
|
||||
```bash
|
||||
node 'example.example.net' {
|
||||
include jenkins_cd
|
||||
include confdroid_jenkins
|
||||
}
|
||||
```
|
||||
|
||||
* through Foreman:
|
||||
- through Foreman:
|
||||
|
||||
In order to apply parameters through Foreman, the params.pp must be added to the host or host group in question.
|
||||
|
||||
@@ -54,21 +80,22 @@ All files and directories are configured with correct selinux context. If selinu
|
||||
|
||||
## Support
|
||||
|
||||
* OS: Rocky 9
|
||||
* Puppet 6-8
|
||||
- OS: Rocky 9 (all RHEL-based OS should work but Rocky 9 is tested)
|
||||
- Puppet 8
|
||||
|
||||
## Tests
|
||||
|
||||
* Puppet Lint
|
||||
* Puppet Parser
|
||||
* ERB Template Parser
|
||||
* Sonar Quality Gate
|
||||
- Puppet Lint
|
||||
- Puppet Parser
|
||||
- ERB Template Parser
|
||||
- Sonar Quality Gate
|
||||
|
||||
## Contact Us
|
||||
|
||||
[contact Us](https://confdroid.com/contact/)
|
||||
- [contact Us](https://confdroid.com/contact/)
|
||||
- [Feedback Portal](https://feedback.confdroid.com/)
|
||||
|
||||
## Disclaimer
|
||||
|
||||
ConfDroid as entity is entirely independent from Puppet. We provide custom configuration modules, written for specific purposes and specific environments.
|
||||
The modules are tested and supported only as documented, and require testing in designated environments (i.e. lab or development environments) for parameter tuning etc. before deploying into production environments.
|
||||
The modules are tested and supported only as documented, and require testing in designated environments (i.e. lab or development environments) for parameter tuning etc. before deploying into production environments.
|
||||
|
||||
@@ -64,52 +64,52 @@
|
||||
<td valign='top' width="33%">
|
||||
|
||||
|
||||
<ul id="alpha_J" class="alpha">
|
||||
<li class="letter">J</li>
|
||||
<ul id="alpha_C" class="alpha">
|
||||
<li class="letter">C</li>
|
||||
<ul>
|
||||
|
||||
<li>
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd.html" title="puppet_classes::jenkins_cd (puppet_class)">jenkins_cd</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins.html" title="puppet_classes::confdroid_jenkins (puppet_class)">confdroid_jenkins</a></span>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::jenkins_cd::firewall::iptables (puppet_class)">jenkins_cd::firewall::iptables</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::confdroid_jenkins::firewall::iptables (puppet_class)">confdroid_jenkins::firewall::iptables</a></span>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::jenkins_cd::main::config (puppet_class)">jenkins_cd::main::config</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::confdroid_jenkins::main::config (puppet_class)">confdroid_jenkins::main::config</a></span>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Adirs.html" title="puppet_classes::jenkins_cd::main::dirs (puppet_class)">jenkins_cd::main::dirs</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Adirs.html" title="puppet_classes::confdroid_jenkins::main::dirs (puppet_class)">confdroid_jenkins::main::dirs</a></span>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Afiles.html" title="puppet_classes::jenkins_cd::main::files (puppet_class)">jenkins_cd::main::files</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Afiles.html" title="puppet_classes::confdroid_jenkins::main::files (puppet_class)">confdroid_jenkins::main::files</a></span>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::jenkins_cd::main::install (puppet_class)">jenkins_cd::main::install</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::confdroid_jenkins::main::install (puppet_class)">confdroid_jenkins::main::install</a></span>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Aservice.html" title="puppet_classes::jenkins_cd::main::service (puppet_class)">jenkins_cd::main::service</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Aservice.html" title="puppet_classes::confdroid_jenkins::main::service (puppet_class)">confdroid_jenkins::main::service</a></span>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Ayumrepo.html" title="puppet_classes::jenkins_cd::main::yumrepo (puppet_class)">jenkins_cd::main::yumrepo</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Ayumrepo.html" title="puppet_classes::confdroid_jenkins::main::yumrepo (puppet_class)">confdroid_jenkins::main::yumrepo</a></span>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Aparams.html" title="puppet_classes::jenkins_cd::params (puppet_class)">jenkins_cd::params</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Aparams.html" title="puppet_classes::confdroid_jenkins::params (puppet_class)">confdroid_jenkins::params</a></span>
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
@@ -60,23 +60,70 @@
|
||||
<div id="content"><div id='filecontents'>
|
||||
<h1 id="label-Readme">Readme</h1>
|
||||
|
||||
<p><a href="https://pipelines.confdroid.com/job/jenkins_cd/"><img src="https://pipelines.confdroid.com/buildStatus/icon?job=jenkins_cd"></a>|</p>
|
||||
|
||||
<p>[[<em>TOC</em>]]</p>
|
||||
<p><a href="https://jenkins.confdroid.com/job/confdroid_jenkins/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_jenkins&style=plastic"></a> <a href="https://sonarqube.confdroid.com/dashboard?id=confdroid_jenkins"><img src="https://sonarqube.confdroid.com/api/project_badges/measure?project=confdroid_jenkins&metric=security_hotspots&token=sqb_ab7299f9502c7e498c19b03bb06497fa15bdd70c"></a></p>
|
||||
<ul><li>
|
||||
<p><a href="#readme">Readme</a></p>
|
||||
</li><li>
|
||||
<p><a href="#synopsis">Synopsis</a></p>
|
||||
</li><li>
|
||||
<p><a href="#warning">WARNING</a></p>
|
||||
</li><li>
|
||||
<p><a href="#features">Features</a></p>
|
||||
<ul><li>
|
||||
<p><a href="#core">Core</a></p>
|
||||
</li><li>
|
||||
<p><a href="#optional">Optional</a></p>
|
||||
</li></ul>
|
||||
</li><li>
|
||||
<p><a href="#repo-documentation">Repo Documentation</a></p>
|
||||
</li><li>
|
||||
<p><a href="#dependencies">Dependencies</a></p>
|
||||
</li><li>
|
||||
<p><a href="#deployment">Deployment</a></p>
|
||||
</li><li>
|
||||
<p><a href="#selinux">SELINUX</a></p>
|
||||
</li><li>
|
||||
<p><a href="#known-problems">Known Problems</a></p>
|
||||
</li><li>
|
||||
<p><a href="#support">Support</a></p>
|
||||
</li><li>
|
||||
<p><a href="#tests">Tests</a></p>
|
||||
</li><li>
|
||||
<p><a href="#contact-us">Contact Us</a></p>
|
||||
</li><li>
|
||||
<p><a href="#disclaimer">Disclaimer</a></p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Synopsis">Synopsis</h2>
|
||||
|
||||
<p>Puppet 6 repo for managing Jenkins. Internal only due to access details for gitlab</p>
|
||||
<p>Jenkins is an open-source automation server written in Java that automates the software development process, including building, testing, and deploying code.</p>
|
||||
|
||||
<p><code>confdroid_jenkins</code> is a Puppet module for installing and managing Jenkins.</p>
|
||||
|
||||
<blockquote>
|
||||
<p>This is a Work in Progress, currently features are added.</p>
|
||||
</blockquote>
|
||||
|
||||
<h2 id="label-WARNING">WARNING</h2>
|
||||
|
||||
<p><strong><em>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</em></strong></p>
|
||||
<blockquote>
|
||||
<p><strong>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</strong></p>
|
||||
</blockquote>
|
||||
|
||||
<h2 id="label-Features">Features</h2>
|
||||
|
||||
<p>INSTALLATION</p>
|
||||
<h3 id="label-Core">Core</h3>
|
||||
<ul><li>
|
||||
<p>installs required binaries</p>
|
||||
</li><li>
|
||||
<p>manage service</p>
|
||||
</li></ul>
|
||||
|
||||
<h3 id="label-Optional">Optional</h3>
|
||||
<ul><li>
|
||||
<p>create a sudoers file for the Jenkins user to allow passwordless sudo, via <code>js_use_sudo</code>. Defaults to <code>false</code></p>
|
||||
</li><li>
|
||||
<p>manage firewall ports via <code>js_enable_fw</code>. Defaults to <code>true</code>. requires <code>puppetlabs-firewall</code>.</p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Repo+Documentation">Repo Documentation</h2>
|
||||
@@ -87,7 +134,9 @@
|
||||
|
||||
<p>All dependencies must be included in the catalogue.</p>
|
||||
<ul><li>
|
||||
<p><a href="https://gitlab.confdroid.com/puppet/java_cd">java_cd</a> to install java</p>
|
||||
<p><a href="https://sourcecode.confdroid.com/confdroid/confdroid_java">confdroid_java</a> to install java</p>
|
||||
</li><li>
|
||||
<p>puppetlabs-firewall via r10k</p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Deployment">Deployment</h2>
|
||||
@@ -98,7 +147,7 @@
|
||||
<p>via site.pp or nodes.pp</p>
|
||||
|
||||
<pre class="code ruby"><code class="ruby">node 'example.example.net' {
|
||||
include jenkins_cd
|
||||
include confdroid_jenkins
|
||||
}
|
||||
</code></pre>
|
||||
<ul><li>
|
||||
@@ -117,26 +166,15 @@
|
||||
|
||||
<h2 id="label-Support">Support</h2>
|
||||
<ul><li>
|
||||
<p>OS: Rocky 9</p>
|
||||
<p>OS: Rocky 9 (all RHEL-based OS should work but Rocky 9 is tested)</p>
|
||||
</li><li>
|
||||
<p>Puppet 6-8</p>
|
||||
<p>Puppet 8</p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Tests">Tests</h2>
|
||||
<ul><li>
|
||||
<p>Puppet Lint</p>
|
||||
</li><li>
|
||||
<p>excluded tests:</p>
|
||||
<ul><li>
|
||||
<p><code>--no-class_inherits_from_params_class-check</code>:relevant only to non-supported outdated puppet versions</p>
|
||||
</li><li>
|
||||
<p><code>--no-variable_scope-check</code>: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters.</p>
|
||||
</li><li>
|
||||
<p><code>--no-80chars-check</code>: it is not always possible to stay within 80 characters, although typically only occurring on the parameter vault <code>params.pp</code>.</p>
|
||||
</li><li>
|
||||
<p><code>--no-arrow_alignment-check</code>: this check leads to actually not having am easily readable arrow alignment, as this checks <code>per block</code>, not per class.</p>
|
||||
</li></ul>
|
||||
</li><li>
|
||||
<p>Puppet Parser</p>
|
||||
</li><li>
|
||||
<p>ERB Template Parser</p>
|
||||
@@ -145,8 +183,11 @@
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Contact+Us">Contact Us</h2>
|
||||
|
||||
<ul><li>
|
||||
<p><a href="https://confdroid.com/contact/">contact Us</a></p>
|
||||
</li><li>
|
||||
<p><a href="https://feedback.confdroid.com/">Feedback Portal</a></p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Disclaimer">Disclaimer</h2>
|
||||
|
||||
|
||||
@@ -60,23 +60,70 @@
|
||||
<div id="content"><div id='filecontents'>
|
||||
<h1 id="label-Readme">Readme</h1>
|
||||
|
||||
<p><a href="https://pipelines.confdroid.com/job/jenkins_cd/"><img src="https://pipelines.confdroid.com/buildStatus/icon?job=jenkins_cd"></a>|</p>
|
||||
|
||||
<p>[[<em>TOC</em>]]</p>
|
||||
<p><a href="https://jenkins.confdroid.com/job/confdroid_jenkins/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_jenkins&style=plastic"></a> <a href="https://sonarqube.confdroid.com/dashboard?id=confdroid_jenkins"><img src="https://sonarqube.confdroid.com/api/project_badges/measure?project=confdroid_jenkins&metric=security_hotspots&token=sqb_ab7299f9502c7e498c19b03bb06497fa15bdd70c"></a></p>
|
||||
<ul><li>
|
||||
<p><a href="#readme">Readme</a></p>
|
||||
</li><li>
|
||||
<p><a href="#synopsis">Synopsis</a></p>
|
||||
</li><li>
|
||||
<p><a href="#warning">WARNING</a></p>
|
||||
</li><li>
|
||||
<p><a href="#features">Features</a></p>
|
||||
<ul><li>
|
||||
<p><a href="#core">Core</a></p>
|
||||
</li><li>
|
||||
<p><a href="#optional">Optional</a></p>
|
||||
</li></ul>
|
||||
</li><li>
|
||||
<p><a href="#repo-documentation">Repo Documentation</a></p>
|
||||
</li><li>
|
||||
<p><a href="#dependencies">Dependencies</a></p>
|
||||
</li><li>
|
||||
<p><a href="#deployment">Deployment</a></p>
|
||||
</li><li>
|
||||
<p><a href="#selinux">SELINUX</a></p>
|
||||
</li><li>
|
||||
<p><a href="#known-problems">Known Problems</a></p>
|
||||
</li><li>
|
||||
<p><a href="#support">Support</a></p>
|
||||
</li><li>
|
||||
<p><a href="#tests">Tests</a></p>
|
||||
</li><li>
|
||||
<p><a href="#contact-us">Contact Us</a></p>
|
||||
</li><li>
|
||||
<p><a href="#disclaimer">Disclaimer</a></p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Synopsis">Synopsis</h2>
|
||||
|
||||
<p>Puppet 6 repo for managing Jenkins. Internal only due to access details for gitlab</p>
|
||||
<p>Jenkins is an open-source automation server written in Java that automates the software development process, including building, testing, and deploying code.</p>
|
||||
|
||||
<p><code>confdroid_jenkins</code> is a Puppet module for installing and managing Jenkins.</p>
|
||||
|
||||
<blockquote>
|
||||
<p>This is a Work in Progress, currently features are added.</p>
|
||||
</blockquote>
|
||||
|
||||
<h2 id="label-WARNING">WARNING</h2>
|
||||
|
||||
<p><strong><em>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</em></strong></p>
|
||||
<blockquote>
|
||||
<p><strong>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</strong></p>
|
||||
</blockquote>
|
||||
|
||||
<h2 id="label-Features">Features</h2>
|
||||
|
||||
<p>INSTALLATION</p>
|
||||
<h3 id="label-Core">Core</h3>
|
||||
<ul><li>
|
||||
<p>installs required binaries</p>
|
||||
</li><li>
|
||||
<p>manage service</p>
|
||||
</li></ul>
|
||||
|
||||
<h3 id="label-Optional">Optional</h3>
|
||||
<ul><li>
|
||||
<p>create a sudoers file for the Jenkins user to allow passwordless sudo, via <code>js_use_sudo</code>. Defaults to <code>false</code></p>
|
||||
</li><li>
|
||||
<p>manage firewall ports via <code>js_enable_fw</code>. Defaults to <code>true</code>. requires <code>puppetlabs-firewall</code>.</p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Repo+Documentation">Repo Documentation</h2>
|
||||
@@ -87,7 +134,9 @@
|
||||
|
||||
<p>All dependencies must be included in the catalogue.</p>
|
||||
<ul><li>
|
||||
<p><a href="https://gitlab.confdroid.com/puppet/java_cd">java_cd</a> to install java</p>
|
||||
<p><a href="https://sourcecode.confdroid.com/confdroid/confdroid_java">confdroid_java</a> to install java</p>
|
||||
</li><li>
|
||||
<p>puppetlabs-firewall via r10k</p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Deployment">Deployment</h2>
|
||||
@@ -98,7 +147,7 @@
|
||||
<p>via site.pp or nodes.pp</p>
|
||||
|
||||
<pre class="code ruby"><code class="ruby">node 'example.example.net' {
|
||||
include jenkins_cd
|
||||
include confdroid_jenkins
|
||||
}
|
||||
</code></pre>
|
||||
<ul><li>
|
||||
@@ -117,26 +166,15 @@
|
||||
|
||||
<h2 id="label-Support">Support</h2>
|
||||
<ul><li>
|
||||
<p>OS: Rocky 9</p>
|
||||
<p>OS: Rocky 9 (all RHEL-based OS should work but Rocky 9 is tested)</p>
|
||||
</li><li>
|
||||
<p>Puppet 6-8</p>
|
||||
<p>Puppet 8</p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Tests">Tests</h2>
|
||||
<ul><li>
|
||||
<p>Puppet Lint</p>
|
||||
</li><li>
|
||||
<p>excluded tests:</p>
|
||||
<ul><li>
|
||||
<p><code>--no-class_inherits_from_params_class-check</code>:relevant only to non-supported outdated puppet versions</p>
|
||||
</li><li>
|
||||
<p><code>--no-variable_scope-check</code>: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters.</p>
|
||||
</li><li>
|
||||
<p><code>--no-80chars-check</code>: it is not always possible to stay within 80 characters, although typically only occurring on the parameter vault <code>params.pp</code>.</p>
|
||||
</li><li>
|
||||
<p><code>--no-arrow_alignment-check</code>: this check leads to actually not having am easily readable arrow alignment, as this checks <code>per block</code>, not per class.</p>
|
||||
</li></ul>
|
||||
</li><li>
|
||||
<p>Puppet Parser</p>
|
||||
</li><li>
|
||||
<p>ERB Template Parser</p>
|
||||
@@ -145,8 +183,11 @@
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Contact+Us">Contact Us</h2>
|
||||
|
||||
<ul><li>
|
||||
<p><a href="https://confdroid.com/contact/">contact Us</a></p>
|
||||
</li><li>
|
||||
<p><a href="https://feedback.confdroid.com/">Feedback Portal</a></p>
|
||||
</li></ul>
|
||||
|
||||
<h2 id="label-Disclaimer">Disclaimer</h2>
|
||||
|
||||
|
||||
@@ -36,65 +36,65 @@
|
||||
<ul id="full_list" class="puppet_class">
|
||||
|
||||
|
||||
<li id="object_puppet_classes::jenkins_cd" class="odd">
|
||||
<li id="object_puppet_classes::confdroid_jenkins" class="odd">
|
||||
<div class="item">
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd.html" title="puppet_classes::jenkins_cd (puppet_class)">jenkins_cd</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins.html" title="puppet_classes::confdroid_jenkins (puppet_class)">confdroid_jenkins</a></span>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<li id="object_puppet_classes::jenkins_cd::firewall::iptables" class="even">
|
||||
<li id="object_puppet_classes::confdroid_jenkins::firewall::iptables" class="even">
|
||||
<div class="item">
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::jenkins_cd::firewall::iptables (puppet_class)">jenkins_cd::firewall::iptables</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::confdroid_jenkins::firewall::iptables (puppet_class)">confdroid_jenkins::firewall::iptables</a></span>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<li id="object_puppet_classes::jenkins_cd::main::config" class="odd">
|
||||
<li id="object_puppet_classes::confdroid_jenkins::main::config" class="odd">
|
||||
<div class="item">
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::jenkins_cd::main::config (puppet_class)">jenkins_cd::main::config</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::confdroid_jenkins::main::config (puppet_class)">confdroid_jenkins::main::config</a></span>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<li id="object_puppet_classes::jenkins_cd::main::dirs" class="even">
|
||||
<li id="object_puppet_classes::confdroid_jenkins::main::dirs" class="even">
|
||||
<div class="item">
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Adirs.html" title="puppet_classes::jenkins_cd::main::dirs (puppet_class)">jenkins_cd::main::dirs</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Adirs.html" title="puppet_classes::confdroid_jenkins::main::dirs (puppet_class)">confdroid_jenkins::main::dirs</a></span>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<li id="object_puppet_classes::jenkins_cd::main::files" class="odd">
|
||||
<li id="object_puppet_classes::confdroid_jenkins::main::files" class="odd">
|
||||
<div class="item">
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Afiles.html" title="puppet_classes::jenkins_cd::main::files (puppet_class)">jenkins_cd::main::files</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Afiles.html" title="puppet_classes::confdroid_jenkins::main::files (puppet_class)">confdroid_jenkins::main::files</a></span>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<li id="object_puppet_classes::jenkins_cd::main::install" class="even">
|
||||
<li id="object_puppet_classes::confdroid_jenkins::main::install" class="even">
|
||||
<div class="item">
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::jenkins_cd::main::install (puppet_class)">jenkins_cd::main::install</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::confdroid_jenkins::main::install (puppet_class)">confdroid_jenkins::main::install</a></span>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<li id="object_puppet_classes::jenkins_cd::main::service" class="odd">
|
||||
<li id="object_puppet_classes::confdroid_jenkins::main::service" class="odd">
|
||||
<div class="item">
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Aservice.html" title="puppet_classes::jenkins_cd::main::service (puppet_class)">jenkins_cd::main::service</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Aservice.html" title="puppet_classes::confdroid_jenkins::main::service (puppet_class)">confdroid_jenkins::main::service</a></span>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<li id="object_puppet_classes::jenkins_cd::main::yumrepo" class="even">
|
||||
<li id="object_puppet_classes::confdroid_jenkins::main::yumrepo" class="even">
|
||||
<div class="item">
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Amain_3A_3Ayumrepo.html" title="puppet_classes::jenkins_cd::main::yumrepo (puppet_class)">jenkins_cd::main::yumrepo</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Amain_3A_3Ayumrepo.html" title="puppet_classes::confdroid_jenkins::main::yumrepo (puppet_class)">confdroid_jenkins::main::yumrepo</a></span>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<li id="object_puppet_classes::jenkins_cd::params" class="odd">
|
||||
<li id="object_puppet_classes::confdroid_jenkins::params" class="odd">
|
||||
<div class="item">
|
||||
<span class='object_link'><a href="puppet_classes/jenkins_cd_3A_3Aparams.html" title="puppet_classes::jenkins_cd::params (puppet_class)">jenkins_cd::params</a></span>
|
||||
<span class='object_link'><a href="puppet_classes/confdroid_jenkins_3A_3Aparams.html" title="puppet_classes::confdroid_jenkins::params (puppet_class)">confdroid_jenkins::params</a></span>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: jenkins_cd
|
||||
Puppet Class: confdroid_jenkins
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::jenkins_cd";
|
||||
pathId = "puppet_classes::confdroid_jenkins";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (j)</a> »
|
||||
<a href="../_index.html">Index (c)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">jenkins_cd</span>
|
||||
<span class="title">confdroid_jenkins</span>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -59,7 +59,7 @@
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: jenkins_cd</h1>
|
||||
<div id="content"><h1>Puppet Class: confdroid_jenkins</h1>
|
||||
<div class="box_info">
|
||||
|
||||
|
||||
@@ -72,13 +72,13 @@
|
||||
</div>
|
||||
|
||||
<h2>Summary</h2>
|
||||
Class initializes the jenkins_cd module.
|
||||
Class initializes the confdroid_jenkins module.
|
||||
|
||||
<h2>Overview</h2>
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>jenkins_cd::init.pp Module name: jenkins_cd Author: Arne Teuke (arne_teuke@confdroid.com)</p>
|
||||
<p>confdroid_jenkins::init.pp Module name: confdroid_jenkins Author: 12ww1160 (12ww1160@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -103,8 +103,8 @@
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/init.pp', line 6</span>
|
||||
|
||||
class jenkins_cd {
|
||||
include jenkins_cd::params
|
||||
class confdroid_jenkins {
|
||||
include confdroid_jenkins::params
|
||||
}</pre>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -4,7 +4,7 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: jenkins_cd::firewall::iptables
|
||||
Puppet Class: confdroid_jenkins::firewall::iptables
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::jenkins_cd::firewall::iptables";
|
||||
pathId = "puppet_classes::confdroid_jenkins::firewall::iptables";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (j)</a> »
|
||||
<a href="../_index.html">Index (c)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">jenkins_cd::firewall::iptables</span>
|
||||
<span class="title">confdroid_jenkins::firewall::iptables</span>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -59,12 +59,12 @@
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: jenkins_cd::firewall::iptables</h1>
|
||||
<div id="content"><h1>Puppet Class: confdroid_jenkins::firewall::iptables</h1>
|
||||
<div class="box_info">
|
||||
|
||||
<dl>
|
||||
<dt>Inherits:</dt>
|
||||
<dd><span class='object_link'><a href="jenkins_cd_3A_3Aparams.html" title="puppet_classes::jenkins_cd::params (puppet_class)">jenkins_cd::params</a></span></dd>
|
||||
<dd><span class='object_link'><a href="confdroid_jenkins_3A_3Aparams.html" title="puppet_classes::confdroid_jenkins::params (puppet_class)">confdroid_jenkins::params</a></span></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>jenkins_cd::firewall::iptables.pp Module name: jenkins_cd Author: Arne Teuke (arne_teuke@confdroid.com)</p>
|
||||
<p>confdroid_jenkins::firewall::iptables.pp Module name: confdroid_jenkins Author: 12ww1160 (12ww1160@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -117,9 +117,9 @@
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/firewall/iptables.pp', line 6</span>
|
||||
|
||||
class jenkins_cd::firewall::iptables (
|
||||
class confdroid_jenkins::firewall::iptables (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if ($fqdn == $js_host_fqdn) and ($js_enable_fw == true) {
|
||||
firewall { "${js_fw_rule}${js_jenkins_port} tcp port ${js_jenkins_port}":
|
||||
proto => 'tcp',
|
||||
@@ -4,7 +4,7 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: jenkins_cd::main::config
|
||||
Puppet Class: confdroid_jenkins::main::config
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::jenkins_cd::main::config";
|
||||
pathId = "puppet_classes::confdroid_jenkins::main::config";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (j)</a> »
|
||||
<a href="../_index.html">Index (c)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">jenkins_cd::main::config</span>
|
||||
<span class="title">confdroid_jenkins::main::config</span>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -59,12 +59,12 @@
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: jenkins_cd::main::config</h1>
|
||||
<div id="content"><h1>Puppet Class: confdroid_jenkins::main::config</h1>
|
||||
<div class="box_info">
|
||||
|
||||
<dl>
|
||||
<dt>Inherits:</dt>
|
||||
<dd><span class='object_link'><a href="jenkins_cd_3A_3Aparams.html" title="puppet_classes::jenkins_cd::params (puppet_class)">jenkins_cd::params</a></span></dd>
|
||||
<dd><span class='object_link'><a href="confdroid_jenkins_3A_3Aparams.html" title="puppet_classes::confdroid_jenkins::params (puppet_class)">confdroid_jenkins::params</a></span></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@@ -77,13 +77,13 @@
|
||||
</div>
|
||||
|
||||
<h2>Summary</h2>
|
||||
Class manages the logic for the jenkins_cd module.
|
||||
Class manages the logic for the confdroid_jenkins module.
|
||||
|
||||
<h2>Overview</h2>
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>jenkins_cd::main::config.pp Module name: jenkins_cd Author: Arne Teuke (arne_teuke@confdroid.com)</p>
|
||||
<p>confdroid_jenkins::main::config.pp Module name: confdroid_jenkins Author: 12ww1160 (12ww1160@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -112,11 +112,11 @@
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/main/config.pp', line 6</span>
|
||||
|
||||
class jenkins_cd::main::config (
|
||||
class confdroid_jenkins::main::config (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
include jenkins_cd::main::service
|
||||
include confdroid_jenkins::main::service
|
||||
}
|
||||
}</pre>
|
||||
</td>
|
||||
@@ -4,7 +4,7 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: jenkins_cd::main::dirs
|
||||
Puppet Class: confdroid_jenkins::main::dirs
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::jenkins_cd::main::dirs";
|
||||
pathId = "puppet_classes::confdroid_jenkins::main::dirs";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (j)</a> »
|
||||
<a href="../_index.html">Index (c)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">jenkins_cd::main::dirs</span>
|
||||
<span class="title">confdroid_jenkins::main::dirs</span>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -59,12 +59,12 @@
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: jenkins_cd::main::dirs</h1>
|
||||
<div id="content"><h1>Puppet Class: confdroid_jenkins::main::dirs</h1>
|
||||
<div class="box_info">
|
||||
|
||||
<dl>
|
||||
<dt>Inherits:</dt>
|
||||
<dd><span class='object_link'><a href="jenkins_cd_3A_3Aparams.html" title="puppet_classes::jenkins_cd::params (puppet_class)">jenkins_cd::params</a></span></dd>
|
||||
<dd><span class='object_link'><a href="confdroid_jenkins_3A_3Aparams.html" title="puppet_classes::confdroid_jenkins::params (puppet_class)">confdroid_jenkins::params</a></span></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>jenkins_cd::main::dirs.pp Module name: jenkins_cd Author: Arne Teuke (arne_teuke@confdroid.com)</p>
|
||||
<p>confdroid_jenkins::main::dirs.pp Module name: confdroid_jenkins Author: 12ww1160 (12ww1160@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -107,16 +107,112 @@
|
||||
9
|
||||
10
|
||||
11
|
||||
12</pre>
|
||||
12
|
||||
13
|
||||
14
|
||||
15
|
||||
16
|
||||
17
|
||||
18
|
||||
19
|
||||
20
|
||||
21
|
||||
22
|
||||
23
|
||||
24
|
||||
25
|
||||
26
|
||||
27
|
||||
28
|
||||
29
|
||||
30
|
||||
31
|
||||
32
|
||||
33
|
||||
34
|
||||
35
|
||||
36
|
||||
37
|
||||
38
|
||||
39
|
||||
40
|
||||
41
|
||||
42
|
||||
43
|
||||
44
|
||||
45
|
||||
46
|
||||
47
|
||||
48
|
||||
49
|
||||
50
|
||||
51
|
||||
52
|
||||
53
|
||||
54
|
||||
55
|
||||
56
|
||||
57
|
||||
58
|
||||
59
|
||||
60</pre>
|
||||
</td>
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/main/dirs.pp', line 6</span>
|
||||
|
||||
class jenkins_cd::main::dirs (
|
||||
class confdroid_jenkins::main::dirs (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
require jenkins_cd::main::install
|
||||
require confdroid_jenkins::main::install
|
||||
|
||||
# jenkins home
|
||||
file { $js_jenkins_home:
|
||||
ensure => 'directory',
|
||||
owner => 'jenkins',
|
||||
group => 'jenkins',
|
||||
mode => '0755',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => var_lib_t,
|
||||
seluser => unconfined_u,
|
||||
}
|
||||
|
||||
# jenkins logs
|
||||
file { $js_jenkins_logs:
|
||||
ensure => 'directory',
|
||||
owner => 'jenkins',
|
||||
group => 'jenkins',
|
||||
mode => '0755',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => var_lib_t,
|
||||
seluser => system_u,
|
||||
}
|
||||
|
||||
# jenkins cache
|
||||
file { $js_jenkins_cache:
|
||||
ensure => 'directory',
|
||||
owner => 'jenkins',
|
||||
group => 'jenkins',
|
||||
mode => '0750',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => var_t,
|
||||
seluser => unconfined_u,
|
||||
}
|
||||
|
||||
# jenkins run
|
||||
file { $js_jenkins_run:
|
||||
ensure => 'directory',
|
||||
owner => 'jenkins',
|
||||
group => 'jenkins',
|
||||
mode => '0770',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => var_run_t,
|
||||
seluser => system_u,
|
||||
}
|
||||
}
|
||||
}</pre>
|
||||
</td>
|
||||
@@ -4,7 +4,7 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: jenkins_cd::main::files
|
||||
Puppet Class: confdroid_jenkins::main::files
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::jenkins_cd::main::files";
|
||||
pathId = "puppet_classes::confdroid_jenkins::main::files";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (j)</a> »
|
||||
<a href="../_index.html">Index (c)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">jenkins_cd::main::files</span>
|
||||
<span class="title">confdroid_jenkins::main::files</span>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -59,12 +59,12 @@
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: jenkins_cd::main::files</h1>
|
||||
<div id="content"><h1>Puppet Class: confdroid_jenkins::main::files</h1>
|
||||
<div class="box_info">
|
||||
|
||||
<dl>
|
||||
<dt>Inherits:</dt>
|
||||
<dd><span class='object_link'><a href="jenkins_cd_3A_3Aparams.html" title="puppet_classes::jenkins_cd::params (puppet_class)">jenkins_cd::params</a></span></dd>
|
||||
<dd><span class='object_link'><a href="confdroid_jenkins_3A_3Aparams.html" title="puppet_classes::confdroid_jenkins::params (puppet_class)">confdroid_jenkins::params</a></span></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>jenkins_cd::main::files.pp Module name: jenkins_cd Author: Arne Teuke (arne_teuke@confdroid.com)</p>
|
||||
<p>confdroid_jenkins::main::files.pp Module name: confdroid_jenkins Author: 12ww1160 (12ww1160@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -107,16 +107,52 @@
|
||||
9
|
||||
10
|
||||
11
|
||||
12</pre>
|
||||
12
|
||||
13
|
||||
14
|
||||
15
|
||||
16
|
||||
17
|
||||
18
|
||||
19
|
||||
20
|
||||
21
|
||||
22
|
||||
23
|
||||
24
|
||||
25
|
||||
26
|
||||
27
|
||||
28
|
||||
29
|
||||
30</pre>
|
||||
</td>
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/main/files.pp', line 6</span>
|
||||
|
||||
class jenkins_cd::main::files (
|
||||
class confdroid_jenkins::main::files (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
require jenkins_cd::main::dirs
|
||||
require confdroid_jenkins::main::dirs
|
||||
if $js_use_sudo == true {
|
||||
file { $js_sudoers_file:
|
||||
ensure => file,
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
mode => '0440',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => etc_t,
|
||||
seluser => system_u,
|
||||
content => template($js_sudoers_erb),
|
||||
}
|
||||
}
|
||||
if $js_use_sudo != true {
|
||||
file { $js_sudoers_file:
|
||||
ensure => absent,
|
||||
}
|
||||
}
|
||||
}
|
||||
}</pre>
|
||||
</td>
|
||||
@@ -4,7 +4,7 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: jenkins_cd::main::install
|
||||
Puppet Class: confdroid_jenkins::main::install
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::jenkins_cd::main::install";
|
||||
pathId = "puppet_classes::confdroid_jenkins::main::install";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (j)</a> »
|
||||
<a href="../_index.html">Index (c)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">jenkins_cd::main::install</span>
|
||||
<span class="title">confdroid_jenkins::main::install</span>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -59,12 +59,12 @@
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: jenkins_cd::main::install</h1>
|
||||
<div id="content"><h1>Puppet Class: confdroid_jenkins::main::install</h1>
|
||||
<div class="box_info">
|
||||
|
||||
<dl>
|
||||
<dt>Inherits:</dt>
|
||||
<dd><span class='object_link'><a href="jenkins_cd_3A_3Aparams.html" title="puppet_classes::jenkins_cd::params (puppet_class)">jenkins_cd::params</a></span></dd>
|
||||
<dd><span class='object_link'><a href="confdroid_jenkins_3A_3Aparams.html" title="puppet_classes::confdroid_jenkins::params (puppet_class)">confdroid_jenkins::params</a></span></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>jenkins_cd::main::install.pp Module name: jenkins_cd Author: Arne Teuke (arne_teuke@confdroid.com)</p>
|
||||
<p>confdroid_jenkins::main::install.pp Module name: confdroid_jenkins Author: 12ww1160 (12ww1160@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -117,15 +117,15 @@
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/main/install.pp', line 6</span>
|
||||
|
||||
class jenkins_cd::main::install (
|
||||
class confdroid_jenkins::main::install (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
require java_cd
|
||||
require jenkins_cd::main::yumrepo
|
||||
require confdroid_java
|
||||
require confdroid_jenkins::main::yumrepo
|
||||
|
||||
package { $reqpackages:
|
||||
ensure => $pkg_ensure,
|
||||
package { $js_reqpackages:
|
||||
ensure => $js_pkg_ensure,
|
||||
}
|
||||
}
|
||||
}</pre>
|
||||
@@ -4,7 +4,7 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: jenkins_cd::main::service
|
||||
Puppet Class: confdroid_jenkins::main::service
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::jenkins_cd::main::service";
|
||||
pathId = "puppet_classes::confdroid_jenkins::main::service";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (j)</a> »
|
||||
<a href="../_index.html">Index (c)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">jenkins_cd::main::service</span>
|
||||
<span class="title">confdroid_jenkins::main::service</span>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -59,12 +59,12 @@
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: jenkins_cd::main::service</h1>
|
||||
<div id="content"><h1>Puppet Class: confdroid_jenkins::main::service</h1>
|
||||
<div class="box_info">
|
||||
|
||||
<dl>
|
||||
<dt>Inherits:</dt>
|
||||
<dd><span class='object_link'><a href="jenkins_cd_3A_3Aparams.html" title="puppet_classes::jenkins_cd::params (puppet_class)">jenkins_cd::params</a></span></dd>
|
||||
<dd><span class='object_link'><a href="confdroid_jenkins_3A_3Aparams.html" title="puppet_classes::confdroid_jenkins::params (puppet_class)">confdroid_jenkins::params</a></span></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>jenkins_cd::main::service.pp Module name: jenkins_cd Author: Arne Teuke (arne_teuke@confdroid.com)</p>
|
||||
<p>confdroid_jenkins::main::service.pp Module name: confdroid_jenkins Author: 12ww1160 (12ww1160@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -120,12 +120,12 @@
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/main/service.pp', line 6</span>
|
||||
|
||||
class jenkins_cd::main::service (
|
||||
class confdroid_jenkins::main::service (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
require jenkins_cd::main::files
|
||||
require jenkins_cd::firewall::iptables
|
||||
require confdroid_jenkins::main::files
|
||||
require confdroid_jenkins::firewall::iptables
|
||||
|
||||
service { $js_service:
|
||||
ensure => running,
|
||||
@@ -4,7 +4,7 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: jenkins_cd::main::yumrepo
|
||||
Puppet Class: confdroid_jenkins::main::yumrepo
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::jenkins_cd::main::yumrepo";
|
||||
pathId = "puppet_classes::confdroid_jenkins::main::yumrepo";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (j)</a> »
|
||||
<a href="../_index.html">Index (c)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">jenkins_cd::main::yumrepo</span>
|
||||
<span class="title">confdroid_jenkins::main::yumrepo</span>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -59,12 +59,12 @@
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: jenkins_cd::main::yumrepo</h1>
|
||||
<div id="content"><h1>Puppet Class: confdroid_jenkins::main::yumrepo</h1>
|
||||
<div class="box_info">
|
||||
|
||||
<dl>
|
||||
<dt>Inherits:</dt>
|
||||
<dd><span class='object_link'><a href="jenkins_cd_3A_3Aparams.html" title="puppet_classes::jenkins_cd::params (puppet_class)">jenkins_cd::params</a></span></dd>
|
||||
<dd><span class='object_link'><a href="confdroid_jenkins_3A_3Aparams.html" title="puppet_classes::confdroid_jenkins::params (puppet_class)">confdroid_jenkins::params</a></span></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>jenkins_cd::main::yumrepo.pp Module name: jenkins_cd Author: Arne Teuke (arne_teuke@confdroid.com)</p>
|
||||
<p>confdroid_jenkins::main::yumrepo.pp Module name: confdroid_jenkins Author: 12ww1160 (12ww1160@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -123,26 +123,30 @@
|
||||
25
|
||||
26
|
||||
27
|
||||
28</pre>
|
||||
28
|
||||
29
|
||||
30</pre>
|
||||
</td>
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/main/yumrepo.pp', line 6</span>
|
||||
|
||||
class jenkins_cd::main::yumrepo (
|
||||
class confdroid_jenkins::main::yumrepo (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
yumrepo { 'jenkins':
|
||||
descr => 'Jenkins-stable',
|
||||
baseurl => $js_base_url,
|
||||
gpgcheck => '1',
|
||||
enabled => '1';
|
||||
descr => 'Jenkins-stable',
|
||||
baseurl => $js_base_url,
|
||||
gpgcheck => $js_gpg_check,
|
||||
gpgkey => "${js_base_url}/${js_key}",
|
||||
repo_gpgcheck => $js_gpg_repo_check,
|
||||
enabled => $js_repo_enabled,
|
||||
}
|
||||
|
||||
# import rpm key
|
||||
|
||||
exec { $js_key_url:
|
||||
command => "rpm --import ${js_key_url}",
|
||||
exec { $js_key:
|
||||
command => "rpm --import ${js_base_url}/${js_key}",
|
||||
path => '/bin:/usr/bin:/sbin:/usr/sbin',
|
||||
cwd => '/tmp',
|
||||
user => 'root',
|
||||
482
doc/puppet_classes/confdroid_jenkins_3A_3Aparams.html
Normal file
482
doc/puppet_classes/confdroid_jenkins_3A_3Aparams.html
Normal file
@@ -0,0 +1,482 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: confdroid_jenkins::params
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
</title>
|
||||
|
||||
<link rel="stylesheet" href="../css/style.css" type="text/css" />
|
||||
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::confdroid_jenkins::params";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div class="nav_wrap">
|
||||
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
|
||||
<div id="resizer"></div>
|
||||
</div>
|
||||
|
||||
<div id="main" tabindex="-1">
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (c)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">confdroid_jenkins::params</span>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="search">
|
||||
|
||||
<a class="full_list_link" id="puppet_class_list_link"
|
||||
href="../puppet_class_list.html">
|
||||
|
||||
<svg width="24" height="24">
|
||||
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
||||
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
||||
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
||||
</svg>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: confdroid_jenkins::params</h1>
|
||||
<div class="box_info">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>Inherited by:</dt>
|
||||
<dd>
|
||||
|
||||
<span class='object_link'><a href="confdroid_jenkins_3A_3Amain_3A_3Adirs.html" title="puppet_classes::confdroid_jenkins::main::dirs (puppet_class)">confdroid_jenkins::main::dirs</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="confdroid_jenkins_3A_3Amain_3A_3Afiles.html" title="puppet_classes::confdroid_jenkins::main::files (puppet_class)">confdroid_jenkins::main::files</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="confdroid_jenkins_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::confdroid_jenkins::main::config (puppet_class)">confdroid_jenkins::main::config</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="confdroid_jenkins_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::confdroid_jenkins::main::install (puppet_class)">confdroid_jenkins::main::install</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="confdroid_jenkins_3A_3Amain_3A_3Aservice.html" title="puppet_classes::confdroid_jenkins::main::service (puppet_class)">confdroid_jenkins::main::service</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="confdroid_jenkins_3A_3Amain_3A_3Ayumrepo.html" title="puppet_classes::confdroid_jenkins::main::yumrepo (puppet_class)">confdroid_jenkins::main::yumrepo</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="confdroid_jenkins_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::confdroid_jenkins::firewall::iptables (puppet_class)">confdroid_jenkins::firewall::iptables</a></span><br/>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Defined in:</dt>
|
||||
<dd>
|
||||
manifests/params.pp
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<h2>Summary</h2>
|
||||
Class holds all parameters for the confdroid_jenkins module.
|
||||
|
||||
<h2>Overview</h2>
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>confdroid_jenkins::params.pp Module name: confdroid_jenkins Author: 12ww1160 (12ww1160@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="tags">
|
||||
<p class="tag_title">Parameters:</p>
|
||||
<ul class="param">
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_reqpackages</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>Array</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>['jenkins','fontconfig']</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>which packages to install</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_pkg_ensure</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'present'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>which packages to install</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_gpg_check</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'1'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>whether to enable GPG check for Jenkins packages</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_repo_enabled</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'1'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>whether to enable the Jenkins repository</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_host_fqdn</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'jenkins.example.net'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>fqdn of the host where Jenkins should run</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_base_url</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'https://pkg.jenkins.io/rpm-stable'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>the base URL for the Jenkins repository</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_key</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'repodata/repomd.xml.key'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>the filename of the Jenkins GPG key to import</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_key_code</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'gpg-pubkey-14abfc68-69494683'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>the code of the Jenkins GPG key to check</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_gpg_repo_check</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'1'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>whether to enable GPG check for the Jenkins repository</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_enable_fw</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>Boolean</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>true</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>whether to enable firewall control</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_fw_rule</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'50'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>the prefix for the firewall rule order</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_jenkins_port</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'8080'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>the port to open for Jenkins</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_source_net</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'0.0.0.0/0'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>the source range to open</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_use_sudo</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>Boolean</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>false</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>whether to add Jenkins to sudoers list</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
</div><div class="method_details_list">
|
||||
<table class="source_code">
|
||||
<tr>
|
||||
<td>
|
||||
<pre class="lines">
|
||||
|
||||
|
||||
20
|
||||
21
|
||||
22
|
||||
23
|
||||
24
|
||||
25
|
||||
26
|
||||
27
|
||||
28
|
||||
29
|
||||
30
|
||||
31
|
||||
32
|
||||
33
|
||||
34
|
||||
35
|
||||
36
|
||||
37
|
||||
38
|
||||
39
|
||||
40
|
||||
41
|
||||
42
|
||||
43
|
||||
44
|
||||
45
|
||||
46
|
||||
47
|
||||
48
|
||||
49
|
||||
50
|
||||
51
|
||||
52
|
||||
53
|
||||
54
|
||||
55
|
||||
56
|
||||
57
|
||||
58
|
||||
59
|
||||
60
|
||||
61
|
||||
62
|
||||
63
|
||||
64</pre>
|
||||
</td>
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/params.pp', line 20</span>
|
||||
|
||||
class confdroid_jenkins::params (
|
||||
|
||||
Array $js_reqpackages = ['jenkins','fontconfig'],
|
||||
String $js_pkg_ensure = 'present',
|
||||
String $js_gpg_check = '1',
|
||||
String $js_repo_enabled = '1',
|
||||
String $js_gpg_repo_check = '1',
|
||||
String $js_base_url = 'https://pkg.jenkins.io/rpm-stable',
|
||||
String $js_key = 'repodata/repomd.xml.key',
|
||||
String $js_key_code = 'gpg-pubkey-14abfc68-69494683',
|
||||
|
||||
# server fqdn
|
||||
String $js_host_fqdn = 'jenkins.example.net',
|
||||
|
||||
# firewall
|
||||
Boolean $js_enable_fw = true,
|
||||
String $js_fw_rule = '50',
|
||||
String $js_jenkins_port = '8080',
|
||||
String $js_source_net = '0.0.0.0/0',
|
||||
|
||||
# user
|
||||
Boolean $js_use_sudo = false,
|
||||
|
||||
) {
|
||||
# facts
|
||||
$fqdn = $facts['networking']['fqdn']
|
||||
$domain = $facts['networking']['domain']
|
||||
$os_name = $facts['os']['name']
|
||||
$os_release = $facts['os']['release']['major']
|
||||
|
||||
$js_sudoers_file = '/etc/sudoers.d/jenkins_sudo'
|
||||
$js_sudoers_erb = 'confdroid_jenkins/sudoers.erb'
|
||||
|
||||
# Service
|
||||
$js_service = 'jenkins'
|
||||
|
||||
# directories
|
||||
$js_jenkins_home = '/var/lib/jenkins'
|
||||
$js_jenkins_logs = "${js_jenkins_home}/logs"
|
||||
$js_jenkins_cache = '/var/cache/jenkins'
|
||||
$js_jenkins_run = '/run/jenkins'
|
||||
|
||||
# includes must be last
|
||||
include confdroid_jenkins::main::config
|
||||
}</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="footer">
|
||||
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,330 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Puppet Class: jenkins_cd::params
|
||||
|
||||
— Documentation by YARD 0.9.36
|
||||
|
||||
</title>
|
||||
|
||||
<link rel="stylesheet" href="../css/style.css" type="text/css" />
|
||||
|
||||
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript">
|
||||
pathId = "puppet_classes::jenkins_cd::params";
|
||||
relpath = '../';
|
||||
</script>
|
||||
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div class="nav_wrap">
|
||||
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
|
||||
<div id="resizer"></div>
|
||||
</div>
|
||||
|
||||
<div id="main" tabindex="-1">
|
||||
<div id="header">
|
||||
<div id="menu">
|
||||
|
||||
<a href="../_index.html">Index (j)</a> »
|
||||
<span class='title'><span class='object_link'>Puppet Classes</span></span>
|
||||
»
|
||||
<span class="title">jenkins_cd::params</span>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="search">
|
||||
|
||||
<a class="full_list_link" id="puppet_class_list_link"
|
||||
href="../puppet_class_list.html">
|
||||
|
||||
<svg width="24" height="24">
|
||||
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
||||
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
||||
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
||||
</svg>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
||||
<div id="content"><h1>Puppet Class: jenkins_cd::params</h1>
|
||||
<div class="box_info">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>Inherited by:</dt>
|
||||
<dd>
|
||||
|
||||
<span class='object_link'><a href="jenkins_cd_3A_3Amain_3A_3Adirs.html" title="puppet_classes::jenkins_cd::main::dirs (puppet_class)">jenkins_cd::main::dirs</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="jenkins_cd_3A_3Amain_3A_3Afiles.html" title="puppet_classes::jenkins_cd::main::files (puppet_class)">jenkins_cd::main::files</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="jenkins_cd_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::jenkins_cd::main::config (puppet_class)">jenkins_cd::main::config</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="jenkins_cd_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::jenkins_cd::main::install (puppet_class)">jenkins_cd::main::install</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="jenkins_cd_3A_3Amain_3A_3Aservice.html" title="puppet_classes::jenkins_cd::main::service (puppet_class)">jenkins_cd::main::service</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="jenkins_cd_3A_3Amain_3A_3Ayumrepo.html" title="puppet_classes::jenkins_cd::main::yumrepo (puppet_class)">jenkins_cd::main::yumrepo</a></span><br/>
|
||||
|
||||
<span class='object_link'><a href="jenkins_cd_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::jenkins_cd::firewall::iptables (puppet_class)">jenkins_cd::firewall::iptables</a></span><br/>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<dl>
|
||||
<dt>Defined in:</dt>
|
||||
<dd>
|
||||
manifests/params.pp
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<h2>Summary</h2>
|
||||
Class holds all parameters for the jenkins_cd module.
|
||||
|
||||
<h2>Overview</h2>
|
||||
<div class="docstring">
|
||||
<div class="discussion">
|
||||
|
||||
<p>jenkins_cd::params.pp Module name: jenkins_cd Author: Arne Teuke (arne_teuke@confdroid.com)</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="tags">
|
||||
<p class="tag_title">Parameters:</p>
|
||||
<ul class="param">
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>reqpackages</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>Array</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>['jenkins','fontconfig']</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>which packages to install</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>pkg_ensure</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'latest'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>which packages to install</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_host_fqdn</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'jenkins.example.net'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>fqdn of the host where Jenkins should run</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_enable_fw</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>Boolean</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>true</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>whether to enable firewall control</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_fw_rule</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'50'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>the prefix for the firewall rule order</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_jenkins_port</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'8080'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>the port to open for Jenkins</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
||||
<span class='name'>js_source_net</span>
|
||||
|
||||
|
||||
<span class='type'>(<tt>String</tt>)</span>
|
||||
|
||||
|
||||
<em class="default">(defaults to: <tt>'0.0.0.0/0'</tt>)</em>
|
||||
|
||||
|
||||
—
|
||||
<div class='inline'>
|
||||
<p>the source range to open</p>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
</div><div class="method_details_list">
|
||||
<table class="source_code">
|
||||
<tr>
|
||||
<td>
|
||||
<pre class="lines">
|
||||
|
||||
|
||||
13
|
||||
14
|
||||
15
|
||||
16
|
||||
17
|
||||
18
|
||||
19
|
||||
20
|
||||
21
|
||||
22
|
||||
23
|
||||
24
|
||||
25
|
||||
26
|
||||
27
|
||||
28
|
||||
29
|
||||
30
|
||||
31
|
||||
32
|
||||
33
|
||||
34
|
||||
35
|
||||
36
|
||||
37
|
||||
38
|
||||
39
|
||||
40
|
||||
41
|
||||
42
|
||||
43
|
||||
44</pre>
|
||||
</td>
|
||||
<td>
|
||||
<pre class="code"><span class="info file"># File 'manifests/params.pp', line 13</span>
|
||||
|
||||
class jenkins_cd::params (
|
||||
|
||||
Array $reqpackages = ['jenkins','fontconfig'],
|
||||
String $pkg_ensure = 'latest',
|
||||
|
||||
# server fqdn
|
||||
String $js_host_fqdn = 'jenkins.example.net',
|
||||
|
||||
# firewall
|
||||
Boolean $js_enable_fw = true,
|
||||
String $js_fw_rule = '50',
|
||||
String $js_jenkins_port = '8080',
|
||||
String $js_source_net = '0.0.0.0/0',
|
||||
|
||||
) {
|
||||
# facts
|
||||
$fqdn = $facts['networking']['fqdn']
|
||||
$domain = $facts['networking']['domain']
|
||||
$os_name = $facts['os']['name']
|
||||
$os_release = $facts['os']['release']['major']
|
||||
|
||||
# yum repo
|
||||
$js_base_url = 'https://pkg.jenkins.io/redhat-stable/'
|
||||
$js_key_url = "${js_base_url}/jenkins.io-2023.key"
|
||||
$js_key_code = 'gpg-pubkey-ef5975ca-6421ce2b'
|
||||
|
||||
# Service
|
||||
$js_service = 'jenkins'
|
||||
|
||||
# includes must be last
|
||||
include jenkins_cd::main::config
|
||||
}</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="footer">
|
||||
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,11 +1,11 @@
|
||||
## jenkins_cd::firewall::iptables.pp
|
||||
# Module name: jenkins_cd
|
||||
# Author: Arne Teuke (arne_teuke@confdroid.com)
|
||||
## confdroid_jenkins::firewall::iptables.pp
|
||||
# Module name: confdroid_jenkins
|
||||
# Author: 12ww1160 (12ww1160@confdroid.com)
|
||||
# @summary Class manages Jenkins iptables
|
||||
##############################################################################
|
||||
class jenkins_cd::firewall::iptables (
|
||||
class confdroid_jenkins::firewall::iptables (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if ($fqdn == $js_host_fqdn) and ($js_enable_fw == true) {
|
||||
firewall { "${js_fw_rule}${js_jenkins_port} tcp port ${js_jenkins_port}":
|
||||
proto => 'tcp',
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
## jenkins_cd::init.pp
|
||||
# Module name: jenkins_cd
|
||||
# Author: Arne Teuke (arne_teuke@confdroid.com)
|
||||
# @summary Class initializes the jenkins_cd module.
|
||||
## confdroid_jenkins::init.pp
|
||||
# Module name: confdroid_jenkins
|
||||
# Author: 12ww1160 (12ww1160@confdroid.com)
|
||||
# @summary Class initializes the confdroid_jenkins module.
|
||||
##############################################################################
|
||||
class jenkins_cd {
|
||||
include jenkins_cd::params
|
||||
class confdroid_jenkins {
|
||||
include confdroid_jenkins::params
|
||||
}
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
## jenkins_cd::main::config.pp
|
||||
# Module name: jenkins_cd
|
||||
# Author: Arne Teuke (arne_teuke@confdroid.com)
|
||||
# @summary Class manages the logic for the jenkins_cd module.
|
||||
## confdroid_jenkins::main::config.pp
|
||||
# Module name: confdroid_jenkins
|
||||
# Author: 12ww1160 (12ww1160@confdroid.com)
|
||||
# @summary Class manages the logic for the confdroid_jenkins module.
|
||||
##############################################################################
|
||||
class jenkins_cd::main::config (
|
||||
class confdroid_jenkins::main::config (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
include jenkins_cd::main::service
|
||||
include confdroid_jenkins::main::service
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,60 @@
|
||||
## jenkins_cd::main::dirs.pp
|
||||
# Module name: jenkins_cd
|
||||
# Author: Arne Teuke (arne_teuke@confdroid.com)
|
||||
## confdroid_jenkins::main::dirs.pp
|
||||
# Module name: confdroid_jenkins
|
||||
# Author: 12ww1160 (12ww1160@confdroid.com)
|
||||
# @summary Class manages Jenkins dirs
|
||||
##############################################################################
|
||||
class jenkins_cd::main::dirs (
|
||||
class confdroid_jenkins::main::dirs (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
require jenkins_cd::main::install
|
||||
require confdroid_jenkins::main::install
|
||||
|
||||
# jenkins home
|
||||
file { $js_jenkins_home:
|
||||
ensure => 'directory',
|
||||
owner => 'jenkins',
|
||||
group => 'jenkins',
|
||||
mode => '0755',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => var_lib_t,
|
||||
seluser => unconfined_u,
|
||||
}
|
||||
|
||||
# jenkins logs
|
||||
file { $js_jenkins_logs:
|
||||
ensure => 'directory',
|
||||
owner => 'jenkins',
|
||||
group => 'jenkins',
|
||||
mode => '0755',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => var_lib_t,
|
||||
seluser => system_u,
|
||||
}
|
||||
|
||||
# jenkins cache
|
||||
file { $js_jenkins_cache:
|
||||
ensure => 'directory',
|
||||
owner => 'jenkins',
|
||||
group => 'jenkins',
|
||||
mode => '0750',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => var_t,
|
||||
seluser => unconfined_u,
|
||||
}
|
||||
|
||||
# jenkins run
|
||||
file { $js_jenkins_run:
|
||||
ensure => 'directory',
|
||||
owner => 'jenkins',
|
||||
group => 'jenkins',
|
||||
mode => '0770',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => var_run_t,
|
||||
seluser => system_u,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,30 @@
|
||||
## jenkins_cd::main::files.pp
|
||||
# Module name: jenkins_cd
|
||||
# Author: Arne Teuke (arne_teuke@confdroid.com)
|
||||
## confdroid_jenkins::main::files.pp
|
||||
# Module name: confdroid_jenkins
|
||||
# Author: 12ww1160 (12ww1160@confdroid.com)
|
||||
# @summary Class manages Jenkins files
|
||||
##############################################################################
|
||||
class jenkins_cd::main::files (
|
||||
class confdroid_jenkins::main::files (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
require jenkins_cd::main::dirs
|
||||
require confdroid_jenkins::main::dirs
|
||||
if $js_use_sudo == true {
|
||||
file { $js_sudoers_file:
|
||||
ensure => file,
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
mode => '0440',
|
||||
selrange => s0,
|
||||
selrole => object_r,
|
||||
seltype => etc_t,
|
||||
seluser => system_u,
|
||||
content => template($js_sudoers_erb),
|
||||
}
|
||||
}
|
||||
if $js_use_sudo != true {
|
||||
file { $js_sudoers_file:
|
||||
ensure => absent,
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
## jenkins_cd::main::install.pp
|
||||
# Module name: jenkins_cd
|
||||
# Author: Arne Teuke (arne_teuke@confdroid.com)
|
||||
## confdroid_jenkins::main::install.pp
|
||||
# Module name: confdroid_jenkins
|
||||
# Author: 12ww1160 (12ww1160@confdroid.com)
|
||||
# @summary Class manages installation details
|
||||
##############################################################################
|
||||
class jenkins_cd::main::install (
|
||||
class confdroid_jenkins::main::install (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
require java_cd
|
||||
require jenkins_cd::main::yumrepo
|
||||
require confdroid_java
|
||||
require confdroid_jenkins::main::yumrepo
|
||||
|
||||
package { $reqpackages:
|
||||
ensure => $pkg_ensure,
|
||||
package { $js_reqpackages:
|
||||
ensure => $js_pkg_ensure,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
## jenkins_cd::main::service.pp
|
||||
# Module name: jenkins_cd
|
||||
# Author: Arne Teuke (arne_teuke@confdroid.com)
|
||||
## confdroid_jenkins::main::service.pp
|
||||
# Module name: confdroid_jenkins
|
||||
# Author: 12ww1160 (12ww1160@confdroid.com)
|
||||
# @summary Class manages Jenkins service
|
||||
##############################################################################
|
||||
class jenkins_cd::main::service (
|
||||
class confdroid_jenkins::main::service (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
require jenkins_cd::main::files
|
||||
require jenkins_cd::firewall::iptables
|
||||
require confdroid_jenkins::main::files
|
||||
require confdroid_jenkins::firewall::iptables
|
||||
|
||||
service { $js_service:
|
||||
ensure => running,
|
||||
|
||||
@@ -1,23 +1,25 @@
|
||||
## jenkins_cd::main::yumrepo.pp
|
||||
# Module name: jenkins_cd
|
||||
# Author: Arne Teuke (arne_teuke@confdroid.com)
|
||||
## confdroid_jenkins::main::yumrepo.pp
|
||||
# Module name: confdroid_jenkins
|
||||
# Author: 12ww1160 (12ww1160@confdroid.com)
|
||||
# @summary Class manages yum repos for the installation
|
||||
##############################################################################
|
||||
class jenkins_cd::main::yumrepo (
|
||||
class confdroid_jenkins::main::yumrepo (
|
||||
|
||||
) inherits jenkins_cd::params {
|
||||
) inherits confdroid_jenkins::params {
|
||||
if $fqdn == $js_host_fqdn {
|
||||
yumrepo { 'jenkins':
|
||||
descr => 'Jenkins-stable',
|
||||
baseurl => $js_base_url,
|
||||
gpgcheck => '1',
|
||||
enabled => '1';
|
||||
descr => 'Jenkins-stable',
|
||||
baseurl => $js_base_url,
|
||||
gpgcheck => $js_gpg_check,
|
||||
gpgkey => "${js_base_url}/${js_key}",
|
||||
repo_gpgcheck => $js_gpg_repo_check,
|
||||
enabled => $js_repo_enabled,
|
||||
}
|
||||
|
||||
# import rpm key
|
||||
|
||||
exec { $js_key_url:
|
||||
command => "rpm --import ${js_key_url}",
|
||||
exec { $js_key:
|
||||
command => "rpm --import ${js_base_url}/${js_key}",
|
||||
path => '/bin:/usr/bin:/sbin:/usr/sbin',
|
||||
cwd => '/tmp',
|
||||
user => 'root',
|
||||
|
||||
@@ -1,28 +1,44 @@
|
||||
## jenkins_cd::params.pp
|
||||
# Module name: jenkins_cd
|
||||
# Author: Arne Teuke (arne_teuke@confdroid.com)
|
||||
# @summary Class holds all parameters for the jenkins_cd module.
|
||||
# @param [array] reqpackages which packages to install
|
||||
# @param [string] pkg_ensure which packages to install
|
||||
# @param [string] js_host_fqdn fqdn of the host where Jenkins should run
|
||||
# @param [boolean] js_enable_fw whether to enable firewall control
|
||||
# @param [string] js_fw_rule the prefix for the firewall rule order
|
||||
# @param [string] js_jenkins_port the port to open for Jenkins
|
||||
# @param [string] js_source_net the source range to open
|
||||
## confdroid_jenkins::params.pp
|
||||
# Module name: confdroid_jenkins
|
||||
# Author: 12ww1160 (12ww1160@confdroid.com)
|
||||
# @summary Class holds all parameters for the confdroid_jenkins module.
|
||||
# @param [Array] js_reqpackages which packages to install
|
||||
# @param [String] js_pkg_ensure which packages to install
|
||||
# @param [String] js_gpg_check whether to enable GPG check for Jenkins packages
|
||||
# @param [String] js_repo_enabled whether to enable the Jenkins repository
|
||||
# @param [String] js_host_fqdn fqdn of the host where Jenkins should run
|
||||
# @param [String] js_base_url the base URL for the Jenkins repository
|
||||
# @param [String] js_key the filename of the Jenkins GPG key to import
|
||||
# @param [String] js_key_code the code of the Jenkins GPG key to check
|
||||
# @param [String] js_gpg_repo_check whether to enable GPG check for the Jenkins repository
|
||||
# @param [Boolean] js_enable_fw whether to enable firewall control
|
||||
# @param [String] js_fw_rule the prefix for the firewall rule order
|
||||
# @param [String] js_jenkins_port the port to open for Jenkins
|
||||
# @param [String] js_source_net the source range to open
|
||||
# @param [Boolean] js_use_sudo whether to add Jenkins to sudoers list
|
||||
##############################################################################
|
||||
class jenkins_cd::params (
|
||||
class confdroid_jenkins::params (
|
||||
|
||||
Array $reqpackages = ['jenkins','fontconfig'],
|
||||
String $pkg_ensure = 'latest',
|
||||
Array $js_reqpackages = ['jenkins','fontconfig'],
|
||||
String $js_pkg_ensure = 'present',
|
||||
String $js_gpg_check = '1',
|
||||
String $js_repo_enabled = '1',
|
||||
String $js_gpg_repo_check = '1',
|
||||
String $js_base_url = 'https://pkg.jenkins.io/rpm-stable',
|
||||
String $js_key = 'repodata/repomd.xml.key',
|
||||
String $js_key_code = 'gpg-pubkey-14abfc68-69494683',
|
||||
|
||||
# server fqdn
|
||||
String $js_host_fqdn = 'jenkins.example.net',
|
||||
String $js_host_fqdn = 'jenkins.example.net',
|
||||
|
||||
# firewall
|
||||
Boolean $js_enable_fw = true,
|
||||
String $js_fw_rule = '50',
|
||||
String $js_jenkins_port = '8080',
|
||||
String $js_source_net = '0.0.0.0/0',
|
||||
Boolean $js_enable_fw = true,
|
||||
String $js_fw_rule = '50',
|
||||
String $js_jenkins_port = '8080',
|
||||
String $js_source_net = '0.0.0.0/0',
|
||||
|
||||
# user
|
||||
Boolean $js_use_sudo = false,
|
||||
|
||||
) {
|
||||
# facts
|
||||
@@ -31,14 +47,18 @@ class jenkins_cd::params (
|
||||
$os_name = $facts['os']['name']
|
||||
$os_release = $facts['os']['release']['major']
|
||||
|
||||
# yum repo
|
||||
$js_base_url = 'https://pkg.jenkins.io/redhat-stable/'
|
||||
$js_key_url = "${js_base_url}/jenkins.io-2023.key"
|
||||
$js_key_code = 'gpg-pubkey-ef5975ca-6421ce2b'
|
||||
$js_sudoers_file = '/etc/sudoers.d/jenkins_sudo'
|
||||
$js_sudoers_erb = 'confdroid_jenkins/sudoers.erb'
|
||||
|
||||
# Service
|
||||
$js_service = 'jenkins'
|
||||
|
||||
# directories
|
||||
$js_jenkins_home = '/var/lib/jenkins'
|
||||
$js_jenkins_logs = "${js_jenkins_home}/logs"
|
||||
$js_jenkins_cache = '/var/cache/jenkins'
|
||||
$js_jenkins_run = '/run/jenkins'
|
||||
|
||||
# includes must be last
|
||||
include jenkins_cd::main::config
|
||||
include confdroid_jenkins::main::config
|
||||
}
|
||||
|
||||
7
templates/sudoers.erb
Normal file
7
templates/sudoers.erb
Normal file
@@ -0,0 +1,7 @@
|
||||
################################################################################
|
||||
##### sudo_rule managed by Puppet | manual changes will be overwritten #####
|
||||
################################################################################
|
||||
|
||||
Defaults:jenkins !requiretty
|
||||
|
||||
jenkins ALL=(root) NOPASSWD: ALL
|
||||
Reference in New Issue
Block a user