Merge branch 'jenkins' into 'master'

Jenkins

See merge request !7
This commit is contained in:
12ww1160
2017-07-09 17:18:00 +02:00
17 changed files with 159 additions and 25 deletions

View File

@@ -8,6 +8,16 @@ Changelog of Git Changelog.
<h2> No issue </h2> <h2> No issue </h2>
<a href="https://gitlab.puppetsoft.com/12WW1160/git-changelog-lib/commit/36dc5918e52df38">36dc5918e52df38</a> Jenkins Server <i>2017-07-07 16:41:30</i>
<p>
<h3>recommit for updates in build 4</h3>
</p>
<a href="https://gitlab.puppetsoft.com/12WW1160/git-changelog-lib/commit/3715b3a582a1a5a">3715b3a582a1a5a</a> Arne Teuke <i>2017-07-07 16:40:31</i>
<p>
<h3>updated README</h3>
</p>
<a href="https://gitlab.puppetsoft.com/12WW1160/git-changelog-lib/commit/871d6e65baf4ec4">871d6e65baf4ec4</a> Jenkins Server <i>2017-07-07 16:38:35</i> <a href="https://gitlab.puppetsoft.com/12WW1160/git-changelog-lib/commit/871d6e65baf4ec4">871d6e65baf4ec4</a> Jenkins Server <i>2017-07-07 16:38:35</i>
<p> <p>
<h3>recommit for updates in build 3</h3> <h3>recommit for updates in build 3</h3>

View File

