Commit graph

247 commits

Author SHA1 Message Date
Chris Price
208b663ad1 Rework postgres_default_version fact
This commit fixes up the `postgres_default_version` fact so that
it doesn't use apt/yum (slow), and instead just has a hard-coded
list of default postgres versions for various OS versions.  We
will need to add new OS versions to this fact over time, but that
seems preferable to the previous implementation which was causing
slower puppet runs on all nodes (regardless of whether they were
actually using postgres or not).
2012-12-07 10:40:18 -08:00
Chris Price
afd8e90dd5 Fix to 'require' for database_grant 2012-12-06 14:35:42 -08:00
Chris Price
9d12358917 Merge pull request #43 from cprice-puppet/feature/master/support-non-default-versions
Feature/master/support non default versions
2012-12-06 14:08:01 -08:00
Chris Price
228e5c5337 Cleanup and move control of version into params
Thanks to some tricks I learned from Nan Liu and Dan Bode, I was
able to figure out a way to move all of the new version-related stuff
back into the params class, and clean up some of the if/_real stuff.

Basic tests for centos6 + pg 9.2 are passing.
2012-12-04 14:12:41 -08:00
Chris Price
18167c7a3e Merge platform.pp back into params.pp
Nan showed me a trick that will let us keep all of that param stuff
inside of params.pp, make it a parameterized class, and still support
the ability for users to specify a custom (non-system-default) pg
version.  This commit takes the first step towards that pattern by
consolidating platform.pp and params.pp.  (Everything old is new again!)
2012-12-04 14:12:34 -08:00
Chris Price
fa24f24397 Re-add support for managing yumrepo
This commit creates a new class called `package_source_info`,
which has some initial framework for managing the postgresql.org
yumrepo.  It also serves as a container for the 'version'
variable that is needed by the 'platform' class in order to
use other versions of postgres besides the system default.
2012-12-02 23:06:36 -08:00
Chris Price
663c779309 A few minor fixes to get tests passing again 2012-12-02 22:05:57 -08:00
Chris Price
de45945aff Merge ::paths and ::packages into one class, called ::platform. 2012-12-02 20:59:18 -08:00
Chris Price
90ed7aaf6d Working on getting ubuntu specs passing again
The service provider / status stuff got a little broken during
the refactors.  This should mostly fix it but there is still
one spec failing, and I will probably also refactor the
paths.pp and packages.pp into a single file together eventually.
2012-12-02 20:56:36 -08:00
Etienne Pelletier
d1025e90ef Removed references to postgresql::paths in class params. 2012-12-02 20:56:36 -08:00
Etienne Pelletier
33add5e10a Removed postgresql::version class and moved version info to init.pp. 2012-12-02 20:56:29 -08:00
Etienne Pelletier
db1a34e7ea Removed references to $postgresql::paths in class params. 2012-12-02 20:54:39 -08:00
Etienne Pelletier
ca701b303c Removed repo class. 2012-12-02 20:54:39 -08:00
Chris Price
2a108abe8b Fix paths 2012-12-02 20:54:39 -08:00
Etienne Pelletier
1fe9559bbe Refactored multi-version support. 2012-12-02 20:54:33 -08:00
Etienne Pelletier
1661ff1696 Stupid Librarian 2012-12-02 20:49:47 -08:00
Etienne Pelletier
28319062ba Stdlib issues again. 2012-12-02 20:49:47 -08:00
Etienne Pelletier
50f9d3a427 More issues with stdlib dependencies. 2012-12-02 20:49:47 -08:00
Etienne Pelletier
892ca0d8d4 Reverted back to 3.x version of stdlib 2012-12-02 20:49:47 -08:00
Etienne Pelletier
5343c50efa Trying to overcome issues with stdlib version 2012-12-02 20:49:47 -08:00
Etienne Pelletier
a5d3de2dc4 Pulled repository stuff out of params.
Lint cleanup.
2012-12-02 20:49:47 -08:00
Chris Price
b9a51be36e Fix paths 2012-12-02 20:49:47 -08:00
Etienne Pelletier
8e96959ca8 Added easier support for Postgresql 9.0 (on RedHat platforms) 2012-12-02 20:49:47 -08:00
Chris Price
1b82be0f89 A little more framework for CentOS pg9 testing 2012-12-02 20:47:04 -08:00
Chris Price
5c9658a994 Merge pull request #42 from cprice-puppet/maint/master/support-more-distros-in-tests
Maint/master/support more distros in tests
2012-12-02 16:52:23 -08:00
Chris Price
cf32763937 A bit more refactoring of test context code 2012-12-02 16:41:35 -08:00
Chris Price
df92c96791 Refactor tests and add CentOS6 image
This commit does a fairly major refactor of how the spec tests
are laid out.  The main goal was to make it easier to run
a subset of the tests--e.g., the ability to only run tests
on a single OS via a simple rspec command.

The test logic is now defined in some shared examples in the
`support` directory.  There are now spec folders for each
distro, which contain some stubs to include the shared examples
as well as a Vagrantfile for the particular distro.

