606 Commits

Author SHA1 Message Date
cb8fc25fc8
Configure a zerotier-one network controller 2020-12-10 22:51:35 +01:00
a06223d764 Merge branch 'master' into feature/akkounts_xmpp_host 2020-12-10 13:27:37 +00:00
f1c8faff85 Merge branch 'master' into feature/api_permissions 2020-12-10 13:26:48 +00:00
Greg Karékinian
a92205bd65 Fix the VM creation script
Also join the zerotier network
2020-12-09 16:29:15 +01:00
Greg Karékinian
7ceb9af3ed Rename the kosmos_kvm default recipe to host
It makes it clear it is meant for KVM hosts
2020-12-09 11:19:13 +01:00
12125bf0b2
Add hosts entries for ejabberd private IPs 2020-12-08 20:31:01 +01:00
239b6aed51
Add API permissions for akkounts VMs
Using the zerotier IP, which is the same as the knife-zero host.
2020-12-08 20:00:31 +01:00
Greg Karékinian
6c907419aa Set the VM name from the script argument 2020-12-08 17:10:40 +01:00
Greg Karékinian
8f304d00ce Remove unused kitchen.yml files 2020-12-08 16:34:24 +01:00
Greg Karékinian
94a34e4758 Add arguments for RAM and number of CPUs 2020-12-08 16:33:27 +01:00
Greg Karékinian
b3c1f81ec6 Set the description of the kosmos_zerotier cookbook 2020-12-08 16:26:14 +01:00
Greg Karékinian
6f7b493173 Create the base Ubuntu 20.04 cloud image with code 2020-12-08 16:25:32 +01:00
Greg Karékinian
176083497c Install the libvirt-daemon-system package
It creates the libvirt-qemu user
2020-12-08 16:25:04 +01:00
Greg Karékinian
89c8f42a46 Set the description for the kosmos_kvm cookbook 2020-12-08 16:03:18 +01:00
56d9144ad6
Disable ACME
Throws a warning when reloading the config, because it is enabled by
default, but not configured entirely. Disabling it explicitly removes
the warning.
2020-12-08 14:30:29 +01:00
Greg Karékinian
ee7a117d63 Add initial kosmos_zerotier cookbook
For now it only includes the firewall rule

Refs #244
2020-12-04 16:29:22 +01:00
Greg Karékinian
e6b7794e20 Extract firewall definitions to their own recipe
This allows us to use them for KVM hosts as well. Until now we had set
up ufw rules manually on the two KVM hosts (draco and centaurus)

Refs #244
2020-12-04 16:27:42 +01:00
Greg Karékinian
9dbe5bcfcb Deploy a script to create new VMs
It uses `virt-install` with the official Ubuntu 20.04 cloud image as a
starting point, with cloud-init to add our SSH keys to the ubuntu user
and set up Zerotier.

USAGE: create_vm VMNAME

Closes #244
2020-12-04 16:21:52 +01:00
58c5fad2a7
Add new nickname config for wormhole 2020-11-27 13:22:09 +01:00
8c60279fe1
Add cluster configs to ejabberd recipe 2020-11-25 21:02:46 +01:00
Greg Karékinian
613b316588 Add comment about needing to run Chef a second time...
... after the TLS certs are generated
2020-11-25 16:36:07 +01:00
Greg Karékinian
3a8af26b5f Remove firewall rule for an unused port 2020-11-25 16:36:07 +01:00
Greg Karékinian
23ca3552d2 Remove the absolute path of certbot to use the new package 2020-11-25 16:36:07 +01:00
Greg Karékinian
ddb706b61c Add a missing dependency on kosmos-dirsrv 2020-11-25 16:36:07 +01:00
Greg Karékinian
085bd8abd5 Move TURN port to a different range
It landed on a port used by PostgreSQL. Also switch STUN/TURN to TCP
because HAProxy does not support UDP.

