Commit graph

153 commits

Author SHA1 Message Date
Daniel Nagy
dbe8182e74
treewide: switch to port type for nixos modules 2022-12-01 22:30:00 +01:00
Jonathan Lorimer
4e502a1c4d
Update nixos/modules/services/databases/postgresql.nix
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2022-11-28 10:21:18 -05:00
Jonathan Lorimer
193aa6faf4
Add declarative role config to postgres.service
remove trailing whitespace

switch docs to markdown

use mdDoc

remove trailing whitespace

get rid of double space

add tests and update options to use submodule

remove whitespace

remove whitespace

use mdDoc

remove whitespace

make default a no-op

make ALTER ROLE a single sql statement

document null case
2022-11-28 09:44:46 -05:00
pennae
722b99bc0e nixos/*: convert options with admonitions to MD
rendering changes only slightly, most changes are in spacing.
2022-08-31 16:36:16 +02:00
pennae
9547123258 nixos/*: convert internal option descriptions to MD
we'll have to do it eventually, may as well be now.
2022-08-31 16:32:54 +02:00
pennae
ef176dcf7e nixos/*: automatically convert option descriptions
conversions were done using https://github.com/pennae/nix-doc-munge
using (probably) rev f34e145 running

    nix-doc-munge nixos/**/*.nix
    nix-doc-munge --import nixos/**/*.nix