Also, the system-default postgres package tests now run
successfully against the CentOS6 VM that is defined by the
Vagrantfile.
2012-12-02 15:28:25 -08:00
Chris Price
bdecbe6503 Framework for testing on Cent6 / PG9
This commit does the following:

* Adds a CentOS6 vm to the Vagrantfile
* Reorganizes the spec test file a bit so that it will be easy
  to test various things on different VMs.

This is in preparation for adding some PG9 tests to run on
Cent6.
2012-11-30 17:27:23 -08:00
Chris Price
5585b6bb50 Merge pull request #25 from cprice-puppet/feature/master/port-psql-to-ruby
Initial working implementation of ruby psql type/provider
2012-11-30 16:31:46 -08:00
Chris Price
76fcf269d8 Merge branch 'master' into cprice-puppet-feature/master/port-psql-to-ruby
Conflicts:
	manifests/database.pp
	manifests/database_grant.pp
	manifests/psql.pp
	manifests/role.pp
2012-11-30 15:49:07 -08:00
Chris Price
338ae56b8c Merge pull request #40 from Spenser309/master
Updated.  This will fix initdb failures.
2012-11-27 12:01:46 -08:00
Spenser Gilliland
f7a939b290 Fix Issue #38: Require postgresql-server package to run initdb exec 2012-11-27 13:58:30 -06:00
Chris Price
cb9f282a5f Merge pull request #35 from antaflos/reload-postgres
Set sensible path in exec to reload postgres
2012-11-15 16:17:57 -08:00
Andreas Ntaflos
d44de361b6 Set sensible path in exec to reload postgres
In the exec resource to reload postgres add path parameter and set it to
"/usr/bin:/usr/sbin:/bin:/sbin", so that the service command can be
called correctly on different platforms.
2012-11-15 16:39:56 +01:00
Chris Price
879c41e44f Merge pull request #33 from antaflos/reload-postgres
Reload postgresql after changes to pg_hba.conf
2012-11-12 11:32:12 -08:00
Andreas Ntaflos
19a512b06d Add new exec 'reload_postgresql' and have the pg_hba.conf file resource
notify that exec after changes to pg_hba.conf. This avoids restarting
the whole postgresql cluster for configuration changes in pg_hba.conf
which only need a reload.
2012-11-09 23:46:16 +01:00
Chris Price
7612cb9539 Merge pull request #32 from antaflos/quote-dbname
Properly quote database name when using postgresql::psql
2012-11-09 08:13:31 -08:00
Chris Price
b8ccbeb3c5 Merge pull request #29 from etiennep/master
Issue #28
2012-11-09 08:13:01 -08:00
Andreas Ntaflos
c4147a4105 Properly quote database name when using postgresql::psql for GRANT or REVOKE. 2012-11-09 04:20:36 +01:00
Etienne Pelletier
10426aaf58 Bumped stdlib dependency to 3.x 2012-11-08 16:13:29 -06:00
Etienne Pelletier
9adcd182f8 Added check before adding postgresql::user
This is to make sure there are no duplicate definitions when creating multiple
databases owned by the same user.
2012-11-08 12:50:08 -06:00
Etienne Pelletier
ef14e8d26c Issue #28 Changed stdlib version to >=2.0.0 to allow using newer version of stdlib. 2012-11-08 10:12:51 -06:00
Chris Price
2a922f104a Initial working implementation of ruby psql type/provider
This commit provides a working implementation of a ruby
type/provider (`postgresql_psql` for handling the PSQL
commands.  This is a little more flexible than doing it
via Exec resources, which is what the `postgresql::psql`
type was doing.

The old type is still present but now includes a
deprecation notification, and all of the other types
that were using the `::psql` type have been ported over
to use the `postgresql_psql` type instead.
2012-11-04 21:47:49 -08:00
Chris Price
a6f2e257c9 Merge pull request #24 from blkperl/fix_tests
Puppet lint fixes and test typo
2012-11-03 13:37:43 -07:00
William Van Hevelingen
bdf6c0b84c Puppet lint fixes
- left longer than 80 char warnings
 - left inherits params class warnings
2012-11-03 02:37:20 +00:00
William Van Hevelingen
65f8d27f11 Fix typo in server smoke test 2012-11-03 01:34:06 +00:00
Chris Price
686f1ca0e3 Merge pull request #23 from albertkoch/master
Support special characters in database role name
2012-11-01 09:39:29 -07:00
Albert Koch
9a0716f127 Support special characters in database role name
This will allow characters such as '-' in database role
names. Additionally, escaping of '"' characters now applies to all '"'
characters, not just the first in a sql command.
2012-11-01 09:45:20 -04:00
Chris Price
c3c4d32267 Merge pull request #19 from jarib/fix-path-for-cat
Fix path for `/bin/cat`
2012-10-29 10:47:03 -07:00
Chris Price
7b71eb36f9 Merge pull request #22 from cprice-puppet/patch-1
Update README.md
2012-10-29 10:46:43 -07:00