Commit Graph
100 Commits
Author SHA1 Message Date
greg 3be9b2fb44 Update yarn to the latest version 2019-09-27 10:57:58 +02:00
greg 438c5ff72d Fix the services restarting every time the recipe is executed
* Manually send a restart action from the application_git resource
* Do not depend on application_ruby anymore
2019-09-27 10:57:35 +02:00
greg 4b39ea60dd Set the NODE_ENV variable when running yarn
The assets precompilation task runs yarn with NODE_ENV=production,
before this change yarn would install a different set of packages, with
this change the run from the assets precompilation is idempotent
2019-09-27 10:55:32 +02:00
greg b1cfa6f6f7 Install Java for Elasticsearch
It was missing from the recipe
2019-09-27 10:51:26 +02:00
greg dace5672e4 Move the java heap size to an attribute 2019-09-27 10:50:56 +02:00
greg 9d68d3c4da Link to the new ops Mastodon account 2019-09-19 16:02:41 +02:00
greg cd9a7dd3dc Use the new kosmos.chat MUC domain on the maintenance page 2019-09-19 16:00:01 +02:00
greg f49dd5e6d4 Switch the MUC host for kosmos.org to kosmos.chat 2019-09-19 15:58:53 +02:00
greg 544f4b78f4 Change the MUC domain for the kosmos.org XMPP server to kosmos.chat 2019-09-19 15:57:54 +02:00
greg 4685b16573 Add kosmos.chat to the list of Kosmos XMPP domains with a TLS cert 2019-09-19 15:56:49 +02:00
greg 2ecc128abd Move the hidden service attributes to the attributes file
When it is set in the recipe the hidden service dir doesn't get set
correctly (nil), resulting in a broken torrc file
2019-09-11 13:47:42 +02:00
greg fdb4353ac0 Raise the memory limit for Elasticsearch 2019-09-11 11:21:10 +02:00
greg 245392c4ad Install Elasticsearch 6.8.2
Version 7 isn't compatible with Mastodon yet
2019-09-10 12:29:24 +02:00
greg efa958a374 Merge branch 'master' into feature/96-elasticsearch_mastodon 2019-09-09 16:20:46 +02:00
greg 039da3d35a Install Elasticsearch and enable it in Mastodon
Refs #96
2019-09-06 17:26:06 +02:00
greg dfa709c9df Update nginx to 1.17.3, enable TLS 1.3
Uses the current intermediate recommended config from
https://ssl-config.mozilla.org

Closes #92
2019-08-30 11:57:38 +02:00
greg 1eaffd1309 Update go-ipfs to 0.4.22
Part of the 0.4.1 version of the ipfs cookbook

Closes #85
2019-08-14 13:04:08 +02:00
greg 0fa9e6cbb7 Set the uploads dir inside of /opt/ejabberd instead of /var/www
/var/www is intended for nginx/apache

I have copied over the old directories manually on Andromeda before
running this code

Fixes #80
2019-07-19 12:47:42 +02:00
greg ab09dd81b4 Update the ipfs cookbook to 0.4.0 2019-07-05 16:02:23 +02:00
greg 666ba1e6f6 Override node attributes for andromeda and barnard 2019-07-05 15:39:47 +02:00
greg 9c8befc179 Move attributes from the ipfs cookbook to kosmos-ipfs
The default attributes set in the ipfs cookbook do not include
attributes that are specific to Kosmos anymore
2019-07-05 15:38:30 +02:00
greg cf4e567dcb Get rid of the letsencrypt recipe
Its content has been moved to the public_gateway recipe
2019-07-04 10:24:33 +02:00
greg 80526e3396 Switch to our own fork of the poise-javascript cookbook
Includes passing the `--no-audit` switch to `npm install` to prevent the
`npm_install` resource to consider the command resulted in changes,
causing the service to restart at every Chef run. npm returns the
expected string "up to date" when not performing the security audit

Closes #5
2019-06-21 17:36:18 +02:00
greg 3a693efcd6 Add email notifications for failed certbot runs
Based on https://wiki.archlinux.org/index.php/Systemd/Timers#MAILTO

This can easily be used by other services, with one line added to the
[Unit] section of a service:

OnFailure=status-email-ops@%n.service

