Skip to content

Commit

Permalink
Merge branch 'master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
ThoTischner authored Aug 17, 2017
2 parents 3600032 + 2feae02 commit 31bd8fd
Show file tree
Hide file tree
Showing 19 changed files with 353 additions and 208 deletions.
6 changes: 3 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ before_install:
matrix:
fast_finish: true
include:
- rvm: 2.3.1
- rvm: 2.4.0
bundler_args: --without system_tests
env: PUPPET_GEM_VERSION="~> 4.0"
- rvm: 2.1.7
env: PUPPET_GEM_VERSION="~> 5.0"
- rvm: 2.1.9
bundler_args: --without system_tests
env: PUPPET_GEM_VERSION="~> 4.0"
notifications:
Expand Down
176 changes: 114 additions & 62 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,68 +1,99 @@
## Release 0.17.0
# Change log

All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org).

## Unsupported Release [1.0.0]
### Summary
Major release removing Puppet 3 support.

#### Added
- `ssl_weak_cert` param in `mongodb::server` type
- `system_logrotate` param in `mongodb`, `mongodb::server`, and `mongodb::server::config`
- `handle_creds` to handle credentials outside of Puppet ([MODULES-1754](https://tickets.puppet.com/browse/MODULES-1754))
- `sslMode` when SSL is used
- ability to use unencrypted passwords

#### Changed
- **lower bound of Puppet requirement to 4.7.0**
- use of `sslMode` to `sslOnNormalPorts` to determine if SSL is enabled

#### Fixed
- `database` property in `mongodb_user` to allow hyphens ([MODULES-4444](https://tickets.puppet.com/browse/MODULES-4444))
- gsub pattern for `is_master` fact
- `mongodb_version` fact
- selinux dbpath contexts in `mongodb::server::config`
- Debian-based repo paths
- `$pidfilepath` for Debian
- syntax error in net.ipv6 configuration option
- spec failure caused by Puppet 5
- is_master in mongodb provider

## Unsupported Release [0.17.0]
### Summary
Adding features to improve spec testing, and added ability to manage pidfile creation

## Bugfixes
- gettext and spec.opts fixes
- MODULES-3631 - msync Gemfile for 1.0 frozen strings
- MODULES-3956 - MongoDB 3.12 creates pid file and checks in init script
- MODULES-3704 - Update gemfile template to be identical
- Allow deprecation errors
#### Fixed
- gettext and spec.opts
- msync Gemfile for 1.0 frozen strings ([MODULES-3631](https://tickets.puppet.com/browse/MODULES-3631))
- MongoDB 3.12 creates pid file and checks in init script ([MODULES-3956](https://tickets.puppet.com/browse/MODULES-3956))
- gemfile template to be identical ([MODULES-3704](https://tickets.puppet.com/browse/MODULES-3704))
- deprecation errors

## Release 0.16.0
## Unsupported Release [0.16.0]
### Summary
We fixed a critical bug where we lost idempotency in 0.15.0. The patch that fix
this problem will be part of this release.

### Bugfixes
#### Fixed
- Recursively manage only user/group for dbpath

## Release 0.15.0
## Unsupported Release [0.15.0]
### Summary
The addition of several new functional features which will help with management and multiple bug fixes.

### Features
#### Added
- Added ability to set PID file mode.
- Recursively manage the contents of dbpath directory.
- Now alllows custom templates.
- Addition of mongo listen port before creating facter.

### Bugfixes
#### Fixed
- Now allows hyphens in database names.
- Now converts MongoDB ObjectID objects to generic JSON.
- Use the same regex that the mongodb provider does when correcting for ObjectID values in the isMaster response.
- Fixes to ensure that the auth property for config is parsed correctly.
- Now checks if mongo is up before evaluating is_master fact.

## Release 0.14.0
## Unsupported Release [0.14.0]
### Summary
This breaking release increases the lower bound of the puppetlabs-apt dependency to the 2.x series of apt and puppetlabs-stdlib to >= 4.4.0. The operating system metadata is also updated to reflect modern systems.

### Backwards-incompatible change
- Increase apt lower dependency to >= 2.1.0
- Increase stdlib lower dependency to >= 4.4.0
- Drop RHEL & Centos 5
- Drop Debian 6
- Drop Ubuntu 10.04

### Features
#### Added
- Add `mongodb_is_master` fact
- Add `mongodb::db::db_name` parameter for exported resource deduplication
- Add Debian 8 compatibility
- Add Ubuntu 14.04 compatibility
- Add Ubuntu 16.04 compatibility
- Add puppet 3.x 4.x compatibility metadata

### Bugfixes
#### Changed
- Increase apt lower dependency to >= 2.1.0
- Increase stdlib lower dependency to >= 4.4.0
- Drop RHEL & Centos 5
- Drop Debian 6
- Drop Ubuntu 10.04

#### Fixed
- Catch unconfigured replset configuration queries
- Fix timestamp and other javascript object removal
- Correct permissions on .mongorc.js to 600

## Release 0.13.0
## Unsupported Release [0.13.0]
### Summary
Adds several new large features, including the support of mongodb 3.x. Also applies numerous bugfixes, mainly around fixing errors being thrown and syntax issues.

#### Features
#### Added
- Adds mongodb_version fact.
- Add mongodb 3.x.
- Update to current msync configs.
Expand All @@ -74,7 +105,7 @@ Adds several new large features, including the support of mongodb 3.x. Also appl
- Added $maxconns to mongodb::server::config.
- Added Suse to operating systems.

#### Bugfixes
#### Fixed
- Removes empty lines between doc and definition.
- Fix when using admin params : catalog: Found 1 dependency cycle: issue.
- Some syntax error fixes.
Expand All @@ -83,11 +114,11 @@ Adds several new large features, including the support of mongodb 3.x. Also appl
- Checks if $version is defined before versioncmp.
- Fixed deprecation warning for use of configtimeout.

## 2016-02-08 - Release 0.12.0
## Unsupported Release [0.12.0]
### Summary
There are a number of bugfixes and features added in this release including, mongo db 3 engine support, ipv6 support and repo and yum improvements.

#### Features
#### Added
- Distinguish between repo and package mgmt
- Immplement retries for MongoDB shell commands
- Initiate replica set creation from localhost if auth is enabled
Expand All @@ -98,7 +129,7 @@ There are a number of bugfixes and features added in this release including, mon
- Add yum proxy options
- Enable IPv6 in mongodb provider

#### Bugfixes
#### Fixed
- Fix mongodb_user username => name
- ensure that the client install does not start before the repo setup
- Fix replset not working on mongo 3.x
Expand All @@ -111,43 +142,43 @@ There are a number of bugfixes and features added in this release including, mon
- Do not add blank parameter in ipv4
- Apply module sync

## 2015-06-22 - Release 0.11.0
## Unsupported Release [0.11.0]
### Summary

#### Features
- Add arbiter support to to `mongodb_replset`
- Add `mongod_service_manage`, `mongos_service_manage`, and `ipv6` to `mongodb::globals`
- Add `service_manage`, `unitxsocketprefix`, `pidfilepath`, `logpath`, `fork`, `bind_ip`, `port`, and `restart` to `mongodb::mongos` class
- Add `key`, `ipv6`, `service_manage`, and `restart` to `mongodb::server` class
#### Added
- arbiter support to to `mongodb_replset`
- `mongod_service_manage`, `mongos_service_manage`, and `ipv6` to `mongodb::globals`
- `service_manage`, `unitxsocketprefix`, `pidfilepath`, `logpath`, `fork`, `bind_ip`, `port`, and `restart` to `mongodb::mongos` class
- `key`, `ipv6`, `service_manage`, and `restart` to `mongodb::server` class
- Allow mongodb\_conn\_validator to take an array of nodes via composite namevar

#### Bugfixes
#### Fixed
- Update to long apt repo key and bump compatibility to include apt 2
- Fix `nohttpinterface` on >= 2.6
- Fix connection validation when bind\_ip is 0.0.0.0
- Fix mongodb\_conn\_validator to use default port in shard mode

##2015-01-13 - Release 0.10.0
###Summary
## Unsupported Release [0.10.0]
### Summary

This release adds a number of significant features and several bug fixes.

####Features
#### Added
- Adds support for sharding
- Adds support for RHEL 7
- Adds rudimentary support for SSL configuration
- Adds support for the enterprise repository

####Bugfixes
#### Fixed
- Fixes support for running on non-default ports
- Fixes the idempotency of password setting (for mongo 2.6)

##2014-11-25 - Release 0.9.0
###Summary
## Unsupported Release [0.9.0]
### Summary

This release has a number of new parameters, support for 2.6, improved providers, and several bugfixes.

####Features
#### Added
- New parameters: `mongodb::globals`
- `$service_ensure`
- `$service_enable`
Expand All @@ -162,77 +193,98 @@ This release has a number of new parameters, support for 2.6, improved providers
- Reimplement `mongodb_user` and `mongodb_database` provider
- Added `mongodb_conn_validator` type

####Bugfixes
#### Fixed
- Use hkp for the apt keyserver
- Fix mongodb database existance check
- Fix `$server_package_name` problem (MODULES-690)
- Make sure `pidfilepath` doesn't have any spaces
- Providers need the client command before they can work (MODULES-1285)

##2014-05-27 - Release 0.8.0
###Summary
## Unsupported Release [0.8.0]
### Summary

This feature features a rewritten mongodb_replset{} provider, includes several
important bugfixes, ruby 1.8 support, and two new features.

####Features
#### Added
- Rewritten mongodb_replset{}, featuring puppet resource support, prefetching,
and flushing.
- Add Ruby 1.8 compatibility.
- Adds `syslog`, allowing you to configure mongodb to send all logging to the hosts syslog.
- Add mongodb::replset, a wrapper class for hiera users.
- Improved testing!

####Bugfixes
#### Fixed
- Fixes the package names to work since 10gen renamed them again.
- Fix provider name in the README.
- Disallow `nojournal` and `journal` to be set at the same time.
- Changed - to = for versioned install on Ubuntu.

##2014-1-29 - Release 0.7.0
###Summary
## Unsupported Release [0.7.0]
### Summary

Added Replica Set Type and Provider

##2014-1-17 - Release 0.6.0
###Summary
## Unsupported Release [0.6.0]
### Summary

Added support for installing MongoDB client on
RHEL family systems.

##2014-01-10 Release 0.5.0
###Summary
## Unsupported Release [0.5.0]
### Summary

Added types for providers for Mongo users and databases.

##2013-12 Release 0.4.0
## Unsupported Release [0.4.0]

Major refactoring of the MongoDB module. Includes a new 'mongodb::globals'
that consolidates many shared parameters into one location. This is an
API-breaking release in anticipation of a 1.0 release.

##2013-10-31 - Release 0.3.0
###Summary
## Unsupported Release [0.3.0]
### Summary

Adds a number of parameters and fixes some platform
specific bugs in module deployment.

##2013-09-25 - Release 0.2.0
###Summary
## Unsupported Release [0.2.0]
### Summary

This release fixes a duplicate parameter.

####Bugfixes
#### Fixed
- Fix a duplicated parameter.

##2012-07-13 - Release 0.1.0
## Unsupported Release [0.1.0]
- Add support for RHEL/CentOS
- Change default mongodb install location to OS repo

##2012-05-29 - Release 0.0.2
## Unsupported Release [0.0.2]
- Fix Modulefile typo.
- Remove repo pin.
- Update spec tests and add travis support.

##2012-05-03 - Release 0.0.1
## Unsupported Release [0.0.1]
- Initial Release.

[1.0.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.17.0...1.0.0
[0.17.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.16.0...0.17.0
[0.16.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.15.0...0.16.0
[0.15.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.14.0...0.15.0
[0.14.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.13.0...0.14.0
[0.13.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.12.0...0.13.0
[0.12.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.11.0...0.12.0
[0.11.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.10.0...0.11.0
[0.10.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.9.0...0.10.0
[0.9.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.8.0...0.9.0
[0.8.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.7.0...0.8.0
[0.7.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.6.0...0.7.0
[0.6.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.5.0...0.6.0
[0.5.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.4.0...0.5.0
[0.4.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.3.0...0.4.0
[0.3.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.2.0...0.3.0
[0.2.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.1.0...0.2.0
[0.1.0]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.0.2...0.1.0
[0.0.2]: https://github.com/puppetlabs/puppetlabs-mongodb/compare/0.0.1...0.0.2
[0.0.1]: https://github.com/puppetlabs/puppetlabs-mongodb/tree/0.0.1
15 changes: 8 additions & 7 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,13 @@ ruby_version_segments = Gem::Version.new(RUBY_VERSION.dup).segments
minor_version = "#{ruby_version_segments[0]}.#{ruby_version_segments[1]}"

group :development do
gem "puppet-module-posix-default-r#{minor_version}", :require => false, :platforms => "ruby"
gem "puppet-module-win-default-r#{minor_version}", :require => false, :platforms => ["mswin", "mingw", "x64_mingw"]
gem "puppet-module-posix-dev-r#{minor_version}", :require => false, :platforms => "ruby"
gem "puppet-module-win-dev-r#{minor_version}", :require => false, :platforms => ["mswin", "mingw", "x64_mingw"]
gem "json_pure", '<= 2.0.1', :require => false if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.0.0')
gem "fast_gettext", '1.1.0', :require => false if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.1.0')
gem "fast_gettext", :require => false if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.1.0')
gem "puppet-module-posix-default-r#{minor_version}", :require => false, :platforms => "ruby"
gem "puppet-module-win-default-r#{minor_version}", :require => false, :platforms => ["mswin", "mingw", "x64_mingw"]
gem "puppet-module-posix-dev-r#{minor_version}", :require => false, :platforms => "ruby"
gem "puppet-module-win-dev-r#{minor_version}", '0.0.7', :require => false, :platforms => ["mswin", "mingw", "x64_mingw"]
gem "json_pure", '<= 2.0.1', :require => false if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.0.0')
gem "fast_gettext", '1.1.0', :require => false if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.1.0')
gem "fast_gettext", :require => false if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.1.0')
end

group :system_tests do
Expand All @@ -50,6 +50,7 @@ group :system_tests do
gem "beaker-rspec", *location_for(ENV['BEAKER_RSPEC_VERSION'])
gem "beaker-hostgenerator", *location_for(ENV['BEAKER_HOSTGENERATOR_VERSION'])
gem "beaker-abs", *location_for(ENV['BEAKER_ABS_VERSION'] || '~> 0.1')
gem "puppet-blacksmith", '~> 3.4', :require => false
end

gem 'puppet', *location_for(ENV['PUPPET_GEM_VERSION'])
Expand Down
9 changes: 8 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -534,6 +534,10 @@ Administrator user roles
##### `store_creds`
Store admin credentials in mongorc.js file. Uses with `create_admin` parameter

##### `handle_creds`
Set this to false to avoid having puppet handle .mongorc.js in case you wish to deliver it by other means.
This is needed for facts to work if you have auth set to true. Default is true.


#### Class: mongodb::mongos
class. This class should only be used if you want to implement sharding within
Expand Down Expand Up @@ -648,7 +652,10 @@ mongodb_user { testuser:
Name of the mongodb user.

##### `password_hash`
Hex encoded md5 hash of "$username:mongo:$password".
Hex encoded md5 hash of "$username:mongo:$password". Only available on MongoDB 3.0 and later.

##### `password`
Plaintext password of the user.

##### `database`
Name of database. It will be created, if not exists.
Expand Down
Loading

0 comments on commit 31bd8fd

Please sign in to comment.