* Semi-automated using `ssf-formula` (v0.5.0)
* Fix (or ignore) errors shown below:
```bash
postgres-formula$ $(grep "\- yamllint" .travis.yml | sed -e "s:^\s\+-\s\(.*\):\1:")
./postgres/repo.yaml
4:2 error syntax error: found character '%' that cannot start any token
6:89 error line too long (110 > 88 characters) (line-length)
9:89 error line too long (95 > 88 characters) (line-length)
13:89 error line too long (104 > 88 characters) (line-length)
14:89 error line too long (106 > 88 characters) (line-length)
./postgres/defaults.yaml
3:1 warning missing document start "---" (document-start)
4:22 warning truthy value should be one of [false, true] (truthy)
5:16 warning truthy value should be one of [false, true] (truthy)
5:22 warning too few spaces before comment (comments)
20:10 warning truthy value should be one of [false, true] (truthy)
40:8 warning missing starting space in comment (comments)
41:89 error line too long (97 > 88 characters) (line-length)
71:11 error too many spaces after colon (colons)
72:12 warning truthy value should be one of [false, true] (truthy)
74:15 warning truthy value should be one of [false, true] (truthy)
85:6 warning missing starting space in comment (comments)
89:11 warning truthy value should be one of [false, true] (truthy)
90:24 warning truthy value should be one of [false, true] (truthy)
91:56 error too few spaces after comma (commas)
./postgres/codenamemap.yaml
3:2 error syntax error: found character '%' that cannot start any token
8:89 error line too long (98 > 88 characters) (line-length)
49:89 error line too long (110 > 88 characters) (line-length)
53:89 error line too long (99 > 88 characters) (line-length)
./postgres/osmap.yaml
1:2 error syntax error: found character '%' that cannot start any token
5:89 error line too long (115 > 88 characters) (line-length)
./postgres/osfamilymap.yaml
1:2 error syntax error: found character '%' that cannot start any token
57:89 error line too long (90 > 88 characters) (line-length)
58:89 error line too long (113 > 88 characters) (line-length)
134:89 error line too long (103 > 88 characters) (line-length)
135:89 error line too long (127 > 88 characters) (line-length)
205:89 error line too long (91 > 88 characters) (line-length)
206:89 error line too long (91 > 88 characters) (line-length)
pillar.example
3:1 warning missing document start "---" (document-start)
8:22 warning truthy value should be one of [false, true] (truthy)
13:16 warning truthy value should be one of [false, true] (truthy)
20:4 warning missing starting space in comment (comments)
21:4 warning missing starting space in comment (comments)
42:4 warning missing starting space in comment (comments)
65:4 warning missing starting space in comment (comments)
87:4 error syntax error: found character '%' that cannot start any token
test/salt/pillar/postgres.sls
4:2 error syntax error: found character '%' that cannot start any token
```
which control three things:
1. should we initialize?
2. if so, how?
3. what environment variables and user to use
The approach taken is very similar to what the Apache formula uses, namely:
a default dictionary which is over-ridden by:
os-specific defaults,
then os codename defaults,
then os finger defaults,
and finally user-specified pillar values
- this also adds support for grains['osfinger']
It is just a variant of init_db. A more correct solution would be to
support configuring a different initdb command while passing values from
the pillar by default like version. This would make it truly generic but
is probably not achievable given current pillar self-referencing
capabilities (ie. none).
Thus, I decided to make it OS family specific since Debian provides its
own tools to manage clusters, etc. Gentoo also has a specific way to
initialize a new cluster which does not fit with commands.initdb so
the current if/elif would be extended when support is added for Gentoo.
- Corrected inadvertent changes to postgres_user
- Fixed postgres_user
- Explicitly list the grain that we're filtering by even though it's
default
- Place *BSD user and runas into osmap instead of hardcoding