diff --git a/.gitignore b/.gitignore index 1b1afbe..2295c4d 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,6 @@ .plan_cache.json .rerun.json bolt-debug.log +.vscode +.puppet-lint.rc +.rspec diff --git a/Jenkinsfile b/Jenkinsfile index dd86dd0..b3cb9f6 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -69,7 +69,7 @@ pipeline { withCredentials([string(credentialsId: 'sonar-token', variable: 'SONAR_TOKEN')]) { sh ''' /opt/sonar-scanner/bin/sonar-scanner \ - -Dsonar.projectKey=ssh_cd \ + -Dsonar.projectKey=confdroid_ssh \ -Dsonar.sources=. \ -Dsonar.host.url=https://sonarqube.confdroid.com \ -Dsonar.token=$SONAR_TOKEN diff --git a/README.md b/README.md index 44bdee9..f647666 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,21 @@ # Readme -[![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=ssh_cd)](https://jenkins.confdroid.com/job/ssh_cd/) +[![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_ssh&style=plastic)](https://jenkins.confdroid.com/job/confdroid_ssh/) -[[_TOC_]] +- [Readme](#readme) + - [Synopsis](#synopsis) + - [WARNING](#warning) + - [Features](#features) + - [Support](#support) + - [Parameter Inheritance](#parameter-inheritance) + - [Module Deployment](#module-deployment) + - [Tests](#tests) + - [Contact Us](#contact-us) + - [Disclaimer](#disclaimer) ## Synopsis -`ssh_cd`manages the aspects of the sshd daemon. +`confdroid_ssh`manages the aspects of the sshd daemon. ## WARNING @@ -14,12 +23,10 @@ ## Features -See [CHANGELOG.md](CHANGELOG.md) - ## Support -* Rocky 9 -* Puppet 8 +- Rocky 9 +- Puppet 8 ## Parameter Inheritance @@ -31,16 +38,17 @@ ALmost every puppet setup is done in very custom ways, and hence the way the mod ## Tests -* Puppet Lint - * excluded tests: - * `--no-variable_scope-check`: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters. -* Puppet Parser -* ERB Template Parser -* Sonar Quality Gate +- Puppet Lint + - excluded tests: + - `--no-variable_scope-check`: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters. +- 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 diff --git a/manifests/init.pp b/manifests/init.pp index 7bea8fa..f805291 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -1,8 +1,8 @@ -## ssh_cd::init.pp -# Module name: ssh_cd -# Author: Arne Teuke (arne_teuke@confdroid.com) -# @summary Class initializes the ssh_cd module +## confdroid_ssh::init.pp +# Module name: confdroid_ssh +# Author: 12ww1160 (12ww1160@confdroid.com) +# @summary Class initializes the confdroid_ssh module ############################################################################## -class ssh_cd { - include ssh_cd::params +class confdroid_ssh { + include confdroid_ssh::params } diff --git a/manifests/main/config.pp b/manifests/main/config.pp index 694cbc8..7a281b5 100644 --- a/manifests/main/config.pp +++ b/manifests/main/config.pp @@ -1,9 +1,9 @@ -## ssh_cd::main::config.pp -# Module name: ssh_cd -# Author: Arne Teuke (arne_teuke@confdroid.com) +## confdroid_ssh::main::config.pp +# Module name: confdroid_ssh +# Author: 12ww1160 (12ww1160@confdroid.com) # @summary Class manages module logic ############################################################################## -class ssh_cd::main::config ( -) inherits ssh_cd::params { - include ssh_cd::main::service +class confdroid_ssh::main::config ( +) inherits confdroid_ssh::params { + include confdroid_ssh::main::service } diff --git a/manifests/main/dirs.pp b/manifests/main/dirs.pp index b1679d5..896ccf6 100644 --- a/manifests/main/dirs.pp +++ b/manifests/main/dirs.pp @@ -1,11 +1,11 @@ -## ssh_cd::main::dirs.pp -# Module name: ssh_cd -# Author: Arne Teuke (arne_teuke@confdroid.com) +## confdroid_ssh::main::dirs.pp +# Module name: confdroid_ssh +# Author: 12ww1160 (12ww1160@confdroid.com) # @summary Class manages directories ############################################################################## -class ssh_cd::main::dirs ( -) inherits ssh_cd::params { - require ssh_cd::main::install +class confdroid_ssh::main::dirs ( +) inherits confdroid_ssh::params { + require confdroid_ssh::main::install file { $ssh_etc_path: ensure => directory, diff --git a/manifests/main/files.pp b/manifests/main/files.pp index 7382e5f..8a0b862 100644 --- a/manifests/main/files.pp +++ b/manifests/main/files.pp @@ -1,11 +1,11 @@ -## ssh_cd::main::files.pp -# Module name: ssh_cd -# Author: Arne Teuke (arne_teuke@confdroid.com) +## confdroid_ssh::main::files.pp +# Module name: confdroid_ssh +# Author: 12ww1160 (12ww1160@confdroid.com) # @summary Class manages files ############################################################################## -class ssh_cd::main::files ( -) inherits ssh_cd::params { - require ssh_cd::main::dirs +class confdroid_ssh::main::files ( +) inherits confdroid_ssh::params { + require confdroid_ssh::main::dirs file { $sshd_config_path: ensure => file, diff --git a/manifests/main/install.pp b/manifests/main/install.pp index 00617e3..b2ca70d 100644 --- a/manifests/main/install.pp +++ b/manifests/main/install.pp @@ -1,10 +1,10 @@ -## ssh_cd::main::install.pp -# Module name: ssh_cd -# Author: Arne Teuke (arne_teuke@confdroid.com) +## confdroid_ssh::main::install.pp +# Module name: confdroid_ssh +# Author: 12ww1160 (12ww1160@confdroid.com) # @summary Class manages installation ############################################################################## -class ssh_cd::main::install ( -) inherits ssh_cd::params { +class confdroid_ssh::main::install ( +) inherits confdroid_ssh::params { package { $reqpackages: ensure => $pkg_ensure, } diff --git a/manifests/main/service.pp b/manifests/main/service.pp index e07cb89..639fdca 100644 --- a/manifests/main/service.pp +++ b/manifests/main/service.pp @@ -1,11 +1,11 @@ -## ssh_cd::main::service.pp -# Module name: ssh_cd -# Author: Arne Teuke (arne_teuke@confdroid.com) +## confdroid_ssh::main::service.pp +# Module name: confdroid_ssh +# Author: 12ww1160 (12ww1160@confdroid.com) # @summary Class manages service settings ############################################################################## -class ssh_cd::main::service ( -) inherits ssh_cd::params { - require ssh_cd::main::files +class confdroid_ssh::main::service ( +) inherits confdroid_ssh::params { + require confdroid_ssh::main::files service { $sshd_service: ensure => running, diff --git a/manifests/params.pp b/manifests/params.pp index 0f0020c..520f6cb 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -1,22 +1,29 @@ -## ssh_cd::params.pp -# Module name: ssh_cd -# Author: Arne Teuke (arne_teuke@confdroid.com) -# @summary Class contains all class parameters for ssh_cd +## confdroid_ssh::params.pp +# Module name: confdroid_ssh +# Author: 12ww1160 (12ww1160@confdroid.com) +# @summary Class contains all class parameters for confdroid_ssh # @param [Array] reqpackages packages to install # @param [String] pkg_ensure version to install: 'present' or 'latest' ############################################################################## -class ssh_cd::params ( +class confdroid_ssh::params ( Array $reqpackages = ['openssh','openssh-clients','openssh-server'], - String $pkg_ensure = 'latest', + String $pkg_ensure = 'present', ) { +# default facts + $fqdn = $facts['networking']['fqdn'] + $hostname = $facts['networking']['hostname'] + $domain = $facts['networking']['domain'] + $os_name = $facts['os']['name'] + $os_release = $facts['os']['release']['major'] + $sshd_user = 'root' $ssh_etc_path = '/etc/ssh' $sshd_service = 'sshd' $sshd_config_path = "${ssh_etc_path}/sshd_config" - $sshd_config_erb = 'ssh_cd/ssh_config.erb' + $sshd_config_erb = 'confdroid_ssh/ssh_config.erb' # includes must be last - include ssh_cd::main::config + include confdroid_ssh::main::config } diff --git a/templates/ssh_config.erb b/templates/ssh_config.erb index 6240f99..52960b3 100644 --- a/templates/ssh_config.erb +++ b/templates/ssh_config.erb @@ -1,3 +1,10 @@ +############################################################################### +##### DO NOT EDIT THIS FILE MANUALLY # +##### This file is managed by Puppet. Any changes to this file will be # +###### overwritten. If you want to change the content of this file, edit the # +##### template ssh_config.erb ##### and then run Puppet to apply the changes. # +############################################################################### + # $OpenBSD: sshd_config,v 1.104 2021/07/02 05:11:21 dtucker Exp $ # This is the sshd server system-wide configuration file. See