the tool ensures that only changes that could affect the generated
manual *but don't* are committed, other changes require manual review
and are discarded.
2022-08-31 16:32:53 +02:00
pennae
6039648c50 nixos/*: automatically convert option docs 2022-08-19 22:40:58 +02:00
pennae
f1d39b6d61 nixos/postgresql: replace <function> with <literal>
there's only this one use, we can live with the tiny rendering change.
2022-08-19 22:40:58 +02:00
pennae
61e93df189 nixos/*: automatically convert option docs to MD
once again using nix-doc-munge (69d080323a)
2022-08-03 22:46:41 +02:00
pennae
3aebb4a2be nixos/*: normalize link format
make (almost) all links appear on only a single line, with no
unnecessary whitespace, using double quotes for attributes. this lets us
automatically convert them to markdown easily.

the few remaining links are extremely long link in a gnome module, we'll
come back to those at a later date.
2022-08-03 21:57:46 +02:00
pennae
16102dce2f nixos/*: replace <code> in option docs with <literal>
markdown can't represent the difference without another extension and
both the html manual and the manpage render them the same, so keeping the
distinction is not very useful on its own. with the distinction removed
we can automatically convert many options that use <code> tags to markdown.

the manpage remains unchanged, html manual does not render
differently (but class names on code tags do change from "code" to "literal").
2022-08-03 21:03:23 +02:00
pennae
2e751c0772 treewide: automatically md-convert option descriptions
the conversion procedure is simple:

 - find all things that look like options, ie calls to either `mkOption`
   or `lib.mkOption` that take an attrset. remember the attrset as the
   option
 - for all options, find a `description` attribute who's value is not a
   call to `mdDoc` or `lib.mdDoc`
 - textually convert the entire value of the attribute to MD with a few
   simple regexes (the set from mdize-module.sh)
 - if the change produced a change in the manual output, discard
 - if the change kept the manual unchanged, add some text to the
   description to make sure we've actually found an option. if the
   manual changes this time, keep the converted description

this procedure converts 80% of nixos options to markdown. around 2000
options remain to be inspected, but most of those fail the "does not
change the manual output check": currently the MD conversion process
does not faithfully convert docbook tags like <code> and <package>, so
any option using such tags will not be converted at all.
2022-07-30 15:16:34 +02:00
Ivan Kozik
96a8c0ac23 nixos/postgresql: use postgres 14 for 22.05
postgresql: alias to postgresql_14
2022-05-03 22:23:08 +00:00
ajs124
757dd008b2 postgresql_9_6: drop 2021-12-03 01:14:29 +01:00
Naïm Favier
2ddc335e6f
nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
Yuka
7d24d06c71
nixos/postgresql: use postgres 13 for 21.11 (#131018)
Co-authored-by: Kim Lindberger <kim.lindberger@gmail.com>
2021-07-24 19:12:08 +02:00
Richard Marko
29158fc0ac nixos/postgresql: fix description of ensureUsers.ensurePermissions
`attrName` and `attrValue` are now in correct order.
2021-05-17 18:03:04 +09:00
Mario Rodas
72ab382fb6 postgresql_9_5: drop
PostgreSQL 9.5 has reached EOL on February 11, 2021.
See https://www.postgresql.org/support/versioning/
2021-04-01 04:20:00 +00:00
Joe Hermaszewski
580d88efa0
services.postgresql: Improve example clarity
Although the quotes here aren't necessary, they may be if a user cargo-cults this example with a database name with hyphens (or other "unusual" characters).
2021-04-10 11:12:36 +08:00
Guillaume Girol
fe0e0afbc0
Merge pull request #92929 from symphorien/postgresql-check-config-file
nixos/postgresql: check config file syntax at build time
2021-04-02 16:27:03 +00:00
Jade
2df221ec8a
nixos/postgresql: fix inaccurate docs for authentication (#97622)
* nixos/postgresql: fix inaccurate docs for authentication

We actually use peer authentication, then md5 based authentication.
trust is not used.

* Use a link for mkForce docs

Co-authored-by: aszlig <aszlig@redmoonstudios.org>

Co-authored-by: lf- <lf-@users.noreply.github.com>
Co-authored-by: aszlig <aszlig@redmoonstudios.org>
2020-10-31 03:35:19 -04:00
Symphorien Gibol
1b7ca69ecc nixos/postgresql: check config file syntax at build time 2020-09-20 13:43:20 +02:00
Aaron Andersen
2a44265608 nixos/postgresql: replace extraConfig option with settings option 2020-08-26 17:06:48 -04:00
Aaron Andersen
8e045b42fd nixos/postgresql: move ExecStartPost into postStart 2020-08-15 16:59:53 -04:00
Aaron Andersen
ec82ae3c39 nixos/postgresql: run ExecStartPost as an unprivileged user 2020-08-15 16:59:49 -04:00
Pascal Bach
cee4e14bdf nixos/postgresql: fix setup script
The missing () caused parts of the escripts to be added to the
ExecStartPost line instead of inside the script.

This caused postgresql start to fail under certain conditions.
2020-08-06 19:47:17 +02:00
Aaron Andersen
f42f8a6d3c nixos/postgresql: replace deprecated usage of PermissionsStartOnly 2020-08-05 17:31:16 -04:00
Aaron Andersen
e50e89e1a8 nixos/postgresql: conditionally provision data directory with StateDirectory 2020-08-05 17:31:16 -04:00
Aaron Andersen
4f5fc729c7 nixos/postgresql: use a standard default value for dataDir 2020-08-05 17:31:12 -04:00
Eelco Dolstra
b7ddd316f1 postgresql: Use runuser instead of sudo
Currently, sudo doesn't work in a NixOS container running inside a Nix
build, because Nix's seccomp filter doesn't allow setuid programs. In
any case, runuser is a bit lower-overhead than sudo.
2020-05-15 00:25:27 +02:00
Linus Heckemann
85a0587884
Merge pull request #87219 from serokell/kirelagin/postgres-no-time
postgres: Do not log timestamp
2020-05-14 08:34:44 +02:00
Kirill Elagin
084bd32bad
postgresql: Fix formatting in option description
Co-authored-by: Mario Rodas <marsam@users.noreply.github.com>
2020-05-13 23:33:08 +03:00
Kirill Elagin
652958eefa postgres: Do not log timestamp
By default, postgres prefixes each log line with a timestamp. On NixOS
logs are written to journal anyway, so they include an external
timestamp, so the timestamp ends up being printed twice, which clutters
the log.

* Add a module option to change the log prefix.
* Set it to upstream default sans timestamp.
2020-05-08 00:13:20 +03:00
joachimschmidt557
dc78d14d65 nixos/postgresql: refactor enable option
More consistency with other modules (mkEnableOption)
2020-05-07 10:59:07 +02:00
gtgteq
c359c6959a
nixos/postgresql: Change local auth method from ident to peer (#80179) 2020-02-15 23:55:35 +02:00
Maximilian Bosch
6c63107872
nixos/manual: fix build 2020-02-15 19:18:06 +01:00
danbst
84535e0a47 let's not support group mode for versions pre-11.
The only fix is to change mode to 0700 before start, because otherwise postgresql
doesn't start, and error is non-obvious.
2020-02-14 19:16:34 +02:00
danbst
2c77c53487 Merge branch 'master' into postgresql_group 2020-02-14 19:00:52 +02:00
Christian Kampka
b85286fe66 postgresql: Quote role names when creating database users 2019-12-13 14:10:18 -06:00
danbst
e557ad74ac move from 19.09 to 20.03 2019-09-22 12:27:39 +03:00
danbst
fb863fceea nixos/postgresql: switch default 9.6 -> 11
This is designed for 19.09 release.
2019-09-21 10:18:56 +03:00
adisbladis
8e2fc57a80
postgresql_9_4: Remove package
It's only supported until February 13, 2020 which is during the 19.09 life cycle.
2019-09-07 15:31:27 +01:00
Craige McWhirter
169cb996c5 postgresql: improve identMap description
This patch provides example usage for identMap based upon PostrgeSQL documentation

@thoughtpolice
2019-09-05 12:28:21 -05:00
Edmund Wu
18d176dc20
nixos/postgresql: fix quoted queries 2019-08-09 15:11:24 -04:00
Danylo Hlynskyi
0730e81785
postgresql: running initdb from command line now works (#65309)
The issue was only with NixOS service, `postgresql` installed through
`nix-env` was not affected.

Fixes https://github.com/NixOS/nixpkgs/issues/23655
2019-08-07 14:17:36 +03:00
danbst
363ba3f403 change groupAccess to tristate, to not force chmod on dataDir.
Making mask either 0700 or 0750 is too restrictive..
2019-07-25 01:00:26 +03:00
danbst
e54ad9812b whoops 2019-07-25 00:17:01 +03:00
danbst
b643e0aee3 addressed review comments and some fixes 2019-07-24 23:34:21 +03:00
danbst
7e4e37fff4 postgresql: allow changing initidb arguments via module system
Closes https://github.com/NixOS/nixpkgs/issues/18829

+ some cleanups
2019-07-23 21:56:26 +03:00
danbst
92a015d35d nixos/postgresql: support 0750 for data directory
This is rework of part of https://github.com/NixOS/nixpkgs/pull/46670.
My usecase was to be able to inspect PG datadir as wheel user.

PG11 now allows starting server with 0750 mask for data dir.
`groupAccess = true` now does this automatically. The only thing you have to do
is to set group ownership.

For PG10 and below, I've described a hack how this can be done. Before this PR
hack was impossible. The hack isn't ideal, because there is short
period of time when dir mode is 0700, so I didn't want to make it official.

Test/example is present too.
2019-07-23 21:56:26 +03:00