@@ -1,11 +1,11 @@
|Repo Name| version | Build Status| |Repo Name| version | Build Status|
|---|---|---|---| |---|---|---|---|
|`cd_apache`| 0.0.1.0 | [![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=cd_apache)](https://jenkins.confdroid.com/job/cd_apache/)| |`cd_apache`| 0.0.1.2 | [![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=cd_apache)](https://jenkins.confdroid.com/job/cd_apache/)|
### Synopsis ### Synopsis
`Apache httpd` is a very powerful and widely used web server. `Apache httpd` is a very powerful and widely used web server.
`cd_apache` automates the installation and configuration of httpd. This module is a base module providing the httpd service itself, meaning that it is designed to be used by other role- or profile modules, adding more detailed configurations specific to the particular use case, i.e. full content servers, front-end for application servers, proxies etc. `cd_apache` automates the installation and configuration of httpd. This module is a base module simply providing the httpd service itself to be used by other role- or profile modules, adding more detailed configurations specific to the particular use case.
### 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 previuos 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 previuos 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!!! __**`
@@ -44,6 +44,16 @@ Configuration
Maintenance Maintenance
* manage the service * manage the service
#### vHosts
As stated in the ynopsis, this module was written particularly for usage as base module. `Apache httpd` has a great number of usae cases where it actually is not used directly as full blown webser, but instead as 'sub-service'. Examples here would be
* frontend proxy for other applications to avoid having to put the port number into the URL
* applications like phpMyAdmin, phpPgAdmin
* WordPress
* Nagios etc.
With those use cases, you would provide the vHosts at the Puppet module for the application, not the base module. Also, if you plan to use this module to run a plain fully fledged web server, you would use a role- or profile class/module on top of `cd_apache` to set up your vHost exactly as needed. Examples for regular basic vHost configuration files are included in the examples directory as parameterized .erb files. You would create a define for vhosts, i.e. using the example parameters, and simply add `cd_apache` as requirement (i.e. require cd_apache) so it gets installed automatically.
### Repo Structure ### Repo Structure
Repostructure as been moved to REPOSTRUCTURE.md Repostructure as been moved to REPOSTRUCTURE.md

View File

@@ -23,6 +23,9 @@
| |-- index.html | |-- index.html
| |-- puppet_class_list.html | |-- puppet_class_list.html
| `-- top-level-namespace.html | `-- top-level-namespace.html
|-- examples
| |-- vhost.erb
| `-- vhost_ssl.erb
|-- manifests |-- manifests
| |-- main | |-- main
| | `-- config.pp | | `-- config.pp
@@ -47,4 +50,4 @@
|-- Jenkinsfile |-- Jenkinsfile
`-- README.md `-- README.md
8 directories, 39 files 9 directories, 41 files

View File

@@ -137,7 +137,7 @@
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:28 2017 by Generated on Sun Jul 9 17:24:05 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -61,7 +61,7 @@
<p>|Repo Name| version | Build <p>|Repo Name| version | Build
Status| Status|
|---|---|---|---| |---|---|---|---|
|<code>cd_apache</code>| 0.0.1.0 | <a |<code>cd_apache</code>| 0.0.1.2 | <a
href="https://jenkins.confdroid.com/buildStatus/icon?job=cd_apache">{Build href="https://jenkins.confdroid.com/buildStatus/icon?job=cd_apache">{Build
Status</a>/]|</p> Status</a>/]|</p>
@@ -70,10 +70,9 @@ Status</a>/]|</p>
<p><code>Apache httpd</code> is a very powerful and widely used web server.</p> <p><code>Apache httpd</code> is a very powerful and widely used web server.</p>
<p><code>cd_apache</code> automates the installation and configuration of <p><code>cd_apache</code> automates the installation and configuration of
httpd. This module is a base module providing the httpd service itself, httpd. This module is a base module simply providing the httpd service
meaning that it is designed to be used by other role- or profile modules, itself to be used by other role- or profile modules, adding more detailed
adding more detailed configurations specific to the particular use case, configurations specific to the particular use case.</p>
i.e. full content servers, front-end for application servers, proxies etc.</p>
<h3 id="label-WARNING">WARNING</h3> <h3 id="label-WARNING">WARNING</h3>
@@ -139,6 +138,33 @@ system permissions
<p>Maintenance <p>Maintenance
* manage the service</p> * manage the service</p>
<h4 id="label-vHosts">vHosts</h4>
<p>As stated in the ynopsis, this module was written particularly for usage as
base module. <code>Apache httpd</code> has a great number of usae cases
where it actually is not used directly as full blown webser, but instead as
&#39;sub-service&#39;. Examples here would be</p>
<ul><li>
<p>frontend proxy for other applications to avoid having to put the port
number into the URL</p>
</li><li>
<p>applications like phpMyAdmin, phpPgAdmin</p>
</li><li>
<p>WordPress</p>
</li><li>
<p>Nagios etc.</p>
</li></ul>
<p>With those use cases, you would provide the vHosts at the Puppet module for
the application, not the base module. Also, if you plan to use this module
to run a plain fully fledged web server, you would use a role- or profile
class/module on top of <code>cd_apache</code> to set up your vHost exactly
as needed. Examples for regular basic vHost configuration files are
included in the examples directory as parameterized .erb files. You would
create a define for vhosts, i.e. using the example parameters, and simply
add <code>cd_apache</code> as requirement (i.e. require cd_apache) so it
gets installed automatically.</p>
<h3 id="label-Repo+Structure">Repo Structure</h3> <h3 id="label-Repo+Structure">Repo Structure</h3>
<p>Repostructure as been moved to REPOSTRUCTURE.md</p> <p>Repostructure as been moved to REPOSTRUCTURE.md</p>
@@ -251,7 +277,7 @@ environments.</p>
</div></div> </div></div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:06 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -61,7 +61,7 @@
<p>|Repo Name| version | Build <p>|Repo Name| version | Build
Status| Status|
|---|---|---|---| |---|---|---|---|
|<code>cd_apache</code>| 0.0.1.0 | <a |<code>cd_apache</code>| 0.0.1.2 | <a
href="https://jenkins.confdroid.com/buildStatus/icon?job=cd_apache">{Build href="https://jenkins.confdroid.com/buildStatus/icon?job=cd_apache">{Build
Status</a>/]|</p> Status</a>/]|</p>
@@ -70,10 +70,9 @@ Status</a>/]|</p>
<p><code>Apache httpd</code> is a very powerful and widely used web server.</p> <p><code>Apache httpd</code> is a very powerful and widely used web server.</p>
<p><code>cd_apache</code> automates the installation and configuration of <p><code>cd_apache</code> automates the installation and configuration of
httpd. This module is a base module providing the httpd service itself, httpd. This module is a base module simply providing the httpd service
meaning that it is designed to be used by other role- or profile modules, itself to be used by other role- or profile modules, adding more detailed
adding more detailed configurations specific to the particular use case, configurations specific to the particular use case.</p>
i.e. full content servers, front-end for application servers, proxies etc.</p>
<h3 id="label-WARNING">WARNING</h3> <h3 id="label-WARNING">WARNING</h3>
@@ -139,6 +138,33 @@ system permissions
<p>Maintenance <p>Maintenance
* manage the service</p> * manage the service</p>
<h4 id="label-vHosts">vHosts</h4>
<p>As stated in the ynopsis, this module was written particularly for usage as
base module. <code>Apache httpd</code> has a great number of usae cases
where it actually is not used directly as full blown webser, but instead as
&#39;sub-service&#39;. Examples here would be</p>
<ul><li>
<p>frontend proxy for other applications to avoid having to put the port
number into the URL</p>
</li><li>
<p>applications like phpMyAdmin, phpPgAdmin</p>
</li><li>
<p>WordPress</p>
</li><li>
<p>Nagios etc.</p>
</li></ul>
<p>With those use cases, you would provide the vHosts at the Puppet module for
the application, not the base module. Also, if you plan to use this module
to run a plain fully fledged web server, you would use a role- or profile
class/module on top of <code>cd_apache</code> to set up your vHost exactly
as needed. Examples for regular basic vHost configuration files are
included in the examples directory as parameterized .erb files. You would
create a define for vhosts, i.e. using the example parameters, and simply
add <code>cd_apache</code> as requirement (i.e. require cd_apache) so it
gets installed automatically.</p>
<h3 id="label-Repo+Structure">Repo Structure</h3> <h3 id="label-Repo+Structure">Repo Structure</h3>
<p>Repostructure as been moved to REPOSTRUCTURE.md</p> <p>Repostructure as been moved to REPOSTRUCTURE.md</p>
@@ -251,7 +277,7 @@ environments.</p>
</div></div> </div></div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:28 2017 by Generated on Sun Jul 9 17:24:06 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -140,7 +140,7 @@ class cd_apache {
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:06 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -153,7 +153,7 @@ class cd_apache::main::config (
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:07 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -525,7 +525,7 @@ $ae_userdir_erb = &#39;cd_apache/userdir_conf.erb&#39;
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:07 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -528,7 +528,7 @@ class cd_apache::server::dirs (
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:07 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -323,7 +323,7 @@ class cd_apache::server::files (
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:07 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -159,7 +159,7 @@ class cd_apache::server::install (
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:07 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -165,7 +165,7 @@ class cd_apache::server::service (
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:07 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -209,7 +209,7 @@ class cd_apache::server::user (
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:07 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

View File

@@ -90,7 +90,7 @@
</div> </div>
<div id="footer"> <div id="footer">
Generated on Fri Jul 7 18:41:29 2017 by Generated on Sun Jul 9 17:24:06 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0). 0.9.9 (ruby-2.0.0).
</div> </div>

22
examples/vhost.erb Normal file
View File

@@ -0,0 +1,22 @@
<VirtualHost *:<%= @ae_vhost_port %> >
ServerAdmin <%= @ae_server_admin%>
ServerName www.<%= @ae_server_name %>
ServerAlias <%= @ae_server_name %>
DocumentRoot <%= @ae_doc_root %>
<% if @ae_use_https == true and @ae_http_https_fw == true -%>
Redirect permanent / https://<%= @ae_server_name %>/
<% else -%>
DirectoryIndex <%= @ae_dir_index %>
<Directory <%= @ae_doc_root -%>
AllowOverride none
Order Allow,Deny
Allow from <%= @ae_allow_from %>
</Directory>
<% end %>
ErrorLog /var/log/httpd/<%= @ae_server_name%>_error_log
<% if @ae_use_access_log == true %>
CustomLog /var/log/httpd/<%= @ae_server_name%>_access_log common
<% end %>
LogLevel <%= @ae_vhost_loglevel %>
</VirtualHost>

37
examples/vhost_ssl.erb Normal file
View File

@@ -0,0 +1,37 @@
<VirtualHost *:<%= @ae_ssl_vhost_port %> >
ServerAdmin <%= @ae_server_admin %>
DocumentRoot <%= @ae_doc_root %>
ServerName www.<%= @ae_server_name %>
ServerAlias <%= @ae_server_name %>
DirectoryIndex <%= @ae_dir_index %>
ErrorLog /var/log/httpd/<%= @ae_server_name %>_ssl_error_log
TransferLog /var/log/httpd/<%= @ae_server_name%>_ssl_transfer_log
CustomLog /var/log/httpd/<%= @ae_server_name%>_ssl_access_log common
LogLevel <%= @ae_vhost_loglevel %>
SSLEngine on
SSLProtocol <%= @ae_ssl_protocols%>
SSLCipherSuite "<%= @ae_ssl_ciphersuite%>"
SSLCertificateFile <%= @ae_tls_cert_path %>/<%= @ae_ssl_vhost_cert %>
SSLCertificateKeyFile <%= @ae_tls_key_path %>/<%= @ae_ssl_vhost_key %>
SSLCertificateChainFile <%= @ae_tls_cert_path %>/<%= @ae_ssl_vhost_chain %>
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
<Directory <%= @ae_doc_root -%>
AllowOverride none
Order Allow,Deny
Allow from <%= @ae_allow_from %>
</Directory>
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>