Closes #240
2020-11-25 16:36:07 +01:00
Greg Karékinian
7636f6ed19 Move the Gandi DNS certbot hook to kosmos-ejabberd 2020-11-25 16:36:07 +01:00
Greg Karékinian
8b1f90c568 Use the same Erlang cookie to enable clustering
Refs #243
2020-11-25 16:35:37 +01:00
134493d2d6 Merge branch 'master' into feature/http_upload_service 2020-11-25 09:46:31 +00:00
f39f953b8a
Configure ejabberd nodes for HTTP upload service 2020-11-24 15:44:59 +01:00
0e29c930ed
Configure subdirectory level for upload.pm
This allows to post to per-domain subdirectories from XMPP clients.
2020-11-24 15:33:34 +01:00
0aef830aa3
Fix upload folder permissions
Uploads are failing with the current mode.
2020-11-23 20:50:01 +01:00
0bebdf7635
Do not require nginx from certbot recipe
In order to be able to use different nginx install recipes, we must not
require a specific one from this recipe.
2020-11-23 17:40:14 +01:00
9efb9cd78c
Configure/deploy HTTP upload service on uploads.kosmos.chat
https://xmpp.org/extensions/xep-0363.html

(Does not contain the config for ejabberd itself yet.)
2020-11-23 17:37:14 +01:00
c26fcd5b26
Remove obsolete manual daemon reload 2020-11-22 20:26:56 +01:00
d384f69139
Configure/deploy new akkounts app 2020-11-21 15:12:31 +01:00
Greg Karékinian
ebf5f405f5 Initial kosmos_drone cookbook
Closes #235
2020-11-19 12:59:15 +01:00
ac49430521
Install lib389
Fixes 389 CLIs not working (e.g. `dsctl`).
2020-11-08 17:23:24 +01:00
f874d7f979
Remove hubot-rss-reader from hubots
Not available in latest hal8000 source anymore
2020-10-29 16:19:24 +01:00
42a70962e8 Merge branch 'master' into feature/222-discourse 2020-10-23 10:11:05 +00:00
Greg Karékinian
255e43c680 Fix the Systemd unit for discourse
Switch the systemd unit to a oneshot type
2020-10-23 09:28:31 +02:00
71c8f6d91a Merge branch 'master' into chore/hubot_mediawiki_notifications 2020-10-21 11:43:08 +00:00
Greg Karékinian
5062392c71 Fix the undefined variable in the instance resource 2020-10-20 19:53:11 +02:00
4f5b005087
Send wiki notifications to new info XMPP room 2020-10-20 15:46:58 +02:00
69383a666b
Let hal8000 join new info@kosmos.chat room 2020-10-20 15:42:42 +02:00
Greg Karékinian
429b609ac2 Initial kosmos_discourse cookbook
The systemd unit does not work

Refs #222
2020-10-20 12:21:53 +02:00
Greg Karékinian
7eaf177bb2 Set the autocreate permission for Mediawiki users
This allows LDAP sign ins to create an account automatically

Fixes #219
2020-10-06 15:51:01 +02:00
Greg Karékinian
2119c11243 Do not include kosmos-postgresql in kosmos-ejabberd default recipe
It will install PostgreSQL, and we do not want that on the ejabberd
server
2020-09-25 16:29:01 +02:00
3d8d31c32f
Fix kosmos-ipfs not requiring nodejs/npm
If node isn't installed on a machine by something else before running
the kosmos-ipfs recipe, then it fails.
2020-09-24 17:39:28 +02:00
a1a0d7e4c1
Switch Certbot to snap package on Ubuntu 20.04+
Needs only minor changes. Tested and running on wiki.kosmos.org already.
2020-09-06 13:46:06 +02:00
8dd146e95c
Remove obsolete mysql client install
This fails nowadays,and the client is already installed via the mysql
package in the first place.
2020-09-06 13:42:34 +02:00