Commit graph

168 commits

Author SHA1 Message Date
Slavi Pantaleev
d2c9ed3e45 Initial work on optimization commands
The playbook can now optimize itself based on the enabled components in
for all hosts in the inventory (`just optimize`) or for a specific host
(`just optimize-for-host HOSTNAME`).

The optimized playbook will have:

- fewer requirements (fewer roles need to be installed by `just roles`)
- a shorter and quicker to evaluate `group_vars/mash_servers` file
- a `setup.yml` file which includes less roles

Running the playbook optimized is still work in progress.
There still probably exist various role dependencies in the group-vars file, etc.

The `optimize-reset` command aims to restore your playbook to a
non-optimized state, which should work as before (and not experience bugs).

The playbook takes care to notice of changes to the various files in
`templates/` (`setup.yml`, `requirements.yml`, `group_vars_mash_servers`)
and update your optimized or non-optimized copies that are derived from
these templates. To do this, it keeps `.srchash` files in the `run/` directory.
When it notices a change in the source file's hash (by comparing to the `.srchash` file),
it will update you to the new template.

Optimization state is stored in a file in `run/` as well (`optimization-vars-files.state`).
Should the playbook notice changes in the source `template/` files, it
should update you and re-optimize using the same parameters as before (read from the state file).
2023-11-20 16:29:06 +02:00
Slavi Pantaleev
31b9b08229 Add more role-specific annotations to group_vars/mash_servers_all 2023-11-20 15:55:56 +02:00
Slavi Pantaleev
7f43d87460 Add role-specific annotations to group_vars/mash_servers_all 2023-11-20 15:55:56 +02:00
Slavi Pantaleev
e71a879748 Create group_vars/mash_servers based on a template (group_vars/mash_servers_all)
In the future, we'll also have optional optimization steps, which could
trim down `group_vars/mash_servers` based on the components being used.
2023-11-20 11:07:31 +02:00
Slavi Pantaleev
33fd209966 Add explicit names for roles (affects their install paths) 2023-11-19 14:09:18 +02:00
Slavi Pantaleev
f7b672e342 Fix comment typo 2023-11-19 09:09:25 +02:00
Slavi Pantaleev
526c30f1e5 Redo the way certain large list variables are populated to allow pre-processing
The goal here is to switch from "one large YAML statement with many ifs"
to "separate if statements".

The first doesn't lend itself to having pre-processing comments around
it and to actually pre-processing it based on these comments.

Pre-processing is a future goal I'm working toward.
The idea is that `if` statements for component X do not need to run
if you're not using component X. In the future, we should be able to
have the playbook auto-configure itself based on the components you're using
and skip a lot of unnecessary work.
This is one step toward achieving this goal.
2023-11-19 09:04:35 +02:00
Slavi Pantaleev
65fac6b430 Do not auto-generate freshrss_database_password
Related to https://github.com/mother-of-all-self-hosting/mash-playbook/issues/116
2023-11-13 13:13:39 +02:00
moanos
db705d7dba feat: Add oxitraffic basics 2023-11-08 11:55:32 +01:00
Aine
36f8f89527
fix var name 2023-10-31 09:45:18 +02:00
Slavi Pantaleev
855c986f31 Upgrade Jitsi (v8960-1 -> v8960-3) and pass jitsi_user_username explicitly
It would work even without explicitly passing `jitsi_user_username` as
auto-detection logic will run. Passing it explicitly spares the Jitsi
role some work.

Related to:

- https://github.com/mother-of-all-self-hosting/ansible-role-jitsi/pull/2
- https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2974#issuecomment-1784256903
2023-10-31 08:35:13 +02:00
Alejandro AR
f738b24386
Adds FreshRSS service (#107)
* Adds FreshRSS service

* Adds comments to make it more clear
2023-10-10 18:06:11 +03:00
Aine
66ceac9a54
add echoip role (#108)
* add echoip role

* Update echoip.md

* Update echoip.md

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2023-10-10 09:57:44 +03:00
Slavi Pantaleev
4b8032f396
Move Roundcube systemd service in mash_servers so it's alphabetically-ordered 2023-10-05 10:21:22 +03:00
Slavi Pantaleev
8c0143ce3d
Move roundcube section in mash_servers so that it's alphabetically-ordered 2023-10-05 10:18:33 +03:00
Sergio Durigan Junior
39bd010f12 Add Roundcube
Signed-off-by: Sergio Durigan Junior <sergiodj@sergiodj.net>
2023-10-02 16:28:33 -04:00
Slavi Pantaleev
4abcaf0e6c Add Outline support 2023-09-19 11:15:33 +03:00
Aine
37d0af4734
borg: configurable tmp dir size; redmine: add recurring tasks integration 2023-09-18 13:27:29 +03:00
Slavi Pantaleev
26ec6df228 Fix typo affecting postgis_systemd_services_to_stop_for_maintenance_list 2023-09-16 11:47:18 +03:00
Slavi Pantaleev
8baac045b4 Auto-populate devture_postgres_systemd_services_to_stop_for_maintenance_list_auto based on devture_systemd_service_manager_services_list_auto 2023-09-16 11:46:57 +03:00
Slavi Pantaleev
fbc77fd60c Switch from devture_postgres_systemd_services_to_stop_for_maintenance_list to devture_postgres_systemd_services_to_stop_for_maintenance_list_auto
Only available since v16.0-2 of the Postgres role.
2023-09-16 11:43:03 +03:00
Antoine-Ali Zarrouk
2f29f0fadf
Changed startup priority for Keycloak
Allows keycloak to start up before services that may depend on it.
2023-09-15 14:26:06 +02:00
Slavi Pantaleev
6f980e5d93 Add support for Authelia 2023-09-12 13:26:38 +03:00
Slavi Pantaleev
4292b37a35 Switch from vaultwarden_container_additional_networks to vaultwarden_container_additional_networks_auto 2023-09-08 18:32:01 +03:00
M
20cd7971f3
Add Forgejo (#92)
* Create forgejo.md

* Update mash_servers

Add Forgejo

* Update requirements.yml

* Update releases.opml

* Update setup.yml

* Update supported-services.md

* Update requirements.yml

Fix typo

* Update mash_servers

Forgot "+"

* Fix Syntax Error

* Update Version for Requirement.yml
2023-09-06 15:53:44 +03:00
Aine
c9189219eb
add prometheus-ssh-exporter 2023-09-05 23:44:04 +03:00
Slavi Pantaleev
09fc02250d
Merge pull request #86 from mother-of-all-self-hosting/prometheus
Allow exposing prometheus via traefik
2023-08-05 19:36:42 +03:00
Niels Bouma
0e8d7eb0e3 seperated changedetection playwright driver enabled 2023-08-01 15:37:34 +02:00
Niels Bouma
1680818b02 begin changedetection 2023-07-31 16:32:00 +02:00
Julian-Samuel Gebühr
80c07322e1 Merge branch 'main' into prometheus 2023-07-26 23:39:56 +02:00
Julian-Samuel Gebühr
58c33c8fc9 Add traefik config 2023-07-24 18:37:03 +02:00
kinduff
4173e56a79 Adds support for linkding 2023-07-20 23:33:17 +02:00
Slavi Pantaleev
3c16a9b7bb
Merge pull request #82 from kinduff/service/n8n
Adds support for n8n
2023-07-19 19:31:46 +03:00
kinduff
e7a01ab587 Updates n8n uid and gid with note 2023-07-19 16:03:47 +02:00
Julian-Samuel Gebühr
2d3121397d Fix mobilizon database username 2023-07-19 14:14:54 +02:00
kinduff
865746f0e3 Adds support for n8n 2023-07-19 12:08:59 +02:00
Julian-Samuel Gebühr
5d5e4ab7ba Add ilmo 2023-07-17 14:45:18 +02:00
Slavi Pantaleev
9b5867fe23 Add ClickHouse support 2023-07-07 14:43:28 +03:00
Slavi Pantaleev
f6b932d4e3 Fix typo in comment 2023-07-07 02:10:48 +03:00
Julian-Samuel Gebühr
d84caf49b3 Fix alignment, formatting and remove double default 2023-07-06 11:53:20 +02:00
Julian-Samuel Gebühr
e5f845e83e Add docs, requirements and systemd 2023-07-03 13:10:38 +02:00
Slavi Pantaleev
eff715f707
Merge pull request #75 from mother-of-all-self-hosting/rumqttd
Add rumqttd
2023-06-30 14:55:37 +03:00
Julian-Samuel Gebühr
ed88c4712f Fix identiefier 2023-06-29 14:12:06 +02:00
Julian-Samuel Gebühr
3393986f34 Add Telegraf 2023-06-29 10:46:34 +02:00
Julian-Samuel Gebühr
ca1f00c7ca Initial influxdb commit 2023-06-29 00:51:46 +02:00
Julian-Samuel Gebühr
cfc591709f Default to 2000 priority 2023-06-28 22:43:45 +02:00
Julian-Samuel Gebühr
e661bbc7dd Add rumqttd 2023-06-28 22:41:48 +02:00
Slavi Pantaleev
c8bdc1f744 Add support for Infisical 2023-06-02 17:50:15 +03:00
Slavi Pantaleev
2d64c76397 Add support for MongoDB 2023-06-02 17:26:09 +03:00
Julian-Samuel Gebühr
ee93a4cd62 Merge branch 'main' into mobilizon 2023-06-01 09:06:25 +02:00