Refs #3
2019-06-20 12:46:27 +02:00
greg b01985ec4f Fix the permissions for the ejabberd upload folders 2019-06-14 16:38:49 +02:00
greg 283f623fee Add mastodon role 2019-06-14 15:49:29 +02:00
greg 339f32c957 Simplify the instructions to get the cluster secret 2019-05-28 13:05:52 +02:00
greg 7905ed4402 Remove unused staging node 2019-05-21 15:00:01 +02:00
greg aa79297387 Remove unused data bags and cookbooks 2019-05-21 14:58:01 +02:00
greg b10c53cce8 Remove the database and mysql2_chef_gem cookbooks 2019-05-21 14:57:29 +02:00
greg 12ab8dc33b Stop depending on the mysql cookbook to install mysql-server
The mysql cookbook is completely broken on 18.04 (both the released version
and the current master, in different ways). Keep it simple and just run
mysql commands
2019-05-20 18:50:28 +02:00
greg 61959248f3 Run sockethub on barnard 2019-05-16 00:08:15 +02:00
greg 6a0ab0f375 Remove dev server 2019-05-15 13:23:29 +02:00
greg cdcec7d990 Remove sockethub from andromeda 2019-05-15 13:23:12 +02:00
greg 63f9c31632 Add the ejabberd role to andromeda 2019-05-14 17:11:18 +02:00
greg 4cc5f3e6d1 Remove the XMPP firewall rules for andromeda
They are part of the kosmos-ejabberd cookbook now
2019-05-14 17:10:33 +02:00
greg 5106ba20fd Add the version to the dpkg package to allow updates 2019-05-14 17:10:15 +02:00
greg d398c167ca Allow to pass extra attributes to backup PostgreSQL databases 2019-05-14 16:39:21 +02:00
greg c9547582b7 Add a role for the ejabberd server
Includes the backup, letsencrypt and default recipe
2019-05-14 15:18:05 +02:00
greg f81b7c82de Backup the 5apps ejabberd database and uploads dir 2019-05-14 15:16:28 +02:00
greg bd9491675f Add the missing sql schema 2019-05-14 15:10:07 +02:00
greg 902a013dca Restart the service when the systemd unit changes 2019-05-14 12:18:22 +02:00
greg 44faa1a8df Change the PostgreSQL password for the ejabberd user 2019-05-14 11:40:21 +02:00
greg 0be63e5935 Fix the config file when no TLS certs exist 2019-05-14 11:31:42 +02:00
greg bd720b0189 Use the regular SQL schema (not the new one for all vhosts into one db) 2019-05-14 11:24:08 +02:00
greg d9390a4b92 Don't use a concatenated cert for kosmos.org anymore 2019-05-13 18:53:45 +02:00
greg 5d1aeb7b68 Create a cert for 5apps.com and improve the renewal script 2019-05-13 18:52:39 +02:00
greg 88204ea91b Update the config to the current one running on andromeda 2019-05-13 17:59:04 +02:00
greg ad23530653 Add the firewall rules for ejabberd
Includes the missing 5223 port in the andromeda_firewall recipe too
2019-05-13 17:08:21 +02:00
greg b44a226753 Fix the postgresql setup for the ejabberd cookbook
Create a ejabberd user with a password from an encrypted data bag
2019-05-10 11:43:52 +02:00
greg 3884f9922e Merge branch 'master' into feature/7-ejabberd_rebased_2 2019-05-10 11:08:09 +02:00
greg 6b38396c3c Remove the 5apps hubots from dev 2019-05-08 17:53:36 +02:00
greg ba8b73a4dd Add mastodon to andromeda 2019-05-08 17:00:23 +02:00
greg 1e7f21bd41 Remove the mastodon recipes from dev 2019-05-08 17:00:07 +02:00
greg 90815bb274 Fix the postgresql credentials for the backup attributes 2019-05-08 16:58:47 +02:00
greg 7271065c5b Add names to the execute resources 2019-05-08 16:58:31 +02:00
greg 81192f7277 Fix the backup config format to work with backup 5 2019-05-08 12:26:47 +02:00
greg c4d5a2c6bb Remove the ipfs cluster recipe from dev's run list 2019-05-07 14:57:47 +02:00
greg 36e8950eba Update ipfs again, to fix a bug in the ipfs_config resource
It could not handle integers
2019-05-07 14:56:40 +02:00
greg 14f0fbc7be Use the last commit of the ipfs PR 2019-05-07 14:41:57 +02:00
greg 4b0818177d Use an unreleased version of our ipfs cookbook to lower RAM usage 2019-05-07 14:35:53 +02:00
greg 4fe3b8e8e7 Move botka and hal8000 from dev to barnard
Refs #51
2019-05-07 14:10:07 +02:00
greg 37aa87df5e Add a missing dependency on the zlib1g-dev for the backup gem
Fixes #56
2019-05-03 10:58:39 +02:00
greg 5bb34554a7 The nginx_certbot_site resource does nothing in the dev environment
No need to check for the environment in recipes that use the resource

Closes #54
2019-05-03 10:55:02 +02:00
greg 64a3444c40 Use the kredits_github role on barnard
This sets up the app and its nginx reverse proxy
2019-05-02 12:40:38 +02:00
greg 9284b4fe85 Add the missing kredits-web::nginx recipe for barnard
This was causing the firewall rules for ports 80 and 443 to be deleted

