greg
6b316f28fb
Start from the current config file in Andromeda
...
Only changes:
Enable the new SQL schema that allows multiple vhosts in the same
database, move mod_muc config for kosmos.org to an append_host_config
directive
2019-03-27 12:56:46 +01:00
greg
ce4a4bffd9
Enable OMEMO for clients using Conversations
2019-03-27 11:57:59 +01:00
greg
70fb97ba4b
Add the admin_update_sql module
...
This allows to upgrade from the old database schema to the new one that
works for multiple virtual hosts:
https://blog.process-one.net/ejabberd-18-03/
ejabberdctl update_sql
2019-03-27 10:35:12 +01:00
greg
6833c23a01
Replace host_config with append_host_config
...
This was causing only the mod_muc module to be enabled for kosmos.org
See the Virtual Hosting section of the docs
https://docs.ejabberd.im/admin/configuration/
2019-03-26 15:52:11 +01:00
greg
c3da352458
Create the hook subfolders too
2019-03-26 15:23:58 +01:00
greg
20e0bb6983
Add the max_user_conferences setting for mod_muc
2019-03-26 15:22:50 +01:00
greg
3047dbe99f
Fix botched merge
2019-03-19 19:41:26 +01:00
greg
ec58597320
Set up Let's Encrypt for the kosmos.org ejabberd server
2019-03-19 16:27:46 +01:00
greg
39f23dd373
Move the version and checksum to attributes
2019-03-19 16:26:49 +01:00
greg
2cd85afb28
Update ejabberd to 19.02
2019-03-19 10:48:34 +01:00
greg
18b12a1dc4
Set the ejabberd postgresql user from an encrypted data bag
2019-03-19 10:48:34 +01:00
greg
b5bd389e77
Set postgresql password from an encrypted data bag
2019-03-19 10:43:14 +01:00
greg
5ad24888ff
Add our kosmos.org accounts as admins
2019-03-19 10:43:13 +01:00
greg
712507bed2
Get rid of the 5apps.com config for now
2019-03-19 10:43:13 +01:00
greg
8e052ab53a
Add the kosmos-postgresql and ejabberd backup recipes
2019-03-19 10:43:13 +01:00
greg
a9d1b38f15
Update the postgresql cookbook
2019-03-19 10:43:13 +01:00
greg
32c4896eb7
Add a recipe that sets up backups for ejabberd
2019-03-19 10:43:13 +01:00
greg
39821ad253
Update the ipfs cookbook
2019-03-19 10:43:10 +01:00
greg
28b4193982
Add a dependency on the backup cookbook
2019-03-19 10:41:25 +01:00
greg
b5d76f7eaa
Get rid of the deprecated set_unless
2019-03-19 10:41:25 +01:00
greg
2a4940b361
Install Ruby in the backup cookbook
...
Also switch to the 5.0 beta version, it works with modern Rubies
2019-03-19 10:41:23 +01:00
greg
3a8a2b6be0
Switch the config to the latest version without comments
...
Taken from the 18.12.1 default config
2019-03-19 10:38:34 +01:00
greg
aa64456fc7
Reload ejabberd when the config file changes
2019-03-19 10:38:34 +01:00
greg
70c4419c2a
Add initial kosmos-postgresql cookbook
...
This is to install PostgreSQL all in one place instead of for each
service that needs it (Mastodon, ejabberd, ...)
2019-03-19 10:38:34 +01:00
greg
c861c73025
Initial kosmos-ejabberd cookbook
...
No Let's Encrypt cert generation recipe for now
Hardcoded PostgreSQL password too
2019-03-19 10:38:34 +01:00
greg
5fa0fa661b
Install certbot from the direct download when on 15.04
...
It does not have a ppa release. Add a cron job for renewal. When using
the PPA a Systemd timer is part of the package
2019-03-18 16:52:05 +01:00
greg
17f1b2a20a
Create a nginx_certbot_site resource to remove duplication
...
It creates a folder, the nginx vhost for certbot and HTTP redirects, and
also runs certbot and recreates the nginx vhost that includes the TLS
cert
2019-03-15 19:03:28 +01:00
greg
b30dcab4da
Remove an IPFS port from the ejabberd firewall
2019-03-15 12:30:56 +01:00
greg
c3135402ad
Move the nginx hook to the deploy directory, create renewal-hooks dir
2019-03-14 20:21:34 +01:00
greg
f50f48b55b
Remove the old deploy hook, we moved it to the certbot config dir
2019-03-14 18:07:52 +01:00
greg
a978f2a6a5
Fix the path to the Gandi DNS certbot script
2019-03-14 18:06:55 +01:00
greg
f12ddefec8
Move the Gandi DNS hook for certbot to the kosmos-base cookbook
2019-03-14 18:01:29 +01:00
greg
65482f09c3
Extract the post hooks to their own script in Certbot's config dir
2019-03-14 15:21:50 +01:00
greg
36e046ea73
Run certbot using the binary provided by the Ubuntu PPA
2019-03-14 10:52:44 +01:00
greg
fa27187f11
Switch from the git version of certbot to the Ubuntu PPA
2019-03-14 10:49:47 +01:00
greg
fc265014de
Switch back to the upstream nginx cookbook
...
chef_nginx is deprecated
2019-03-14 10:35:11 +01:00
greg
566e4278fd
Update the ipfs cookbook
2019-03-13 15:11:02 +01:00
greg
fee449f347
Set the ipfs user's shell to bash
2019-03-13 11:00:21 +01:00
greg
b661f6780c
Update chef, berkshelf and knife-solo gems
2019-02-26 14:51:56 +01:00
greg
886958270f
Set REDIS_URL for botka
...
It was using the same Redis key to write its brain as hal8000 (`hubot:storage`),
causing scores to not be persisted to Redis. Right now botka is only
saving the online users to the database. It looks like this was only
enabled recently, as the last saved score was from Feb 8
Fixes #14
2019-02-25 18:29:18 +01:00
greg
5fc158cb5e
Install the latest version of the backup gem
2019-02-25 18:28:55 +01:00
greg
2e1cdbecc6
Update the ipfs cookbook
2019-02-25 12:57:11 +01:00
greg
33b8b39be2
Update ipfs and ipfs-cluster
2019-02-25 12:50:07 +01:00
greg
56d14748f9
Fix the Let's Encrypt renew hook script
...
Only copy over the certs to the prosody directory if it's the 5apps.com
wildcard, not for any 5apps.com subdomain
2018-12-20 17:26:37 +01:00
greg
74a1f1b8a1
Update the ipfs cookbook to the latest version
2018-12-11 10:46:21 +01:00
greg
32b89422e7
Merge branch 'feature/5apps_xmpp_certs' into 'master'
...
Automatically generate a Let's Encrypt cert for all 5apps xmpp domains
See merge request kosmos/chef!8
2018-12-03 16:32:25 +00:00
greg
9c97cb4a58
Remove empty environment
2018-12-03 16:53:41 +01:00
greg
1e3f84ed9b
Merge branch 'master' into feature/5apps_xmpp_certs
2018-12-03 16:52:26 +01:00
greg
c1ea7d347d
Merge branch 'bugfix/27-backup_notifications' into 'master'
...
Fix backup gem notifications failing
Closes #27
See merge request kosmos/chef!13
2018-11-09 17:07:22 +00:00
greg
ffc6858dcc
Do not pass the password on the command line anymore to fix a warning
...
Since email notifications work now we do not want warnings. Write an
option file with the credentials for mysqldump
(https://dev.mysql.com/doc/refman/5.7/en/option-files.html )
2018-11-09 14:08:32 +01:00
greg
7073e5d574
Fix backup gem notifications failing
...
This was caused by a bogus PATH that did not include /usr/sbin. The root
user's default PATH includes that, so /usr/sbin/sendmail provided by
postfix is in it
Fixes #27
2018-11-09 14:08:32 +01:00
greg
81c68a9609
Merge branch 'master' into feature/5apps_xmpp_certs
2018-11-08 14:13:09 +01:00
greg
bb7dc26f43
Run IPFS Cluster on dev too
2018-10-26 18:30:13 +02:00
greg
d65de56412
Add IPFS Cluster support
...
See merge request kosmos/chef!7
2018-10-26 16:29:40 +00:00
greg
3ce78a9ef4
Merge branch 'master' into feature/25-ipfs_cluster
2018-10-26 17:54:05 +02:00
greg
edfe891f48
Add the kosmos-ipfs::letsencrypt recipe to Andromeda
...
It has been extracted from the ipfs-kosmos::default recipe
2018-10-26 17:51:16 +02:00
greg
5e973b6875
Use the kosmos-ipfs recipe in the hal8000 recipe
...
This changes the port to not conflict with hubot and sets the gateway to
be writable
2018-10-26 17:49:06 +02:00
greg
a7871770b8
Remove an unnecessary require and letsencrypt recipe
...
This way kosmos-ipfs::default can be used without adding the Let's
Encrypt certificate
2018-10-26 17:46:47 +02:00
greg
4c7dc764a4
Add the updated Berksfile.lock
2018-10-26 17:06:03 +02:00
greg
f0542bdf2e
Update the ipfs cookbook
2018-10-26 17:02:30 +02:00
greg
4a42fc4ae3
Merge branch 'master' into feature/25-ipfs_cluster
2018-10-26 16:46:44 +02:00
greg
4dff379065
Merge branch 'feature/s3_oncall' into 'master'
...
Set the S3 credentials to write the new oncall file
See merge request kosmos/chef!12
2018-10-26 13:08:15 +00:00
greg
d236d138dc
Set the S3 credentials to write the new oncall file
2018-10-26 13:38:12 +02:00
greg
293d1a8a8a
Fix formatting
2018-10-04 18:59:30 +02:00
greg
8da7ebbef0
Add initial docs for ejabberd
2018-10-04 18:56:35 +02:00
greg
185649a5f9
Automatically generate a Let's Encrypt cert for all 5apps xmpp domains
...
Uses the Gandi LiveDNS API
2018-09-04 17:38:17 +02:00
greg
e6a3460a2c
Make the number of sidekiq threads configurable, bump to 25
2018-09-03 19:11:42 +02:00
greg
1f528a832d
Add a role to set up a cluster node with TLS
2018-08-16 16:01:24 +02:00
greg
f626131868
Build a cluster node on Andromeda
2018-08-16 16:00:44 +02:00
greg
2f87e7c07c
Add the ability to override the IPFS port that nginx connects to
...
This allows us to use the API proxy from the cluster
2018-08-16 15:59:44 +02:00
greg
f31322ab81
Move the firewall rule for ipfs p2p to the right recipe
2018-08-16 15:59:06 +02:00
greg
741c4a5192
Move the ipfs cookbook to its own GitHub repository
2018-08-13 12:05:50 +02:00
greg
de32a7c595
Remove the Let's Encrypt recipe from the default one
...
We only need one node with a TLS cert
2018-08-13 12:05:11 +02:00
greg
b36e6a718a
Add a recipe that sets up the cluster and enables the firewall
2018-08-13 12:05:00 +02:00
greg
7a8042e356
Add initial IPFS Cluster support
...
It uses an encrypted data bag to store the cluster secret that has to be
the same on all members of a cluster. It installs ipfs-cluster-service
and ipfs-cluster-ctl and starts the cluster
Refs #25
2018-08-06 18:05:44 +02:00
greg
d0f2275ebb
Fix the ipfs config
...
The whole thing was inconsistent and didn't work when creating a server
from scratch
2018-08-06 12:14:20 +02:00
greg
7165bf49c6
Add missing recipe, used to set up andromeda's firewall rules
2018-06-07 12:33:38 +02:00
greg
08172b7e04
Add node file for andromeda server
2018-04-17 18:55:48 +02:00
greg
44625ee017
Don't connect to IPFS through localhost in hal8000
...
Use the new IPFS node on the new server
2018-04-17 18:52:35 +02:00
greg
11db96b3a1
Update IPFS to the latest release
...
Also fix the ipfs config
2018-04-17 18:51:53 +02:00
greg
b4624cf2aa
Don't set the default variable to a type that's not allowed
2018-04-17 16:08:30 +02:00
greg
b35c4bc097
Update Chef version
2018-04-17 16:08:15 +02:00
greg
14ad962f37
Add missing cookbook files
2018-04-17 16:05:39 +02:00
greg
b92cc6e5d7
Update apt cookbook
2018-04-17 13:43:22 +02:00
greg
6a86fc64fa
Add configuration for knife-solo
...
Disable Berkshelf integration and set the version of Chef to install on
the server
2018-04-17 13:42:38 +02:00
greg
a35867f3d9
Update build-essential cookbook
2018-04-17 13:31:28 +02:00
greg
dd47030301
Update firewall cookbook
2018-04-17 13:27:35 +02:00
greg
c3933012dd
We install nodejs from package, update paths
2018-04-17 13:19:23 +02:00
greg
d26d2e17fd
Install nodejs from packages instead of building from source
2018-04-17 13:19:03 +02:00
greg
bd71418ec2
Changes for the new sudo cookbook
2018-04-17 13:18:36 +02:00
greg
157ccdc8b7
Update nodejs, sudo and users cookbooks
2018-04-17 13:18:09 +02:00
greg
ff2f424ddb
Update poise-archive and poise-service cookbooks
2018-04-17 12:24:17 +02:00
greg
90bb872305
Update poise-javascript and poise-ruby cookbooks
2018-04-17 12:21:48 +02:00
greg
d3aa94aab5
Switch from Batali to Berkshelf to manage upstream cookbooks
2018-04-17 12:16:20 +02:00
greg
0c80aaabd4
Update Node to the latest LTS release (8.11.1)
2018-04-06 14:02:59 +02:00
greg
36813b38d6
Remove wordpress from the dev node
2018-03-20 16:09:19 +01:00
greg
8653a8fa97
Use jemalloc1 on Puma and Sidekiq to lower the memory usage
...
More details:
https://www.speedshop.co/2017/12/04/malloc-doubles-ruby-memory.html
2018-03-20 16:07:55 +01:00
greg
b8853a1b5d
Install lua-dbi-sqlite3 and set the prosody version
2018-03-20 16:06:28 +01:00
greg
6ae27293ce
Set the number of ActiveRecord DB pools to 50 in the Sidekiq service
2018-02-28 15:11:22 +01:00
greg
aaabeee1fb
Remove extra empty external-scripts that disabled modules for botka
2017-10-27 10:34:48 +02:00