9ec1fe1db4
Merge pull request 'Add PostgreSQL primary server support to the mastodon cookbook' ( #187 ) from feature/186-postgresql_primary_mastodon into master
2020-07-07 15:45:54 +00:00
Greg Karékinian
4583421597
Connect to the PostgreSQL primary server instead of localhost
...
Move the db and user creation to its own recipe
Refs #186
2020-06-26 15:22:14 +02:00
Greg Karékinian
004a6913b4
Remove dependency to an old PostgreSQL in the Systemd unit
...
Refs #186
2020-06-26 15:22:05 +02:00
6adb910e1b
Merge pull request 'Chef base role improvements' ( #184 ) from feature/unattended_upgrades_and_vim into master
2020-06-22 13:07:20 +00:00
f55fc71765
Merge pull request 'Bootstrap draco.kosmos.org' ( #185 ) from feature/175-draco_bootstrap into master
2020-06-22 13:06:41 +00:00
Greg Karékinian
fb8687b63c
Add the postgresql_replica role to draco
2020-06-19 17:33:06 +02:00
Greg Karékinian
f7dfffd967
Add the kosmos_encfs recipe to draco
2020-06-19 17:33:06 +02:00
Greg Karékinian
8386dae46f
Add the new Hetzner server, draco.kosmos.org
2020-06-19 17:33:06 +02:00
Greg Karékinian
84cf008bac
Install vim
2020-06-19 17:30:02 +02:00
Greg Karékinian
b4357df471
Enable unattended-upgrades (security and updates repositories)
...
... with email notifications on failure and logging with syslog
2020-06-19 17:30:02 +02:00
Greg Karékinian
e7edb5a464
Update apt to 7.3.0
...
It now includes unattended-upgrades support
2020-06-19 17:30:02 +02:00
1b84009958
Merge pull request 'Add PostgreSQL primary support to the kosmos-ejabberd cookbook' ( #181 ) from feature/180-ejabberd_pg_primary into master
2020-06-19 14:46:52 +00:00
01f8af6e38
Merge pull request 'Set the Gitea root URL to HTTPS' ( #183 ) from bugfix/182-gitea_root_url into master
2020-06-15 12:39:29 +00:00
Greg Karékinian
5e483240c3
Set the Gitea root URL to HTTPS
...
It fixes U2F security keys support, that was broken because the protocol
did not match
Fixes #182
2020-06-12 17:22:34 +02:00
Greg Karékinian
ee9c241a4d
Add a postgresql_client role
...
The role is empty but is used to explicitly define servers that have
access rights to all PostgreSQL databases and users
2020-06-12 16:54:58 +02:00
Greg Karékinian
6f696d7634
Define access rules in the PostgreSQL primary recipe
...
Access is done for the IP of a server for all users and all databases
for ejabberd and gitea
2020-06-11 18:20:04 +02:00
Greg Karékinian
26097a7584
Use the correct database name for the access rights
2020-06-11 09:00:50 +02:00
Greg Karékinian
1a6ce44758
Create a minimalist ejabberd role for development
...
No Let's Encrypt, no backups
2020-06-10 18:43:34 +02:00
Greg Karékinian
2c21d6255b
Add PostgreSQL primary support to the kosmos-ejabberd cookbook
...
* Move the PostgreSQL user and database creation to a pg_db recipe
* Generate access rights for the ejabberd servers in the pg_db recipe
* Connect to the PostgreSQL primary instead of localhost
Refs #180
2020-06-10 18:38:40 +02:00
Greg Karékinian
091a46e972
Do not pass the pgsql_password variable to ejabberd.yml
...
The password is only used in the config files for the vhosts
2020-06-10 18:37:36 +02:00
81403b7cb9
Merge pull request 'Fix PostgreSQL replica config with encrypted data directory' ( #179 ) from bugfix/postgres_issues into master
2020-06-10 14:04:58 +00:00
Greg Karékinian
a0db6adaf2
Pass the data_directory to the postgresql_server_conf resource
...
Previously we were passing it as an additional config, but it is set by
default. The last value was used, the custom one, so the server still
used the correct file
2020-06-10 14:41:07 +02:00
Greg Karékinian
e3e726097f
Do not enable the postgresql@12-main service
...
We want it to run only once the encrypted data directory has been
mounted
2020-06-10 14:41:07 +02:00
Greg Karékinian
dba6629869
Use the attribute from the encfs recipe for the data directory
2020-06-10 14:41:03 +02:00
Greg Karékinian
229e9cfbd2
Add the kosmos_encfs recipe to centaurus
2020-06-10 14:40:01 +02:00
d88d3b07a5
Merge pull request 'Encrypt PostgreSQL data directory' ( #166 ) from feature/pg_encfs into master
2020-06-08 15:02:58 +00:00
b662c04183
Finish initial encfs cookbook and postgres adaptations
2020-06-08 17:01:24 +02:00
379161eb1e
Fix postgres installation
...
Also, do not start at boot anymore, in favor of path-based activation.
2020-06-07 12:47:06 +02:00
353f2c13f1
Improve encfs cookbook
...
Fix some things, and prepare for path-based activation. Also, comment
the buggy initial dir creation and explain manual provisioning in README
for now.
2020-06-07 12:45:33 +02:00
8918452fc5
Use latest postgresql fork
2020-06-07 12:40:39 +02:00
501626de1f
Add encfs to Vagrantfile
2020-06-07 12:30:00 +02:00
4fe0e913f8
Use our own fork of the postgresql cookbook
2020-06-07 12:29:34 +02:00
bd99b76287
Use human-readable flag for encfs mount script
...
In case someone wants to see what it does without reading a manual in
the future.
2020-06-06 12:24:08 +02:00
Greg Karékinian
1e60722ec4
Create an initial encfs cookbook
...
Usage: Add the kosmos_encfs::default recipe to the run list of a node.
Creating the encrypted directory will keep it mounted. After a reboot,
start the encfs service and enter the password:
```
$ systemctl start encfs
encfs password:
```
For now postgresql@12-main is a hardcoded dependency of the encfs
Systemd unit that is automatically started once the user inputs the
correct password. This list of dependency will need to be different for
every server, based on the services it is running
2020-06-04 19:50:20 +02:00
Greg Karékinian
eded62a3ec
Merge branch 'master' into feature/pg_encfs
2020-06-04 15:13:53 +02:00
db4792e836
Merge pull request 'Gitea fixes' ( #174 ) from bugfix/147-gitea_fixes into master
2020-06-02 14:24:11 +00:00
Greg Karékinian
ccd49aefa4
Add Gitea to the run lists for Andromeda and Centaurus
2020-06-02 16:19:21 +02:00
Greg Karékinian
759fa52e03
Enable the certbot resource
2020-06-02 16:19:05 +02:00
Greg Karékinian
0f10723c81
Enable secure cookies
2020-06-02 16:18:48 +02:00
Greg Karékinian
55865c526c
Add the Let's Encrypt hook dir to the config
...
Only enabled when there is no TLS cert. This is already part of the
certbot nginx vhost
2020-06-02 16:17:34 +02:00
Greg Karékinian
0c502580c2
Fix the condition for the Let's Encrypt cert in the template
...
The line contained an extra !
2020-06-02 16:16:30 +02:00
Greg Karékinian
27845525da
Use the same JWT_SECRET as on our previous Gitea
...
A different one breaks 2FA
2020-06-02 12:12:59 +02:00
Greg Karékinian
c8e50fd226
Install git, it is a required dependency for Gitea
...
I didn't catch it because git is installed by default in the Vagrant box
I used to write the cookbook
2020-06-02 11:41:19 +02:00
Greg Karékinian
2d6c514257
Add the gitea role
2020-06-02 11:22:10 +02:00
8342298c89
Merge branch 'feature/147-gitea_cookbook' of kosmos/chef into master
2020-06-02 09:16:37 +00:00
Greg Karékinian
94330f2052
Comment out the COOKIE_SECURE config for now
...
We will enable it again after we have a valid TLS cert generated with
Let's Encrypt. It prevents logins using http, and we will need that as
an admin account
2020-05-28 18:43:31 +02:00
Greg Karékinian
baaae695af
Merge branch 'master' into feature/147-gitea_cookbook
2020-05-28 15:44:44 +02:00
5b2d4f269d
Merge branch 'bugfix/171-letsencrypt_resource' of kosmos/chef into master
2020-05-26 15:25:27 +00:00
Greg Karékinian
baa0739936
Add the backup recipe
...
Also move the Gitea data dir to an attribute
2020-05-26 15:21:26 +02:00
Greg Karékinian
3332a1b2e8
Write initial README
2020-05-26 15:21:07 +02:00