Inex Code
6e0bf4f2a3
chore: PR cleanup
2024-06-27 17:43:13 +03:00
dettlaff
f90eb3fb4c
feat: add flake services manager ( #113 )
...
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy-rest-api/pulls/113
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
Reviewed-by: houkime <houkime@protonmail.com>
Co-authored-by: dettlaff <dettlaff@riseup.net>
Co-committed-by: dettlaff <dettlaff@riseup.net>
2024-06-21 23:35:04 +03:00
nhnn
3d2c79ecb1
feat: streaming of journald entries via graphql subscription
2024-06-06 16:07:08 +03:00
nhnn
fc2ac0fe6d
feat: graphql endpoint to fetch system logs from journald
2024-06-06 16:03:16 +03:00
Houkime
cb2a1421bf
test(websocket): remove some duplication
2024-05-27 21:30:51 +00:00
Houkime
17ae162156
test(websocket): remove excessive sleeping
2024-05-27 21:30:51 +00:00
Houkime
f772005b17
refactor(jobs): offload job subscription logic to a separate file
2024-05-27 21:30:51 +00:00
Houkime
950093a3b1
feature(websocket): add auth to counter too
2024-05-27 21:30:51 +00:00
Houkime
8fd12a1775
feature(websocket): add auth
2024-05-27 21:30:51 +00:00
Houkime
39f584ad5c
test(devices): provide devices for a service test to fix conditional test fail.
2024-05-27 21:30:51 +00:00
Houkime
6d2fdab071
feature(jobs): UNSAFE endpoint to get job updates
2024-05-27 21:30:51 +00:00
Houkime
3910e416db
test(jobs): test simple counting
2024-05-27 21:30:51 +00:00
Houkime
8348f11faf
test(websocket): separate ping and init
2024-05-27 21:30:51 +00:00
Houkime
02d337c3f0
test(websocket): ping pong test
2024-05-27 21:30:51 +00:00
Houkime
c19fa227c9
test(websocket) test connection init
2024-05-27 21:30:51 +00:00
Houkime
098abd5149
test(jobs): subscription query generating function
2024-05-27 21:30:51 +00:00
Houkime
4306c94231
test(jobs) test API job format
2024-05-27 21:30:51 +00:00
Houkime
1fadf0214b
test(jobs): test Graphql job getting
2024-05-27 21:30:51 +00:00
Houkime
4b1becb4e2
feature(jobs): websocket connection
2024-05-27 21:30:51 +00:00
Houkime
43980f16ea
feature(jobs): job update generator
2024-05-27 21:30:51 +00:00
Houkime
b204d4a9b3
feature(redis): enable key space notifications by default
2024-05-27 21:30:51 +00:00
Houkime
5bf5e7462f
test(redis): test key event notifications
2024-05-27 21:30:51 +00:00
Houkime
4d60b7264a
test(async): pubsub
2024-05-27 21:30:51 +00:00
Houkime
862f85b8fd
feature(redis): async connections
2024-05-27 21:30:51 +00:00
Houkime
8e8e76a954
fix(backups): fix orphaned snapshots erroring out
2024-05-24 12:30:27 +00:00
Inex Code
524adaa8bc
add nix-collect-garbage endpoint ( #112 )
...
Continuation of the broken #21
Co-authored-by: dettlaff <dettlaff@riseup.net>
Co-authored-by: def <dettlaff@riseup.net>
Co-authored-by: Houkime <>
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy-rest-api/pulls/112
Reviewed-by: houkime <houkime@protonmail.com>
2024-05-01 16:10:39 +03:00
houkime
5e93e6499f
Merge pull request 'redis-huey' ( #84 ) from redis-huey into master
...
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy-rest-api/pulls/84
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-03-20 14:19:07 +02:00
Houkime
9ee72c1fcb
test(huey): make timeout more so that vm gets it in time
2024-03-20 09:02:10 +00:00
Houkime
28556bd22d
test(backups): move errored job checker into common test utils
2024-03-18 17:40:48 +00:00
Houkime
c5b227226c
fix(backups): do not rely on obscure behaviour
2024-03-18 17:33:45 +00:00
Houkime
b40df670f8
fix(backups): censor out keys from error messages
...
We do not have any automated sending of errors to Selfprivacy
but it was inconvenient for people who want to send a
screenshot of their error.
2024-03-18 17:15:40 +00:00
Houkime
6f38b2309f
fix(huey): adapt to new VM test environment
2024-03-18 12:18:55 +00:00
Houkime
8e48a5ad5f
test(huey): add a scheduling test (expected-fails for now)
2024-03-18 12:18:55 +00:00
Houkime
fde461b4b9
test(huey): test that redis socket connection works
2024-03-18 12:18:55 +00:00
Houkime
9954737791
use kill() instead of terminate in huey tests
2024-03-18 12:18:55 +00:00
Houkime
2b19633cbd
test(huey): break out preparing the environment vars
...
I did it for testing redis socketing too, but I guess this will wait for
another time. Somehow it worked even without an actual redis socket and it was
creepy. Idk yet how one can best make redis to make sockets at arbitrary
temporary dirs without starting another redis.
2024-03-18 12:18:55 +00:00
Houkime
83592b7bf4
feature(huey): use RedisHuey
2024-03-18 12:18:55 +00:00
Houkime
6e29da4a4f
test(service): test moving with rebuilding via fp
2024-03-18 11:32:02 +00:00
Inex Code
2d5ac51c06
fix: future mock are now more in the future
2024-03-15 16:14:31 +04:00
Houkime
7dae81530e
test(services): clean up tests
2024-03-06 18:40:05 +03:00
Houkime
305e5cc2c3
refactor(services): introduce Bind class and test moving deeper
2024-03-06 18:40:05 +03:00
Houkime
1e51f51844
feature(backups): intermittent commit for binds, to be replaced
2024-03-06 18:40:05 +03:00
Houkime
17a1e34c0d
feature(services): check before moving task and before move itself
2024-03-06 18:40:05 +03:00
Houkime
b054235d96
test(services): remove unused json
2024-03-06 18:39:27 +03:00
Houkime
2519a50aac
test(services): merge def and current service tests
2024-03-06 18:39:27 +03:00
def
18327ffa85
test: remove unused mocks, fix tests naming
2024-03-06 18:39:27 +03:00
def
b5183948af
fix: service tests
2024-03-06 18:39:27 +03:00
def
e01b8ed8f0
add test_api_services.py
2024-03-06 18:39:27 +03:00
def
5cd1e28632
add storage tests
2024-03-06 18:39:27 +03:00
Inex Code
f895f2a38b
refactor: Return last 10 log lines when system rebuild failed
2024-03-06 18:33:55 +03:00
Inex Code
c733cfeb9e
Merge remote-tracking branch 'origin/system-rebuild-tracking' into system-rebuild-tracking
2024-03-05 14:41:43 +03:00
Inex Code
71433da424
refactor: move systemd functions to utils
2024-03-05 11:55:52 +03:00
Inex Code
96f8aad146
Merge branch 'master' into system-rebuild-tracking
2024-03-04 10:54:43 +02:00
Houkime
f5d7666614
refactor(backups): remove excessive imports
2024-03-01 13:54:10 +00:00
Houkime
bf33fff20d
fix(backups): finish the autobackup job
2024-03-01 12:44:08 +00:00
Inex Code
bbec9d9d33
refactor: use ipaddress library for ip validation
2024-03-01 14:58:28 +03:00
Inex Code
a4327fa669
fix(dns): Ignore link-local IPv6 address
2024-03-01 03:21:31 +03:00
Inex Code
c63552241c
tests: Cover upgrade and rebuild task
2024-02-26 22:49:32 +03:00
Houkime
52f8e283be
fix(backups): fix wrong typing in autobackups
2024-02-23 16:45:59 +00:00
Houkime
4757bedc4e
test(backup): add tests for cache reloads
2024-02-13 14:12:41 +02:00
Houkime
bc0602bfcb
fix(backup): rework caching so that there are rarer api calls
2024-02-13 14:12:41 +02:00
Houkime
e13ad71a93
feature(backups): remove all json logic
2024-01-24 14:36:44 +00:00
Houkime
c38e066507
test(backups): separate autobackup tests to a file (was a bit of a mess)
2024-01-12 14:43:54 +00:00
Houkime
7ec62a8f79
fix(backups): do not autobackup disabled services
2024-01-12 14:35:15 +00:00
Inex Code
b6f436d8b3
refactor: Adapt API to the NixOS configuration changes
2024-01-10 15:05:10 +02:00
Houkime
8e21e6d378
feature(services): introduce 'modules' field in userdata and group services settings there
2024-01-08 13:12:27 +00:00
Houkime
d96739c9ae
test(system): remove rest system tests
2024-01-08 13:12:27 +00:00
Houkime
46cc3171ab
test(system): test generic shell calls
2024-01-08 13:12:27 +00:00
Houkime
4a580e9b7b
feature(system): better error handling for shell calls
2024-01-08 13:12:27 +00:00
Houkime
dcf6dd9ac5
test(users): delete rest user tests
2024-01-08 13:12:27 +00:00
Houkime
ab081f6fbc
test(users): delete redundant rest admin deletion tests
2024-01-08 13:12:27 +00:00
Houkime
e7c89e3e3f
test(users): delete a user and CHECK that it was deleted
2024-01-08 13:12:27 +00:00
Houkime
2e775dad90
fix(users): handle no admin name defined when adding a user
2024-01-08 13:12:27 +00:00
Houkime
c470ec45e8
test(users): test invalid usernames (and delete it from rest)
2024-01-08 13:12:27 +00:00
Houkime
2669e17c91
test(users): test adding users with missing (not just empty) fields
2024-01-08 13:12:27 +00:00
Houkime
e835173fea
fix(users): handle no admin case
2024-01-08 13:12:27 +00:00
Houkime
adcdbfb368
test(services): test mailserver dkim quirk
2024-01-08 13:12:27 +00:00
Houkime
fb15ef9388
test(service): rename service systemctl calltests
2024-01-08 13:12:27 +00:00
Houkime
6ade95bbf1
test(service): refactor systemctl calltests
2024-01-08 13:12:27 +00:00
Houkime
4b2eda25f6
test(service, backup): move dummy service fixtures to conftest.py
2024-01-08 13:12:27 +00:00
Houkime
bcbe1ff50c
refactor(dkim): do not use popen
2024-01-08 13:12:27 +00:00
Houkime
04e3ee821f
test(ssh): remove the rest of rest ssh tests bc redundant
2024-01-08 13:12:27 +00:00
Houkime
03feab76b0
test(ssh): user key storage test: removing user keys on undefined
2024-01-08 13:12:27 +00:00
Houkime
7377c6375a
test(ssh): user key storage test: removing
2024-01-08 13:12:27 +00:00
Houkime
0669dc117b
test(ssh): user key storage test: adding
2024-01-08 13:12:27 +00:00
Houkime
bc45a48af3
test(ssh): json storage of user keys : reading
2024-01-08 13:12:27 +00:00
Houkime
c5bb18215b
test(ssh): delete redundant ssh tests
2024-01-08 13:12:27 +00:00
Houkime
b120858fa1
test(ssh): parametrized removing keys
2024-01-08 13:12:27 +00:00
Houkime
ca4b3c972d
test(ssh): regular users
2024-01-08 13:12:27 +00:00
Houkime
946413615b
test(ssh): dealing with undefined users
2024-01-08 13:12:27 +00:00
Houkime
42d96bcd6d
test(ssh): remove rest user getting tests (they are covered by users tests
2024-01-08 13:12:27 +00:00
Houkime
16c2598e9b
test(ssh): parametrized testing of ssh key addition, existing and invalid
2024-01-08 13:12:27 +00:00
Houkime
65c2023366
test(ssh): parametrized testing of ssh key addition, more
2024-01-08 13:12:27 +00:00
Houkime
7c4c5929df
test(ssh): parametrized testing of ssh key addition
2024-01-08 13:12:27 +00:00
Houkime
b1eec1e37b
test(ssh): admin keys json storage tests
2024-01-08 13:12:27 +00:00
Houkime
f24aba8abb
test(ssh): admin keys deleting
2024-01-08 13:12:27 +00:00
Houkime
ac41cc00ce
test(ssh): admin keys getting
2024-01-08 13:12:27 +00:00
Houkime
e7075546c5
test(ssh): remove root key nonexistent
2024-01-08 13:12:27 +00:00
Houkime
8fc7796da0
test(ssh): remove root key
2024-01-08 13:12:27 +00:00
Houkime
cf2935938d
test(ssh): get root key when none
2024-01-08 13:12:27 +00:00