Commit graph

248 commits

Author SHA1 Message Date
Pierre Penninckx
dde0d49a84
improve contract documentation (#365) 2024-11-23 21:34:26 +00:00
Pierre Penninckx
b80c840743
have actual implementation for sops secrets (#363) 2024-11-22 23:24:47 +00:00
Pierre Penninckx
9ecbbde35a
Update remaining services to secret contract (#358) 2024-11-21 13:45:35 -08:00
Pierre Penninckx
5056d203d9
update secret contract and add sops module (#356)
I find these `mkProvider` and `mkRequester` functions really nice.

Also fixes doc generation related to  https://github.com/NixOS/nixpkgs/pull/353513
2024-11-21 12:51:57 -08:00
Pierre Penninckx
a04dca9973
use secrets contract for restic (#349) 2024-11-17 21:12:14 +00:00
Pierre Penninckx
4726593ea9
Do not use activation script for script with dependencies (#348)
The issue with activation script is the order is alphabetical, meaning
the order the script is assembled is not really set in stone.

Here, because the script had a name starting with `restic`, it was ran
before the `sops` secret generation script. And since the restic script
was trying to use the secrets, it failed.

And if the activation script fails, you get a kernel panic.
2024-11-15 21:05:01 +00:00
Pierre Penninckx
442c948a1a
more contracts usage in Nextcloud and docs enhancement (#345) 2024-11-13 21:43:12 +00:00
Pierre Penninckx
431dd058c5
Backup contracts for files and databases (#344)
This PR continues the work started in
https://github.com/ibizaman/selfhostblocks/pull/314

I had to create my own PR since I couldn't add commits on the fork.

---------

Co-authored-by: sivertism <10866270+sivertism@users.noreply.github.com>
2024-11-12 20:40:52 +00:00
ibizaman
a589a9fe00 add contract test for secret contract 2024-10-24 22:27:47 +02:00
ibizaman
b134abeb6d switch forgejo to new secrets contract 2024-10-24 22:27:47 +02:00
ibizaman
b85705ab74 switch authelia to new secrets contract 2024-10-24 22:27:47 +02:00
ibizaman
fa87855ee5 switch jellyfin to new secrets contract
This rabbit hole of a task lead me to:
- Introduce a hardcoded secret module that is a secret provider
  for tests.
- Update LDAP and SSO modules to use the secret contract.
- Refactor the replaceSecrets library function to correctly fail
  when a secret file could not be read.
2024-10-24 22:27:47 +02:00
Pierre Penninckx
b405988e60
fix lldap backup (#323)
closes #319
2024-10-24 21:21:01 +02:00
Pierre Penninckx
5a0ae36c85
update secret contract (#311)
This makes the secret contract better (IMNSHO):

- Improves documentation, explains better the reasoning behind the
contract.
- Makes it easier to create an option implementing the secret contract.
2024-10-01 21:01:00 +00:00
ibizaman
f75a01ee2c revert hotfix for vpn 2024-09-22 00:36:54 -07:00
ibizaman
a262940a81 fix let's encrypt ssl block for host verification 2024-09-21 23:59:10 -07:00
ibizaman
7610097a74 add secret contract and use it in ldap block 2024-09-21 23:57:19 -07:00
Pierre Penninckx
7ad3e4c5a4
allow to customize forgejo runner host packages (#304) 2024-09-14 06:56:05 +00:00
ibizaman
f8edf51207 fix issue with openvpn extraArgs after update 2024-09-13 20:40:35 -07:00
ibizaman
253ec980d9 add forgejo service 2024-09-12 13:10:20 -07:00
ibizaman
adbeef3289 reduce alerting time for 5XX error
It's alerting for too long, even after it recovered.
We'll probably need to something more appropriate than an error budget but it'll do for now.
2024-09-07 11:06:36 -07:00
ibizaman
ff5a13c6ce fix davfs gid 2024-09-03 09:37:16 -07:00
Pierre Penninckx
3a44530844
apply Nextcloud expensive migrations on service start (#294) 2024-09-03 03:22:53 +00:00
Pierre Penninckx
e5b76e4183
Revert: make sure fox nginx to wait on authelia (#293)
This was not the root cause of Nginx not starting.
The root cause was the DNS server was restarting at the same time as
Nginx and wasn't ready yet.
There is no DNS block yet in Self Host Blocks so the code is removed for
now.
2024-09-02 06:56:02 +00:00
Pierre Penninckx
84e4893665
Make sure fox nginx to wait on authelia (#292) 2024-09-02 06:51:06 +00:00
ibizaman
1bd5810a6d apply nextcloud test fix to all configs 2024-09-01 22:15:07 -07:00
ibizaman
35bfb01848 fix nextcloud test when nextcloud is not enabled 2024-09-01 22:10:23 -07:00
Pierre Penninckx
04a3a06730
Switch to not deprecated mkPackageOption (#288) 2024-09-02 01:17:38 +00:00
ibizaman
6da0a4b988 disable nextcloud maintenance mode on service restart 2024-09-01 17:23:04 -07:00
Pierre Penninckx
d711e59f91
Wait actively on ldap being ready (#286)
Looks like this is needed in the end, other we get into some flaky
situations
2024-09-01 06:36:53 +00:00
Pierre Penninckx
8db61af6b3
respect stateVersion in vaultwarden (#285) 2024-08-31 09:22:30 +00:00
Pierre Penninckx
eb791b3019
flake.lock: Update (#244)
Automated changes by the
[update-flake-lock](https://github.com/DeterminateSystems/update-flake-lock)
GitHub Action.

```
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/9ca3f649614213b2aaf5f1e16ec06952fe4c2632?narHash=sha256-7EXDb5WBw%2Bd004Agt%2BJHC/Oyh/KTUglOaQ4MNjBbo5w%3D' (2024-05-27)
  → 'github:nixos/nixpkgs/71e91c409d1e654808b2621f28a327acfdad8dc2?narHash=sha256-GnR7/ibgIH1vhoy8cYdmXE6iyZqKqFxQSVkFgosBh6w%3D' (2024-08-28)
```

### Running GitHub Actions on this PR

GitHub Actions will not run workflows on pull requests which are opened
by a GitHub Action.

To run GitHub Actions workflows on this PR, run:

```sh
git branch -D update_flake_lock_action
git fetch origin
git checkout update_flake_lock_action
git commit --amend --no-edit
git push origin update_flake_lock_action --force
```

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-08-31 07:57:21 +00:00
Pierre Penninckx
1774b61cfe
Make backup cli tool correctly use secrets (#284) 2024-08-29 07:12:45 +00:00
ibizaman
e6c56891e1 still enable rollback tool even for disabled restic instances 2024-08-25 13:07:21 -07:00
ibizaman
a753254c0e add option restic backup args to limit bandwidth usage 2024-08-25 09:21:14 -07:00
Pierre Penninckx
f8fdf2f704
more fixes to the backup contract (#281)
This PR irons out the last issues with the backup contract and the
Restic implementation.
I could check it works backing up files to a local folder and to
Backblaze on my server.
2024-08-24 05:37:18 +00:00
Pierre Penninckx
10dea06ec1
Fix backup contract secrets (#280) 2024-08-22 19:48:36 +00:00
Pierre Penninckx
0fa4a42be7
switch all modules to backup block (#279) 2024-08-20 14:33:13 +00:00
ibizaman
6aed5ee6a5 add backup contract 2024-08-20 00:33:26 -07:00
ibizaman
6235b2f414 always restart postgresql service
For example, it can be killed by systemd-oom but it's such a foundational service that we should
always restart it.
2024-08-13 03:45:05 +02:00
ibizaman
3824e07ae9 fix link in nextcloud service doc 2024-08-12 06:51:24 -07:00
ibizaman
d2a018ceec add docs for vaultwarden service 2024-08-12 06:51:24 -07:00
ibizaman
6b55db7d9c add mount contract to vaultwarden service 2024-08-12 06:51:24 -07:00
ibizaman
896c376b6d add mount contract to authelia block 2024-08-12 06:51:24 -07:00
ibizaman
01eb07a6d2 add mount contract to ldap block 2024-08-12 06:51:24 -07:00
ibizaman
56c06b4404 add mount contract implemented by zfs 2024-08-12 06:51:24 -07:00
ibizaman
13ba38a993 do not set serverAliases for dns
Otherwise, those server aliases take precedence over actual virtual hosts that serve those subdomain.
2024-08-11 14:59:31 -07:00
ibizaman
6b17ff858e add host provider for ssl letsencrypt block 2024-08-10 19:51:46 -07:00
ibizaman
0f2f69f7a1 refactor tests to use common blocks 2024-07-16 10:53:29 +02:00
ibizaman
308db5fe6b export all torrent metrics 2024-06-10 22:43:37 -07:00