Compare commits
8 Commits
circleci-p
...
master
Author | SHA1 | Date | |
---|---|---|---|
853f5d60b1 | |||
0286f81bbd | |||
2632cfbe59 | |||
40310daf29 | |||
658c6520a0 | |||
|
7f59387532 | ||
|
92abd87230 | ||
|
f099b991b4 |
@ -13,14 +13,18 @@ https://github.com/microsoft/vscode-dev-containers/tree/v0.140.1/containers/pupp
|
||||
|
||||
// Set *default* container specific settings.json values on container create.
|
||||
"settings": {
|
||||
"terminal.integrated.shell.linux": "/bin/bash"
|
||||
"terminal.integrated.profiles.linux": {
|
||||
"bash": {
|
||||
"path": "bash",
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// Add the IDs of extensions you want installed when the container is created.
|
||||
"extensions": [
|
||||
"puppet.puppet-vscode",
|
||||
"rebornix.Ruby"
|
||||
]
|
||||
],
|
||||
|
||||
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
||||
"forwardPorts": [],
|
||||
|
@ -5,7 +5,7 @@
|
||||
"settings": {
|
||||
"terminal.integrated.profiles.linux": {
|
||||
"bash": {
|
||||
"path": "bash",
|
||||
"path": "bash"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -3,4 +3,6 @@
|
||||
---
|
||||
fixtures:
|
||||
forge_modules:
|
||||
# stdlib: "puppetlabs/stdlib"
|
||||
stdlib:
|
||||
repo: "puppetlabs/stdlib"
|
||||
ref: "6.0.0"
|
||||
|
@ -4,7 +4,7 @@ require:
|
||||
- rubocop-rspec
|
||||
AllCops:
|
||||
DisplayCopNames: true
|
||||
TargetRubyVersion: '2.4'
|
||||
TargetRubyVersion: '2.5'
|
||||
Include:
|
||||
- "**/*.rb"
|
||||
Exclude:
|
||||
|
3
.vscode/settings.json
vendored
Normal file
3
.vscode/settings.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"puppet.editorService.puppet.version": "7.23.0"
|
||||
}
|
@ -2,7 +2,13 @@
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
## 0.4.2 (2021-05-11)
|
||||
## 0.4.3 (2021-11-07)
|
||||
|
||||
### Changed
|
||||
|
||||
- Add support for RedHat RHEL in the metadata
|
||||
|
||||
## 0.4.2 (2021-11-05)
|
||||
|
||||
### Addition
|
||||
|
||||
|
34
Gemfile
34
Gemfile
@ -13,21 +13,31 @@ def location_for(place_or_version, fake_version = nil)
|
||||
end
|
||||
end
|
||||
|
||||
ruby_version_segments = Gem::Version.new(RUBY_VERSION.dup).segments
|
||||
minor_version = ruby_version_segments[0..1].join('.')
|
||||
|
||||
group :development do
|
||||
gem "json", '= 2.0.4', require: false if Gem::Requirement.create('~> 2.4.2').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
||||
gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
||||
gem "json", '= 2.3.0', require: false if Gem::Requirement.create(['>= 2.7.0', '< 2.8.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
||||
gem "puppet-module-posix-default-r#{minor_version}", '~> 1.0', require: false, platforms: [:ruby]
|
||||
gem "puppet-module-posix-dev-r#{minor_version}", '~> 1.0', require: false, platforms: [:ruby]
|
||||
gem "puppet-module-win-default-r#{minor_version}", '~> 1.0', require: false, platforms: [:mswin, :mingw, :x64_mingw]
|
||||
gem "puppet-module-win-dev-r#{minor_version}", '~> 1.0', require: false, platforms: [:mswin, :mingw, :x64_mingw]
|
||||
gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
||||
gem "json", '= 2.3.0', require: false if Gem::Requirement.create(['>= 2.7.0', '< 3.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
||||
gem "json", '= 2.5.1', require: false if Gem::Requirement.create(['>= 3.0.0', '< 3.0.5']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
||||
gem "json", '= 2.6.1', require: false if Gem::Requirement.create(['>= 3.1.0', '< 3.1.3']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
||||
gem "json", '= 2.6.3', require: false if Gem::Requirement.create(['>= 3.2.0', '< 4.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
||||
gem "voxpupuli-puppet-lint-plugins", '~> 4.0', require: false
|
||||
gem "facterdb", '~> 1.18', require: false
|
||||
gem "metadata-json-lint", '>= 2.0.2', '< 4.0.0', require: false
|
||||
gem "puppetlabs_spec_helper", '~> 5.0', require: false
|
||||
gem "rspec-puppet-facts", '~> 2.0', require: false
|
||||
gem "codecov", '~> 0.2', require: false
|
||||
gem "dependency_checker", '~> 0.2', require: false
|
||||
gem "parallel_tests", '= 3.12.1', require: false
|
||||
gem "pry", '~> 0.10', require: false
|
||||
gem "simplecov-console", '~> 0.5', require: false
|
||||
gem "puppet-debugger", '~> 1.0', require: false
|
||||
gem "rubocop", '= 1.6.1', require: false
|
||||
gem "rubocop-performance", '= 1.9.1', require: false
|
||||
gem "rubocop-rspec", '= 2.0.1', require: false
|
||||
gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw]
|
||||
end
|
||||
group :system_tests do
|
||||
gem "puppet-module-posix-system-r#{minor_version}", '~> 1.0', require: false, platforms: [:ruby]
|
||||
gem "puppet-module-win-system-r#{minor_version}", '~> 1.0', require: false, platforms: [:mswin, :mingw, :x64_mingw]
|
||||
gem "puppet_litmus", '< 1.0.0', require: false, platforms: [:ruby, :x64_mingw]
|
||||
gem "serverspec", '~> 2.41', require: false
|
||||
end
|
||||
|
||||
puppet_version = ENV['PUPPET_GEM_VERSION']
|
||||
|
@ -2,10 +2,8 @@
|
||||
#
|
||||
# Manages the nslcd server configuration file
|
||||
#
|
||||
class nslcd::config inherits nslcd
|
||||
{
|
||||
file
|
||||
{
|
||||
class nslcd::config inherits nslcd {
|
||||
file {
|
||||
$nslcd::config:
|
||||
ensure => file,
|
||||
owner => $nslcd::config_user,
|
||||
@ -13,4 +11,4 @@ class nslcd::config inherits nslcd
|
||||
mode => $nslcd::config_mode,
|
||||
content => template('nslcd/nslcd.erb'),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -98,8 +98,7 @@
|
||||
# Sets the time after which the LDAP server is considered to be permanently unavailable.
|
||||
# Once this time is reached retries will be done only once per this time period.
|
||||
#
|
||||
class nslcd
|
||||
(
|
||||
class nslcd (
|
||||
Variant[Boolean,String[1]] $package_ensure = 'present',
|
||||
String[1] $package_name = $nslcd::params::package_name,
|
||||
Boolean $package_manage = true,
|
||||
@ -109,7 +108,7 @@ class nslcd
|
||||
Boolean $service_manage = true,
|
||||
String[1] $uid = 'nslcd',
|
||||
String[1] $gid = $nslcd::params::gid,
|
||||
Stdlib::Unixpath $config = '/etc/nslcd.conf',
|
||||
Stdlib::Unixpath $config = $nslcd::params::config,
|
||||
String[1] $config_user = 'root',
|
||||
String[1] $config_group = $nslcd::params::config_group,
|
||||
Stdlib::Filemode $config_mode = $nslcd::params::config_mode,
|
||||
@ -131,14 +130,12 @@ class nslcd
|
||||
Optional[Integer] $idle_timelimit = undef,
|
||||
Integer $reconnect_sleeptime = 1,
|
||||
Integer $reconnect_retrytime = 10,
|
||||
)
|
||||
inherits nslcd::params
|
||||
{
|
||||
) inherits nslcd::params {
|
||||
contain nslcd::install
|
||||
contain nslcd::config
|
||||
contain nslcd::service
|
||||
|
||||
|
||||
Class['nslcd::install']
|
||||
-> Class['nslcd::config']
|
||||
~> Class['nslcd::service']
|
||||
}
|
||||
}
|
||||
|
@ -2,14 +2,10 @@
|
||||
#
|
||||
# Installs the nslcd package.
|
||||
#
|
||||
class nslcd::install inherits nslcd
|
||||
{
|
||||
if $nslcd::package_manage
|
||||
{
|
||||
package
|
||||
{
|
||||
$nslcd::package_name:
|
||||
ensure => $nslcd::package_ensure,
|
||||
class nslcd::install inherits nslcd {
|
||||
if $nslcd::package_manage {
|
||||
package { $nslcd::package_name:
|
||||
ensure => $nslcd::package_ensure,
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2,27 +2,31 @@
|
||||
#
|
||||
# Sets the default parameters for the nslcd class.
|
||||
#
|
||||
class nslcd::params
|
||||
{
|
||||
case $::osfamily
|
||||
{
|
||||
'Debian':
|
||||
{
|
||||
class nslcd::params {
|
||||
case $facts['os']['family'] {
|
||||
'Debian': {
|
||||
$package_name = 'nslcd'
|
||||
$gid = 'nslcd'
|
||||
$config = '/etc/nslcd.conf'
|
||||
$config_group = 'nslcd'
|
||||
$config_mode = '0640'
|
||||
}
|
||||
'RedHat':
|
||||
{
|
||||
'RedHat': {
|
||||
$package_name = 'nss-pam-ldapd'
|
||||
$gid = 'ldap'
|
||||
$config = '/etc/nslcd.conf'
|
||||
$config_group = 'root'
|
||||
$config_mode = '0600'
|
||||
}
|
||||
default:
|
||||
{
|
||||
fail("The ${module_name} module is not supported on an ${::osfamily} based system.")
|
||||
'FreeBSD': {
|
||||
$package_name = 'nss-pam-ldapd'
|
||||
$gid = 'nslcd'
|
||||
$config = '/usr/local/etc/nslcd.conf'
|
||||
$config_group = 'wheel'
|
||||
$config_mode = '0600'
|
||||
}
|
||||
default: {
|
||||
fail("The ${module_name} module is not supported on an ${facts['os']['family']} based system.")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2,16 +2,12 @@
|
||||
#
|
||||
# Manages the nslcd service.
|
||||
#
|
||||
class nslcd::service inherits nslcd
|
||||
{
|
||||
if $nslcd::service_manage
|
||||
{
|
||||
service
|
||||
{
|
||||
'nslcd':
|
||||
ensure => $nslcd::service_ensure,
|
||||
enable => $nslcd::service_enable,
|
||||
name => $nslcd::service_name,
|
||||
class nslcd::service inherits nslcd {
|
||||
if $nslcd::service_manage {
|
||||
service { 'nslcd':
|
||||
ensure => $nslcd::service_ensure,
|
||||
enable => $nslcd::service_enable,
|
||||
name => $nslcd::service_name,
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,16 +1,16 @@
|
||||
{
|
||||
"name": "geekix-nslcd",
|
||||
"version": "0.4.2",
|
||||
"author": "geekix",
|
||||
"name": "ascendings-nslcd",
|
||||
"version": "0.5.1",
|
||||
"author": "ascendings",
|
||||
"summary": "Installs and configures nslcd.",
|
||||
"license": "Apache-2.0",
|
||||
"source": "https://github.com/geekix/puppet-nslcd",
|
||||
"project_page": "https://github.com/geekix/puppet-nslcd",
|
||||
"issues_url": "https://github.com/geekix/puppet-nslcd/issues",
|
||||
"source": "https://git.metaunix.net/Metaunix/puppet-nslcd",
|
||||
"project_page": "https://git.metaunix.net/Metaunix/puppet-nslcd",
|
||||
"issues_url": "https://git.metaunix.net/Metaunix/puppet-nslcd/issues",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "puppetlabs-stdlib",
|
||||
"version_requirement": ">= 4.0.0 < 8.1.0"
|
||||
"version_requirement": ">= 6.0.0 < 8.5.0"
|
||||
}
|
||||
],
|
||||
"operatingsystem_support": [
|
||||
@ -31,6 +31,16 @@
|
||||
"18.04",
|
||||
"20.04"
|
||||
]
|
||||
},
|
||||
{
|
||||
"operatingsystem": "RedHat",
|
||||
"operatingsystemrelease": [
|
||||
"7",
|
||||
"8"
|
||||
]
|
||||
},
|
||||
{
|
||||
"operatingsystem": "FreeBSD"
|
||||
}
|
||||
],
|
||||
"requirements": [
|
||||
@ -46,7 +56,7 @@
|
||||
"ldap",
|
||||
"authentication"
|
||||
],
|
||||
"pdk-version": "2.2.0",
|
||||
"pdk-version": "2.7.1",
|
||||
"template-url": "https://github.com/puppetlabs/pdk-templates#main",
|
||||
"template-ref": "tags/2.3.0-0-g8aaceff"
|
||||
"template-ref": "heads/main-0-gc6d4446"
|
||||
}
|
||||
|
13
spec/classes/config_spec.rb
Normal file
13
spec/classes/config_spec.rb
Normal file
@ -0,0 +1,13 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe 'nslcd::config' do
|
||||
on_supported_os.each do |os, os_facts|
|
||||
context "on #{os}" do
|
||||
let(:facts) { os_facts }
|
||||
|
||||
it { is_expected.to compile.with_all_deps }
|
||||
end
|
||||
end
|
||||
end
|
13
spec/classes/install_spec.rb
Normal file
13
spec/classes/install_spec.rb
Normal file
@ -0,0 +1,13 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe 'nslcd::install' do
|
||||
on_supported_os.each do |os, os_facts|
|
||||
context "on #{os}" do
|
||||
let(:facts) { os_facts }
|
||||
|
||||
it { is_expected.to compile.with_all_deps }
|
||||
end
|
||||
end
|
||||
end
|
13
spec/classes/nslcd_spec.rb
Normal file
13
spec/classes/nslcd_spec.rb
Normal file
@ -0,0 +1,13 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe 'nslcd' do
|
||||
on_supported_os.each do |os, os_facts|
|
||||
context "on #{os}" do
|
||||
let(:facts) { os_facts }
|
||||
|
||||
it { is_expected.to compile.with_all_deps }
|
||||
end
|
||||
end
|
||||
end
|
13
spec/classes/params_spec.rb
Normal file
13
spec/classes/params_spec.rb
Normal file
@ -0,0 +1,13 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe 'nslcd::params' do
|
||||
on_supported_os.each do |os, os_facts|
|
||||
context "on #{os}" do
|
||||
let(:facts) { os_facts }
|
||||
|
||||
it { is_expected.to compile.with_all_deps }
|
||||
end
|
||||
end
|
||||
end
|
13
spec/classes/service_spec.rb
Normal file
13
spec/classes/service_spec.rb
Normal file
@ -0,0 +1,13 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe 'nslcd::service' do
|
||||
on_supported_os.each do |os, os_facts|
|
||||
context "on #{os}" do
|
||||
let(:facts) { os_facts }
|
||||
|
||||
it { is_expected.to compile.with_all_deps }
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue
Block a user