ibizaman
3184015d67
add debug output to lldap with mitmdump module
2025-08-19 13:36:46 +02:00
sivert
b4b70b175e
Update SSO setup for Audiobookshelf
...
More or less copied from jellyfin.
2025-08-18 23:22:04 +02:00
ibizaman
c9ee41b1d4
fine grained logging with mitmdump logger addon
2025-08-04 01:22:25 +02:00
ibizaman
67c2705f98
add mitmdump block
2025-07-31 23:21:57 +02:00
ibizaman
91580421be
add playwright test with ldap for forgejo
2025-07-24 23:12:33 +02:00
ibizaman
b50f45e17e
add declarative lldap using secrets contract
2025-07-18 23:51:27 +02:00
ibizaman
13f4064e93
rename ldap block to lldap
2025-07-12 21:47:55 +02:00
ibizaman
7efc153706
gracefully handle cases where no trace is found
2025-07-12 00:01:41 +02:00
ibizaman
82977bd239
declarative jellyfin setup with tests
2025-07-12 00:01:41 +02:00
ibizaman
07940cc408
move imports in a common place for jellyfin tests
2025-07-12 00:01:41 +02:00
ibizaman
b57ea2bda3
specify proto in tests as module option too
2025-07-12 00:01:41 +02:00
ibizaman
8d85cbd1be
allow to test login from server too
2025-07-12 00:01:41 +02:00
ibizaman
2377140b0c
add ssh backdoor to all jellyfin tests
2025-07-12 00:01:41 +02:00
ibizaman
221ea6244d
allow to set field selector in playwright tests
2025-07-12 00:01:41 +02:00
ibizaman
e4d1e3d7c2
use exec to run python playwright commands
2025-07-12 00:01:41 +02:00
ibizaman
afb062666f
allow to choose browser for playwright test
2025-07-12 00:01:41 +02:00
ibizaman
1ec2c11009
allow to choose jellyfin port
2025-07-12 00:01:41 +02:00
ibizaman
b603156930
add debug logging option to jellyfin
2025-07-12 00:01:41 +02:00
ibizaman
c6ef5cd405
make sure jellyfin actually started in tests
2025-07-12 00:01:41 +02:00
ibizaman
46a6c430ef
enable nginx access log for all tests
2025-07-12 00:01:41 +02:00
ibizaman
56d097d96d
change jellyfin subdomain
2025-07-12 00:01:41 +02:00
ibizaman
78f7cc5748
remove noop line
2025-07-12 00:01:41 +02:00
ibizaman
53dde94d98
explicitly disable memories app in nextcloud
...
Until https://github.com/ibizaman/selfhostblocks/issues/476 is fixed
2025-06-25 00:21:27 +02:00
ibizaman
a37c539e02
fix playwright test for nextcloud
2025-06-24 23:03:17 +02:00
ibizaman
574a566b97
fix voice test for home-assistant
2025-06-24 23:03:17 +02:00
ibizaman
5a1e9809bc
fix playwright test for home-assistant
2025-06-24 23:03:17 +02:00
ibizaman
6947475f2c
fix playwright test for forgejo
2025-06-24 23:03:17 +02:00
ibizaman
a0a233c847
fix nextcloud login test
2025-03-19 16:40:11 +01:00
ibizaman
719cf4dad4
create html report for playwright tests
2025-03-19 16:40:11 +01:00
ibizaman
c7a915a9a6
fix home-assistant basic login test
2025-03-19 16:40:11 +01:00
ibizaman
0c64452d07
add playwright test for home-assistant
2025-02-12 00:18:10 +01:00
ibizaman
51cc563fe8
add playwright test for hledger
2025-02-11 00:41:59 +01:00
ibizaman
82426a4f1f
add playwright test for grocy
2025-01-31 22:39:30 +01:00
ibizaman
3473117d12
no need for screenshot if there's a trace
2025-01-31 22:39:30 +01:00
ibizaman
71651bdc0e
add start of playwright test for audiobookshelf
2025-01-31 16:31:33 +01:00
ibizaman
6c9f0e50f7
add playwright test for arr services
2025-01-31 08:37:02 +01:00
ibizaman
c280b57bf5
add playwright test for nextcloud
2025-01-30 22:57:56 +01:00
ibizaman
d5293825e9
add option to create forgejo users declaratively
2025-01-26 22:39:27 +01:00
ibizaman
2c713ae9ad
add playwright test for forgejo
2025-01-26 22:39:27 +01:00
ibizaman
cf3442fb13
add playwright test for deluge
2025-01-26 17:32:41 +01:00
ibizaman
76d6c246e2
move indent function to lib
2025-01-26 17:32:41 +01:00
ibizaman
7bc7cd49cf
refactor extraScript in tests
2025-01-23 21:14:50 +01:00
ibizaman
b776bd07bc
refactor pkgs in tests
2025-01-23 21:14:50 +01:00
ibizaman
072979fce2
refactor domain and subdomain vars in tests
2025-01-23 21:14:50 +01:00
ibizaman
441907b134
refactor base module in tests
2025-01-23 21:14:50 +01:00
ibizaman
16f305b9f4
add alert when certs are close to expiring
2024-12-27 22:54:45 +01:00
ibizaman
9a7bcd374b
add phpfpm prometheus exporter
2024-12-23 01:20:05 +01:00
ibizaman
ab6de8de90
fix nextcloud ldap test
2024-12-17 21:57:20 +01:00
ibizaman
a8b29b243c
add voice option to home-assistant
2024-12-17 21:57:20 +01:00
Pierre Penninckx
30aa5dcc11
fix modules using backup contract ( #386 )
...
Co-authored-by: ibizaman <ibizapeanut@gmail.com>
2024-11-30 01:07:08 +00:00
Pierre Penninckx
34c4b75871
add test for all modules using backup contract ( #383 )
...
Co-authored-by: ibizaman <ibizapeanut@gmail.com>
2024-11-28 21:17:14 +00:00
Pierre Penninckx
3e63cb2e12
switch databasebackup contract to new contract style ( #372 )
...
Co-authored-by: ibizaman <ibizapeanut@gmail.com>
2024-11-26 20:07:36 +00:00
Pierre Penninckx
47dffd2a2f
switch backup contract to new contract style ( #367 )
...
Co-authored-by: ibizaman <ibizapeanut@gmail.com>
2024-11-26 19:59:07 +00:00
Pierre Penninckx
ba1e60a45e
rename backup hook attributes ( #371 )
...
Co-authored-by: ibizaman <ibizapeanut@gmail.com>
2024-11-26 19:15:36 +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
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
52fc7e29a9
fix tests in lib
2024-10-24 22:27:47 +02:00
ibizaman
a589a9fe00
add contract test for secret contract
2024-10-24 22:27:47 +02:00
ibizaman
9d81a72d51
use hardcodedsecret in restic test
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
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
253ec980d9
add forgejo service
2024-09-12 13:10:20 -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
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
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
9d0b56c6b8
add wip vaultwarden test to check auth
2024-08-14 21:03:02 -07:00
ibizaman
b64c1bf982
do not assume any formatting in curl function for tests
2024-08-14 20:21:32 -07:00
ibizaman
4c4b0c2e61
print curl command in tests
2024-08-14 20:21:32 -07:00
ibizaman
b466ca4346
make extraScript appear as its own subtest
2024-08-14 20:21:32 -07:00
ibizaman
8d68b3b411
fix tests after always restarting postgresql service
2024-08-14 20:19:52 -07:00
ibizaman
9cae26d23f
add sso tests to arr suite
2024-07-16 11:41:31 +02:00
ibizaman
9a2e4b7603
split tests between blocks and services
2024-07-16 11:23:21 +02:00
ibizaman
0f2f69f7a1
refactor tests to use common blocks
2024-07-16 10:53:29 +02:00
ibizaman
1b4247233b
refactor common test script
2024-07-12 19:01:41 +02:00
ibizaman
a4c4ee1670
add prometheus deluge exporter
2024-06-09 23:47:31 -07:00
ibizaman
848083dacc
break authFile for deluge into user and password attrset
2024-06-09 23:43:46 -07:00
ibizaman
d0d9010a30
refactor grocy tests
2024-06-09 23:41:24 -07:00
ibizaman
bcd844f7cc
commonalize monitoring tests
2024-06-09 23:28:09 -07:00
ibizaman
f7469cf096
commonalize grocy tests
2024-06-06 23:02:07 -07:00
ibizaman
30be3d1262
commonalize audiobookshelf tests
2024-06-06 22:57:31 -07:00
ibizaman
121371716b
commonalize nextcloud tests
2024-06-06 22:48:04 -07:00
ibizaman
c34a2f4c58
wait for nextcloud-cron to finish in test
2024-05-29 15:26:04 -07:00
ibizaman
cae83153c8
fix arr test
2024-05-27 17:13:05 -07:00
ibizaman
ebbd19c7fd
add vm test for home-assistant
2024-05-27 17:13:05 -07:00
ibizaman
97285e1833
add vm test for vaultwarden
2024-05-27 17:13:05 -07:00
ibizaman
8ebb3af1f0
rename autheliaProtect to vhosts
2024-05-27 17:13:05 -07:00
ibizaman
8ec12338fd
make config with secrets correctly generated
2024-05-27 17:13:05 -07:00
Pierre Penninckx
425e511792
flake.lock: Update ( #226 )
...
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/b06025f1533a1e07b6db3e75151caa155d1c7eb3?narHash=sha256-qrxvLS888pNJFwJdK%2Bhf1wpRCSQcqA6W5%2BOx202NDa0%3D' (2024-03-19)
→ 'github:nixos/nixpkgs/5672bc9dbf9d88246ddab5ac454e82318d094bb8?narHash=sha256-NLznXB5AOnniUtZsyy/aPWOk8ussTuePp2acb9U%2BISA%3D' (2024-04-16)
• Updated input 'sops-nix':
'github:Mic92/sops-nix/83b68a0e8c94b72cdd0a6e547a14ca7eb1c03616?narHash=sha256-RquCuzxfy4Nr8DPbdp3D/AsbYep21JgQzG8aMH9jJ4A%3D' (2024-03-17)
→ 'github:Mic92/sops-nix/cc535d07cbcdd562bcca418e475c7b1959cefa4b?narHash=sha256-APoDs2GtzVrsE%2BZ9w72qpHzEtEDfuinWcNTN7zhwLxg%3D' (2024-04-15)
• Updated input 'sops-nix/nixpkgs':
'github:NixOS/nixpkgs/9af9c1c87ed3e3ed271934cb896e0cdd33dae212?narHash=sha256-huQT4Xs0y4EeFKn2BTBVYgEwJSv8SDlm82uWgMnCMmI%3D' (2024-03-15)
→ 'github:NixOS/nixpkgs/a0c9e3aee1000ac2bfb0e5b98c94c946a5d180a9?narHash=sha256-icE1IJE9fHcbDfJ0%2BqWoDdcBXUoZCcIJxME4lMHwvSM%3D' (2024-04-12)
• Updated input 'sops-nix/nixpkgs-stable':
'github:NixOS/nixpkgs/6dc11d9859d6a18ab0c5e5829a5b8e4810658de3?narHash=sha256-y%2Bl3eH53UlENaYa1lmnCBHusZb1kxBEFd2/c7lDsGpw%3D' (2024-03-16)
→ 'github:NixOS/nixpkgs/c27f3b6d8e29346af16eecc0e9d54b1071eae27e?narHash=sha256-RifMwYuKu5v6x6O65msKDTqKkQ9crGwOB7yr20qMEuE%3D' (2024-04-13)
```
### 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-04-17 16:06:29 -07:00
Pierre Penninckx
26f406db5f
fix arr setup ( #224 )
2024-04-10 23:52:24 -07:00
Pierre Penninckx
5179f7fc90
Add external storage app to Nextcloud ( #222 )
2024-04-08 22:41:52 -07:00
Pierre Penninckx
c488bb5bda
Add scripts to update postgresql ( #219 )
2024-04-02 22:17:29 -07:00
Pierre Penninckx
c75daa23c0
move CI to garnix ( #210 )
2024-03-19 22:50:41 -07:00
Pierre Penninckx
589e2c936f
add tests for arr services and some more options ( #205 )
2024-03-13 05:40:32 +00:00
Pierre Penninckx
77de1bb168
refactor vm tests to have common test script ( #202 )
2024-03-04 20:36:47 -08:00
Pierre Penninckx
8b44d8098b
Add more vm tests to nextcloud ( #200 )
2024-03-04 07:01:05 +00:00
Sivert Sliper
64f9c051b9
Grocy service ( #195 )
...
PR to add grocy as a service.
I think LDAP should be [relatively
simple](https://www.reddit.com/r/grocy/comments/18avtb7/sso_tutorial/ )
to add, but couldn't find good information on SSO.
Will test this out for a while to make sure it really works before this
can be merged.
---------
Co-authored-by: ibizaman <ibizapeanut@gmail.com>
Co-authored-by: Pierre Penninckx <github@pierre.tiserbox.com>
2024-03-04 01:25:26 +00:00
Sivert Sliper
ee68e27f15
Audiobookshelf service ( #123 )
...
Hi,
I tried adding [Audiobookshelf](https://www.audiobookshelf.org/ ) as a
new service to SHB.
Not sure whether you want this service in SHB at all, but thought I'd
create a PR just in case.
The service runs, but seemingly fails to add an entry to the nginx
config, so it is not reachable. I created the service by basically just
copying deluge and then adapting. Any idea why the nginx subdomain isn't
being created?
The config I used to add this to my SHB server is:
```nix
shb.audiobookshelf = {
enable = true;
domain = "sliper.xyz";
subdomain = "abs";
dataDir = "audiobookshelf"; #turns out this is actually the working dir of the service (/var/lib/<dataDir>)
authEndpoint = "https://auth.sliper.xyz ";
};
// ... in shb.authelia.oidcClients
redirect_uris = [ "https://deluge.sliper.xyz " "https://abs.sliper.xyz " ];
```
ps. I also need to fix tabs->spaces. Forgot to set up nvim.
---------
Co-authored-by: sivert <nei@nei.nei>
Co-authored-by: ibizaman <ibizapeanut@gmail.com>
Co-authored-by: Pierre Penninckx <github@pierre.tiserbox.com>
2024-03-04 01:01:00 +00:00
ibizaman
e80cc0d3aa
add vm tests for jellyfin and regroup ldap and sso options
2024-03-02 23:03:49 -08:00
ibizaman
fa206d0e15
move templating code to lib file
2024-02-29 20:30:47 -08:00
ibizaman
7d0276e9f2
fix some deprecated options
2024-02-07 22:33:25 -08:00
ibizaman
e00a41b086
add group and reloadServices options to ssl block
2024-01-24 22:45:51 -08:00
ibizaman
0bfa15fd3c
add extraDomains options for cert generation
...
fixes #133
2024-01-24 18:46:42 -08:00
ibizaman
fdf4f54ef3
make authelia test validate clients exists
2024-01-23 22:14:13 -08:00
ibizaman
1cf6d264e4
add declarative sso integration for nextcloud
2024-01-22 16:44:10 -08:00
sivert
8a5f4e3bf2
Combine authelia client YAML's into one YAML file
...
- Fixes #126
- Generate a single oidc_clients.yaml to define all clients
- `public` property of OIDC clients is now a bool (as it should be), not a string.
- sed pattern changed to allow multiple replacements
2024-01-22 13:50:11 -08:00
ibizaman
7e2f76e7f9
improve ssl block
2024-01-20 20:19:44 -08:00
ibizaman
adc09acc49
use contract for ssl block
2024-01-19 10:48:10 -08:00
ibizaman
0e635e1a76
add nextcloud vm test
2023-12-30 10:01:41 -08:00
ibizaman
9a5a10a824
add test for authelia
2023-12-11 00:28:30 -08:00
ibizaman
0242ae26c4
fix ensure clauses in postgresql
...
fixes #35
2023-12-04 00:29:40 -08:00
ibizaman
13a90f1ad4
avoid testing nix store path hash which makes tests brittle
2023-12-04 00:27:30 -08:00
ibizaman
5f4ea7acfb
wait for open port in all tests to reduce flakiness
2023-12-04 00:18:19 -08:00
Pierre Penninckx
0014e5c2f7
avoid some impossible states in authelia and nginx
2023-11-30 22:49:34 -08:00
Pierre Penninckx
76e27ae7eb
add nixos test for ldap
2023-11-30 22:08:38 -08:00
Pierre Penninckx
0ae7220c06
rename oidcEndpoint option to authEndpoint
2023-11-30 12:48:57 -08:00
Pierre Penninckx
7d9dedb845
provision grafana datasources and some dashboards ( #23 )
...
fixes #22
This commit introduces:
- A few more optional options for the monitoring module, in particular
an SMTP option to setup sending alerts with an STMP server.
- 2 required options for adding a secure key for signing and for an
initial admin password. The latter is nice because at least you can
choose securely the initial admin password instead of it being just
"admin", adding a bit more security to the install process.
- Provisioning Grafana with dashboards, datasources, alerts, contact
points and notification policies.
- Documentation for monitoring in
[docs/blocks/monitoring.md](docs/blocks/monitoring.md).
- A NixOS test that makes sure provisioning did go well as expected.
2023-11-26 09:56:08 -08:00
ibizaman
aa3448cb1f
fix postgres module tests
2023-11-24 18:19:22 -08:00
Pierre Penninckx
52b9233a6c
add postgresql vm test that runs in CI ( #19 )
...
Fixes #14
The tests actually showed a flaw in the implementation, we needed
"password" and not "trust" in the auth file.
Also, having the port defined at the same time as enabling listening for
TCP/IP connection made no sense.
2023-11-23 01:03:33 -08:00
Pierre Penninckx
eae5eade56
distinguish building blocks and provided services
...
I want to show how composable this project is. For example, you could
just use the Authelia module to add SSO to any service, not just those
provided here.
2023-11-20 22:20:19 -08:00
ibizaman
39c2c943a1
fix backupCfg option for arr module
2023-11-16 23:55:38 -08:00
ibizaman
7e5a447257
fix tests
2023-11-16 23:55:38 -08:00
ibizaman
af71513dcf
add more tests to be able to import shb with default config
2023-11-08 12:27:47 -08:00
ibizaman
9a758fb86e
remove need for intermediary file
2023-11-07 20:26:34 -08:00
ibizaman
77e16c0f76
fix conflicting options in postgresql service
2023-11-05 15:47:13 -08:00
ibizaman
685133ba47
fix postgresql password script when multiple users
2023-11-05 15:42:59 -08:00
ibizaman
a05f9d6942
use correct postgresql option
2023-11-05 04:48:39 -08:00
ibizaman
40522c8540
allow no password for postgresql
2023-11-05 04:44:56 -08:00
ibizaman
cc57b1ced7
add postgresql module with tests
2023-11-05 04:44:56 -08:00