Compare commits

..

1 Commits

Author SHA1 Message Date
Jenkins Server
4206ef6c2c Remove Jenkinsfile for Gitea mirror 2026-04-16 16:10:11 +02:00
9 changed files with 40 additions and 336 deletions

View File

@@ -1,47 +1,22 @@
# Readme # Readme
[![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_jenkins&style=plastic)](https://jenkins.confdroid.com/job/confdroid_jenkins/) [![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_jenkins)](https://jenkins.confdroid.com/job/confdroid_jenkins/)|
[![Security Hotspots](https://sonarqube.confdroid.com/api/project_badges/measure?project=confdroid_jenkins&metric=security_hotspots&token=sqb_ab7299f9502c7e498c19b03bb06497fa15bdd70c)](https://sonarqube.confdroid.com/dashboard?id=confdroid_jenkins)
- [Readme](#readme) [[_TOC_]]
- [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 ## Synopsis
Jenkins is an open-source automation server written in Java that automates the software development process, including building, testing, and deploying code. Puppet 6 repo for managing Jenkins. Internal only due to access details for gitlab
`confdroid_jenkins` is a Puppet module for installing and managing Jenkins.
> This is a Work in Progress, currently features are added.
## WARNING ## 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 ## Features
### Core INSTALLATION
- 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 ## Repo Documentation
@@ -51,12 +26,11 @@ See the full Puppet documentation including parameters in `docs/index.html`
All dependencies must be included in the catalogue. All dependencies must be included in the catalogue.
- [confdroid_java](https://sourcecode.confdroid.com/confdroid/confdroid_java) to install java * [java_cd](https://gitlab.confdroid.com/puppet/java_cd) to install java
- puppetlabs-firewall via r10k
## Deployment ## Deployment
- native Puppet deployment * native Puppet deployment
via site.pp or nodes.pp via site.pp or nodes.pp
@@ -66,7 +40,7 @@ node 'example.example.net' {
} }
``` ```
- 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. In order to apply parameters through Foreman, the params.pp must be added to the host or host group in question.
@@ -80,22 +54,21 @@ All files and directories are configured with correct selinux context. If selinu
## Support ## Support
- OS: Rocky 9 (all RHEL-based OS should work but Rocky 9 is tested) * OS: Rocky 9
- Puppet 8 * Puppet 6-8
## Tests ## Tests
- Puppet Lint * Puppet Lint
- Puppet Parser * Puppet Parser
- ERB Template Parser * ERB Template Parser
- Sonar Quality Gate * Sonar Quality Gate
## Contact Us ## Contact Us
- [contact Us](https://confdroid.com/contact/) [contact Us](https://confdroid.com/contact/)
- [Feedback Portal](https://feedback.confdroid.com/)
## Disclaimer ## Disclaimer
ConfDroid as entity is entirely independent from Puppet. We provide custom configuration modules, written for specific purposes and specific environments. 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.

View File

@@ -60,70 +60,23 @@
<div id="content"><div id='filecontents'> <div id="content"><div id='filecontents'>
<h1 id="label-Readme">Readme</h1> <h1 id="label-Readme">Readme</h1>
<p><a href="https://jenkins.confdroid.com/job/confdroid_jenkins/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_jenkins&amp;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&amp;metric=security_hotspots&amp;token=sqb_ab7299f9502c7e498c19b03bb06497fa15bdd70c"></a></p> <p><a href="https://jenkins.confdroid.com/job/confdroid_jenkins/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_jenkins"></a>|</p>
<ul><li>
<p><a href="#readme">Readme</a></p> <p>[[<em>TOC</em>]]</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> <h2 id="label-Synopsis">Synopsis</h2>
<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>Puppet 6 repo for managing Jenkins. Internal only due to access details for gitlab</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> <h2 id="label-WARNING">WARNING</h2>
<blockquote> <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>
<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> <h2 id="label-Features">Features</h2>
<h3 id="label-Core">Core</h3> <p>INSTALLATION</p>
<ul><li> <ul><li>
<p>installs required binaries</p> <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> </li></ul>
<h2 id="label-Repo+Documentation">Repo Documentation</h2> <h2 id="label-Repo+Documentation">Repo Documentation</h2>
@@ -134,9 +87,7 @@
<p>All dependencies must be included in the catalogue.</p> <p>All dependencies must be included in the catalogue.</p>
<ul><li> <ul><li>
<p><a href="https://sourcecode.confdroid.com/confdroid/confdroid_java">confdroid_java</a> to install java</p> <p><a href="https://gitlab.confdroid.com/puppet/java_cd">java_cd</a> to install java</p>
</li><li>
<p>puppetlabs-firewall via r10k</p>
</li></ul> </li></ul>
<h2 id="label-Deployment">Deployment</h2> <h2 id="label-Deployment">Deployment</h2>
@@ -166,9 +117,9 @@
<h2 id="label-Support">Support</h2> <h2 id="label-Support">Support</h2>
<ul><li> <ul><li>
<p>OS: Rocky 9 (all RHEL-based OS should work but Rocky 9 is tested)</p> <p>OS: Rocky 9</p>
</li><li> </li><li>
<p>Puppet 8</p> <p>Puppet 6-8</p>
</li></ul> </li></ul>
<h2 id="label-Tests">Tests</h2> <h2 id="label-Tests">Tests</h2>
@@ -183,11 +134,8 @@
</li></ul> </li></ul>
<h2 id="label-Contact+Us">Contact Us</h2> <h2 id="label-Contact+Us">Contact Us</h2>
<ul><li>
<p><a href="https://confdroid.com/contact/">contact Us</a></p> <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> <h2 id="label-Disclaimer">Disclaimer</h2>

View File

@@ -60,70 +60,23 @@
<div id="content"><div id='filecontents'> <div id="content"><div id='filecontents'>
<h1 id="label-Readme">Readme</h1> <h1 id="label-Readme">Readme</h1>
<p><a href="https://jenkins.confdroid.com/job/confdroid_jenkins/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_jenkins&amp;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&amp;metric=security_hotspots&amp;token=sqb_ab7299f9502c7e498c19b03bb06497fa15bdd70c"></a></p> <p><a href="https://jenkins.confdroid.com/job/confdroid_jenkins/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_jenkins"></a>|</p>
<ul><li>
<p><a href="#readme">Readme</a></p> <p>[[<em>TOC</em>]]</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> <h2 id="label-Synopsis">Synopsis</h2>
<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>Puppet 6 repo for managing Jenkins. Internal only due to access details for gitlab</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> <h2 id="label-WARNING">WARNING</h2>
<blockquote> <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>
<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> <h2 id="label-Features">Features</h2>
<h3 id="label-Core">Core</h3> <p>INSTALLATION</p>
<ul><li> <ul><li>
<p>installs required binaries</p> <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> </li></ul>
<h2 id="label-Repo+Documentation">Repo Documentation</h2> <h2 id="label-Repo+Documentation">Repo Documentation</h2>
@@ -134,9 +87,7 @@
<p>All dependencies must be included in the catalogue.</p> <p>All dependencies must be included in the catalogue.</p>
<ul><li> <ul><li>
<p><a href="https://sourcecode.confdroid.com/confdroid/confdroid_java">confdroid_java</a> to install java</p> <p><a href="https://gitlab.confdroid.com/puppet/java_cd">java_cd</a> to install java</p>
</li><li>
<p>puppetlabs-firewall via r10k</p>
</li></ul> </li></ul>
<h2 id="label-Deployment">Deployment</h2> <h2 id="label-Deployment">Deployment</h2>
@@ -166,9 +117,9 @@
<h2 id="label-Support">Support</h2> <h2 id="label-Support">Support</h2>
<ul><li> <ul><li>
<p>OS: Rocky 9 (all RHEL-based OS should work but Rocky 9 is tested)</p> <p>OS: Rocky 9</p>
</li><li> </li><li>
<p>Puppet 8</p> <p>Puppet 6-8</p>
</li></ul> </li></ul>
<h2 id="label-Tests">Tests</h2> <h2 id="label-Tests">Tests</h2>
@@ -183,11 +134,8 @@
</li></ul> </li></ul>
<h2 id="label-Contact+Us">Contact Us</h2> <h2 id="label-Contact+Us">Contact Us</h2>
<ul><li>
<p><a href="https://confdroid.com/contact/">contact Us</a></p> <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> <h2 id="label-Disclaimer">Disclaimer</h2>

View File

@@ -107,55 +107,7 @@
9 9
10 10
11 11
12 12</pre>
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>
<td> <td>
<pre class="code"><span class="info file"># File 'manifests/main/dirs.pp', line 6</span> <pre class="code"><span class="info file"># File 'manifests/main/dirs.pp', line 6</span>
@@ -165,54 +117,6 @@ class confdroid_jenkins::main::dirs (
) inherits confdroid_jenkins::params { ) inherits confdroid_jenkins::params {
if $fqdn == $js_host_fqdn { if $fqdn == $js_host_fqdn {
require confdroid_jenkins::main::install require confdroid_jenkins::main::install
# jenkins home
file { $js_jenkins_home:
ensure =&gt; &#39;directory&#39;,
owner =&gt; &#39;jenkins&#39;,
group =&gt; &#39;jenkins&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; var_lib_t,
seluser =&gt; unconfined_u,
}
# jenkins logs
file { $js_jenkins_logs:
ensure =&gt; &#39;directory&#39;,
owner =&gt; &#39;jenkins&#39;,
group =&gt; &#39;jenkins&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; var_lib_t,
seluser =&gt; system_u,
}
# jenkins cache
file { $js_jenkins_cache:
ensure =&gt; &#39;directory&#39;,
owner =&gt; &#39;jenkins&#39;,
group =&gt; &#39;jenkins&#39;,
mode =&gt; &#39;0750&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; var_t,
seluser =&gt; unconfined_u,
}
# jenkins run
file { $js_jenkins_run:
ensure =&gt; &#39;directory&#39;,
owner =&gt; &#39;jenkins&#39;,
group =&gt; &#39;jenkins&#39;,
mode =&gt; &#39;0770&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; var_run_t,
seluser =&gt; system_u,
}
} }
}</pre> }</pre>
</td> </td>

View File

@@ -124,8 +124,7 @@
26 26
27 27
28 28
29 29</pre>
30</pre>
</td> </td>
<td> <td>
<pre class="code"><span class="info file"># File 'manifests/main/yumrepo.pp', line 6</span> <pre class="code"><span class="info file"># File 'manifests/main/yumrepo.pp', line 6</span>
@@ -138,7 +137,6 @@ class confdroid_jenkins::main::yumrepo (
descr =&gt; &#39;Jenkins-stable&#39;, descr =&gt; &#39;Jenkins-stable&#39;,
baseurl =&gt; $js_base_url, baseurl =&gt; $js_base_url,
gpgcheck =&gt; $js_gpg_check, gpgcheck =&gt; $js_gpg_check,
gpgkey =&gt; &quot;${js_base_url}/${js_key}&quot;,
repo_gpgcheck =&gt; $js_gpg_repo_check, repo_gpgcheck =&gt; $js_gpg_repo_check,
enabled =&gt; $js_repo_enabled, enabled =&gt; $js_repo_enabled,
} }

View File

@@ -411,13 +411,7 @@
55 55
56 56
57 57
58 58</pre>
59
60
61
62
63
64</pre>
</td> </td>
<td> <td>
<pre class="code"><span class="info file"># File 'manifests/params.pp', line 20</span> <pre class="code"><span class="info file"># File 'manifests/params.pp', line 20</span>
@@ -458,12 +452,6 @@ class confdroid_jenkins::params (
# Service # Service
$js_service = &#39;jenkins&#39; $js_service = &#39;jenkins&#39;
# directories
$js_jenkins_home = &#39;/var/lib/jenkins&#39;
$js_jenkins_logs = &quot;${js_jenkins_home}/logs&quot;
$js_jenkins_cache = &#39;/var/cache/jenkins&#39;
$js_jenkins_run = &#39;/run/jenkins&#39;
# includes must be last # includes must be last
include confdroid_jenkins::main::config include confdroid_jenkins::main::config
}</pre> }</pre>

View File

@@ -8,53 +8,5 @@ class confdroid_jenkins::main::dirs (
) inherits confdroid_jenkins::params { ) inherits confdroid_jenkins::params {
if $fqdn == $js_host_fqdn { if $fqdn == $js_host_fqdn {
require confdroid_jenkins::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,
}
} }
} }

View File

@@ -11,7 +11,6 @@ class confdroid_jenkins::main::yumrepo (
descr => 'Jenkins-stable', descr => 'Jenkins-stable',
baseurl => $js_base_url, baseurl => $js_base_url,
gpgcheck => $js_gpg_check, gpgcheck => $js_gpg_check,
gpgkey => "${js_base_url}/${js_key}",
repo_gpgcheck => $js_gpg_repo_check, repo_gpgcheck => $js_gpg_repo_check,
enabled => $js_repo_enabled, enabled => $js_repo_enabled,
} }

View File

@@ -53,12 +53,6 @@ class confdroid_jenkins::params (
# Service # Service
$js_service = 'jenkins' $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 # includes must be last
include confdroid_jenkins::main::config include confdroid_jenkins::main::config
} }