Currently postgresql::server::schema, postgresql::server::db and
postgresql::server::database allow creating new schemas and
databases if they don't already exist and assigning owners to
them. This patch enables changing the owner of a schema or database
that already exists if the change_ownership variable is set to true.
- Add missing parameter `default_connect_settings` to class `postgresql::server`
which was required by all of the classes and actually would have failed if the
tests where not masking the issue
- Remove test param that was masking the issue
postgresql_escape returned an invalid string if the password end in '$':
postgres=# alter role "postgres" password $$foo$$$;
ERROR: syntax error at or near "$"
LINE 1: alter role "postgres" password $$foo$$$;
Prior to this commit, when creating databases with a name or owner that has
characters which must be quoted (e.g., "pe-postgres"), the postgresql::server::database define
fails due to a SQL syntax error.
This adds the ability to define the extension name separately from the
"title" of the resource, which allows you to add the extension to more
than one database.
As per the original ticket, extensions in postgresql can be defined on
a per database basis. By using the same name for both the extension and
the instance of postgresql::server::extension, you're getting duplicates
errors if you try to assign an extension to more than one database
Adds connection-settings (for remote DB support) when creating DB resources.
Connection-settings allows a hash of options that can be used
when connecting the a remote DB (such as PGHOST, PGPORT, PGPASSWORD
PGSSLKEY) and a special option DBVERSION indicating the version
of the remote database.
Including
- Puppet updates
- Documentation updates
- RSpec unit test updates
- RSpec acceptance test updates
- Some test coverage for connection-settings
- Working acceptance test...
Basic vagrant setup:
* Two boxes, server and client
* Runs puppet code to on server to setup a postgres server that allows all connections and md5 connections, creates db puppet to look at
* Runs puppet code on client to make a server that a psql command can be run against puppet db on other server
* Does some fancy stuff to get the fact of the IP from the first server to connect to
- Backwards compatible, with deprecation warnings around old parameters
$manage_package_repo wasn't in scope for the template systemd-override.erb
This was causing all RHEL7 systems with manage_package_repo on to fail on
startup using systemctl, as the proper path to the original service file
is set incorrectly.
This patch adds the manage_package_repo to the top of the ::config class,
and adds some basic tests in config_spec.rb to ensure we don't regress on
this.
Signed-off-by: Ken Barber <ken@bob.sh>
serverspec's be_listening uses net-tools' netstat utility to check for
open ports. This was puleld in until recently by puppet-agent packages.
Now this has changed and we need to install this manually.
- Issue with fact() was being called against default instead of
using fact_on when iterating against each host, also was installing 3.8.1 despite
specifying PUPPET_VERSION=1.1.1 so updated to use beaker-puppet_install_helper