Refs #35
2019-05-02 11:33:53 +02:00
greg 21987c502e Add initial instructions for joining the IPFS cluster
Refs #4
2019-04-30 17:18:43 +02:00
greg 61607f77c4 Update ipfs-cluster to 0.10.1
ipfs-cluster-ctl commands such as `pin rm` now work

Closes #48
2019-04-30 12:58:10 +02:00
greg 696d7cd561 Set up kosmos-hubot to use ipfs-cluster
That way a new document will be added and pinned on all members of the
cluster

Fixes #46
2019-04-26 16:54:02 +02:00
greg ed8a8f1225 Update the ipfs cookbook to set a maximum number of files
The default is too low and was treated like a low disk space alert by
ipfs and ipfs-cluster, set it to 64000

Closes #44
2019-04-26 15:58:37 +02:00
greg c186ebf703 Update go-ipfs to 0.4.20
https://github.com/ipfs/go-ipfs/blob/v0.4.20/CHANGELOG.md
2019-04-25 19:20:16 +02:00
greg 2cf611279b Make the systemd unit for kredits-github not world readable
This way the environment variables are kept secret. Only root can read
`/proc/$ID/environ`
2019-04-23 14:12:55 +02:00
greg f5051d6352 Revert "Move the environment variables to an EnvironmentFile"
This reverts commit 79023a65f2.
2019-04-23 14:12:16 +02:00
greg ecf5870195 Only add the Let's Encrypt set up when not in the dev environment 2019-04-23 11:41:12 +02:00
greg 79023a65f2 Move the environment variables to an EnvironmentFile 2019-04-23 11:40:33 +02:00
greg 451d182ca9 Add kredits_github role for the node app and the nginx vhost 2019-04-23 11:30:59 +02:00
greg fabbe398a2 Remove the nginx recipe inclusion and the dependency on nginx in the service
The nginx vhost should be set up after the app is deployed. The node app
doesn't need nginx to run
2019-04-23 11:28:23 +02:00
greg 1d0f66adc4 Remove an unused dependency on the firewall cookbook 2019-04-23 11:25:16 +02:00
greg 47d2ebe409 Add missing firewall rule for botka on freenode 2019-04-23 11:15:06 +02:00
greg bafa24351a Remove firewall rule that is already defined 2019-04-23 11:14:33 +02:00
greg 3b2a3bf3fa Replace reference to sockethub, remove comment that's not relevant 2019-04-23 10:33:31 +02:00
greg 94cb7c8e20 Add the id endpoint to our IPFS reverse proxy 2019-04-18 11:00:22 +02:00
greg b45430f63a Set permissions for the upload folder 2019-04-17 11:22:12 +02:00
greg 0e379644c5 MIT license for the kosmos-ejabberd cookbook 2019-04-17 10:30:29 +02:00
greg 1b770c0e95 Set up Let's Encrypt for the kosmos.org ejabberd server 2019-04-17 10:14:50 +02:00
greg 4519f2fe36 Add the kosmos-postgresql and ejabberd backup recipes 2019-04-17 10:14:50 +02:00
greg 80449ccbeb Add a recipe that sets up backups for ejabberd 2019-04-17 10:14:50 +02:00
greg 9346188ca7 Initial kosmos-ejabberd cookbook 2019-04-17 10:11:52 +02:00
greg 6da6d2a2bf Add the kosmos-btcpayserver nginx reverse proxy to andromeda 2019-04-15 10:54:35 +02:00
greg 6c7ec545ce Initial kosmos-btcpayserver cookbook setting up an nginx reverse proxy
Closes #19
2019-04-15 10:53:55 +02:00
greg d2142b046f Reload nginx immediately after enabling the Let's Encrypt vhost 2019-04-15 10:51:18 +02:00
greg cd00f4c049 Remove boilerplate from the CHANGELOG 2019-04-12 11:42:29 +02:00
greg 57d0885d26 Change the licenses of hte kosmos cookbooks to MIT 2019-04-12 11:41:20 +02:00
greg e65374c893 Add TODO prefix 2019-04-12 11:21:37 +02:00
greg 5a125982af Merge branch 'master' into chef_14 2019-04-11 18:23:23 +02:00
greg ba6e4220a1 Do not vendor cookbooks using Berkshelf anymore
Instead, use the Berkshelf support in knife-solo and the
vagrant-berkshelf plugin on Vagrant
2019-04-11 18:21:34 +02:00
greg 99fc183172 Do not vendor cookbooks using Berkshelf anymore
Instead, use the Berkshelf support in knife-solo and the
vagrant-berkshelf plugin on Vagrant
2019-04-11 18:16:28 +02:00
greg 67a2c1ea55 Fix the mastodon user variable 2019-04-10 16:38:57 +02:00
greg 4a6c1541ad Add the sockethub firewall rule for dev.kosmos.org 2019-04-10 16:34:25 +02:00
greg e0aa4c5b11 Move the firewall rule for sockethub to its own recipe 2019-04-10 16:33:56 +02:00