Commit Graph

865 Commits (def/nix-collect-garbage-endpoint)

Author SHA1 Message Date
Houkime 8e21e6d378 feature(services): introduce 'modules' field in userdata and group services settings there 2024-01-08 13:12:27 +00:00
Houkime 8e551a8fe0 refactor(services): use generic code for enabling and disabling 2024-01-08 13:12:27 +00:00
Houkime b8d02231cf fix(services): handle the async nature of moving. 2024-01-08 13:12:27 +00:00
Houkime 3080f5a18b feature(rest): remove rest 2024-01-08 13:12:27 +00:00
Houkime 02b10b5078 feature(auth): remove rest auth code 2024-01-08 13:12:27 +00:00
Houkime 3e1fbdd4aa feature(services): remove rest services code 2024-01-08 13:12:27 +00:00
Houkime 41cd876f57 feature(users): remove rest users code 2024-01-08 13:12:27 +00:00
Houkime 43d9d47aed feature(system): remove rest system code 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 2e775dad90 fix(users): handle no admin name defined when adding a user 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 bcbe1ff50c refactor(dkim): do not use popen 2024-01-08 13:12:27 +00:00
Houkime 2f25329c43 refactor(backup): remove a redundant constant 2024-01-08 13:12:27 +00:00
Houkime 1b520a8093 feature(ssh): change ssh settings from graphql 2024-01-08 13:12:27 +00:00
Houkime 9f04729296 test(services, system): untie dkim tests from rest 2024-01-08 13:12:27 +00:00
Houkime 9d3fd45c2c test(services): missing info on service enabled status returns False 2024-01-08 13:12:27 +00:00
Houkime ffc60fc8b4 test(services): use actual json enabling and disabling 2024-01-08 13:12:27 +00:00
Houkime 368ab22fbb fix(services): replace stray gitea reference with a generic identifier in deiable/enable 2024-01-08 13:12:27 +00:00
Houkime f5999516fa feature(services): better error reporting in disable and enable service 2024-01-08 13:12:27 +00:00
Houkime 0078ed0c3a refactor(services): delete xxenablexx functions from jitsi 2024-01-08 13:12:27 +00:00
Houkime c7be9c7427 refactor(services): delete is_enabled() from gitea 2024-01-08 13:12:27 +00:00
Houkime 6f035dc0db refactor(services): add default implementation to get_enabled 2024-01-08 13:12:27 +00:00
Houkime 708c5cbc98 refactor(services): delete enable/disable from gitea 2024-01-08 13:12:27 +00:00
Houkime e1083f3221 refactor(services): make a default implementation of enable/disable 2024-01-08 13:12:27 +00:00
Houkime 267cdd391b fix(backup): do not store maybe unpicklable service on the queue 2024-01-08 13:12:27 +00:00
Houkime 9a1d82ec12 test(service): somewhat support moves for dummy service 2024-01-08 13:12:27 +00:00
Houkime a12126f685 feature(service): error handling on moves 2024-01-08 13:12:27 +00:00
Houkime 9d7857cb3f fix(blockdevices): handle nested lsblk 2024-01-08 13:12:27 +00:00
Houkime 9a3800ac7b test(service): moving errors 2024-01-08 13:12:27 +00:00
Houkime 1e77129f4f test(service): restart 2024-01-08 13:12:27 +00:00
Houkime b9f3aa49bd test(service): enable-disable return values 2024-01-08 13:12:27 +00:00
Houkime 92612906ef test(service): enabled status get 2024-01-08 13:12:27 +00:00
Houkime 6e9d86e844 test(backup): break out dummy service fixture 2024-01-08 13:12:27 +00:00
Houkime 85c90105ea test(backup): ensure we use correct repo folder 2024-01-08 13:12:27 +00:00
Houkime d4b2ca14bb feature(backups): a task to autorefresh cache. Redis expiry abolished 2024-01-08 13:12:27 +00:00
Inex Code cbd3cafe0a chore: Bump version
continuous-integration/drone/push Build is failing Details
2023-12-25 10:42:18 +03:00
dettlaff 372eadd306 tests: fix test_parse_line
continuous-integration/drone/push Build is failing Details
2023-11-29 13:02:59 +04:00
Inex Code 6d09c7aa9b feat: Provide display names in DNS records
continuous-integration/drone/push Build is failing Details
2023-11-24 13:57:52 +03:00
Houkime 993b58d52d beauty(backup): remove stray comments and imports, format
continuous-integration/drone/push Build is failing Details
2023-11-20 11:29:42 +00:00
Houkime 4339c00058 test(backups): test the trimming task
continuous-integration/drone/push Build is failing Details
2023-11-17 15:53:57 +00:00
Houkime f1a452009a refactor(backups): only async snapshot trimming
continuous-integration/drone/push Build is failing Details
2023-11-17 15:39:21 +00:00
Houkime 5ac93c30ae refactor(backups): async quota setting 2023-11-17 15:22:21 +00:00
Houkime 25378273eb refactor(backups): also batch the forget_all_snapshots command 2023-11-17 14:48:41 +00:00
Houkime 615e962965 feature(backups): batched removals of snapshots 2023-11-17 14:36:11 +00:00
Houkime 96bff873a9 test(backups): use backup fixture (weird, i surely used it before) 2023-11-17 14:33:03 +00:00
dettlaff 03e6d45279 fix: final typos fix
continuous-integration/drone/push Build is failing Details
2023-11-15 16:47:04 +04:00
Inex Code c3cec36ad4 style: formatting
continuous-integration/drone/push Build is failing Details
2023-11-13 19:36:12 +03:00
Houkime e414f3b8fd fix(auth): fix timezone issues with recovery tokens
continuous-integration/drone/push Build is failing Details
2023-11-13 09:15:12 -07:00
dettlaff 3be5816f51 fix: del unused return from parse line
continuous-integration/drone/push Build is failing Details
2023-11-12 01:38:31 +04:00
dettlaff d31ad487eb fix: corrected from comment from pr
continuous-integration/drone/push Build is failing Details
2023-11-12 01:16:04 +04:00
Houkime 1bbb804919 test(auth): token tests clearer about timezone assumptions
continuous-integration/drone/push Build is failing Details
2023-11-10 17:40:52 +00:00
Houkime dd6f37a17d feature(auth): tz_aware recovery
continuous-integration/drone/push Build is failing Details
2023-11-10 17:10:01 +00:00
Houkime 8badb9aaaf refactor(auth): tz_aware expiration comparison 2023-11-10 13:31:12 +00:00
Houkime 8453f62c74 refactor(time): more time functions 2023-11-10 13:05:38 +00:00
Houkime 73a847f288 feature(time): timestamp parsers 2023-11-10 12:19:32 +00:00
Houkime b545a400c3 doc(jobs): document that we are tz-naive when storing jobs 2023-11-10 11:47:48 +00:00
Houkime 8caf7e1b24 fix(backups): do not infinitely retry automatic backup if it errors out 2023-11-10 10:20:27 +00:00
Houkime b7cd703eaa fix(tokens): missing timezone import
continuous-integration/drone/push Build is failing Details
2023-10-25 14:53:18 +00:00
Inex Code 829aca14be Merge branch 'master' into redis/connection-pool
continuous-integration/drone/push Build is failing Details
2023-10-24 19:25:36 +03:00
dettlaff c0f8b9026b fix: corrected from comment from pr
continuous-integration/drone/push Build is failing Details
2023-10-16 20:39:58 +04:00
dettlaff 98eef8d08e fix: tests, jobs.error return
continuous-integration/drone/push Build is failing Details
2023-10-12 02:40:47 +04:00
dettlaff 70a498d0e5 fix: missclick with Job jobs
continuous-integration/drone/push Build is failing Details
2023-10-12 02:26:27 +04:00
dettlaff f2ead0c77d fix: typos
continuous-integration/drone/push Build is failing Details
2023-10-12 02:18:29 +04:00
dettlaff 0503db9856 Merge branch 'def/nix-collect-garbage-endpoint' of git.selfprivacy.org:SelfPrivacy/selfprivacy-rest-api into def/nix-collect-garbage-endpoint
continuous-integration/drone/push Build is failing Details
2023-10-12 02:09:46 +04:00
dettlaff 3fbc93c998 tests: fix rename 2023-10-12 02:09:13 +04:00
dettlaff 5c42d7a907 refactor: problems from pr 2023-10-12 02:01:31 +04:00
Houkime 26c0a8fafe feature(jobs): set 1 hour ttl for successful autobackup jobs 2023-10-10 20:25:14 +03:00
Houkime 0912ac1831 feature(jobs): set ttl via method 2023-10-10 20:25:14 +03:00
Inex Code 07aaa21602 chore: bump version
continuous-integration/drone/push Build is failing Details
2023-10-09 12:45:22 +03:00
Inex Code cebb71ff4a feat(ssh): Add support for ecdsa keys
continuous-integration/drone/push Build is failing Details
2023-10-03 16:51:06 +03:00
Inex Code 62d5de0dd6 refactor(ssh): Remove unused add_root_ssh_key function 2023-10-03 16:41:09 +03:00
Inex Code 8b840d4c2c fix(backups): expose snapshot reason and set the default value
continuous-integration/drone/push Build is failing Details
2023-09-09 09:52:20 +03:00
Inex Code 39baa3725b Merge remote-tracking branch 'origin/master' into quotas
continuous-integration/drone/push Build is failing Details
2023-09-09 03:36:17 +03:00
Inex Code 450a998ea6 chore:bump version
continuous-integration/drone/push Build is failing Details
2023-09-09 03:32:57 +03:00
Inex Code dedd6a9cc9 refactor(backups): use restic-like rotation policy
continuous-integration/drone/push Build is failing Details
2023-09-09 03:26:41 +03:00
Houkime 56be3d9c31 fix(backup): trim auto-snapshots on setting the quotas
continuous-integration/drone/push Build is failing Details
2023-09-08 16:22:53 +00:00
dettlaff ec404464d8 Merge branch 'master' into def/nix-collect-garbage-endpoint
continuous-integration/drone/push Build is failing Details
2023-09-01 19:21:31 +04:00
Houkime 0dfb41a689 feature(backups): a task to autorefresh cache. Redis expiry abolished
continuous-integration/drone/push Build is failing Details
2023-09-01 10:41:27 +00:00
Inex Code ad9384c850 fix(graphql): backup quotas field typing
continuous-integration/drone/push Build is failing Details
2023-08-30 12:03:19 +03:00
Houkime 9fdc536f9f BROKEN(backups): hooking up quotas to API fails. AutobackupQuotas needs to be an input type, but if input type, it fails because it needs to be an Output type, which is not documented
continuous-integration/drone/push Build is failing Details
2023-08-28 18:24:29 +00:00
Houkime 0c04975ea4 flx(backups): commit forgotten time.py 2023-08-28 17:24:20 +00:00
Houkime 1fc47b049d refactor(backups): clean up caps code 2023-08-28 17:23:21 +00:00
Houkime 9207f5385c feature(backups): actual finegrained quotas 2023-08-28 17:02:45 +00:00
Inex Code 9db717c774 style: linting
continuous-integration/drone/push Build is failing Details
2023-08-25 19:28:37 +03:00
Inex Code ada89a2494 Merge branch 'master' into fix-restores-wrt-service-status
continuous-integration/drone/push Build is failing Details
2023-08-25 19:01:16 +03:00
Houkime 1333aad57d feature(backups): temporarily revert restore job status to created for inplace restore to run backup
continuous-integration/drone/push Build is failing Details
2023-08-23 14:35:03 +00:00
Houkime c68239044f feature(backups): report status text for restore jobs
continuous-integration/drone/push Build is failing Details
2023-08-23 14:18:33 +00:00
Houkime 02b03cf401 feature(backups): report the error text in a job 2023-08-23 14:02:07 +00:00
Houkime de52dffdda refactor(backups): a better backup-related service timeout error 2023-08-23 13:55:23 +00:00
Houkime 72535f8655 fix(backups): default timeout to 5 min for service starting and stopping in backup operations 2023-08-23 13:40:04 +00:00
Houkime 0a852d8b50 fix(backups): consider failing services MORE and not try to stop them 2023-08-23 13:39:12 +00:00
Inex Code f2c972ed5f chore: bump version
continuous-integration/drone/push Build is failing Details
2023-08-23 14:51:15 +03:00
Inex Code d6cf2abdc2 style: remove unused imports 2023-08-23 14:51:01 +03:00
Houkime b2c7e8b73a feature(backups): caps for autobackups
continuous-integration/drone/push Build is failing Details
2023-08-21 12:45:31 +00:00
Houkime 30b62c351a feature(redis): compatibility with str enums 2023-08-21 11:31:29 +00:00
Houkime 027a37bb47 feature(backup): remember the reason for making a snapshot 2023-08-21 11:11:56 +00:00
Houkime d621ca6449 refactor(backups): clean up unused mounting tools
continuous-integration/drone/push Build is failing Details
2023-08-14 12:50:45 +00:00
Houkime c89f9cf89d feature(backups): do not rely on mounting 2023-08-14 12:43:44 +00:00
Houkime 69f6e62877 test(backups): more checks regarding tmpdirs and mounting
continuous-integration/drone/push Build is failing Details
2023-08-14 11:59:44 +00:00
Houkime 2c9011cc87 fix(backups): robustness against stale locks: everything else
continuous-integration/drone/push Build is failing Details
2023-08-09 15:18:20 +00:00
Houkime 0eb70e1551 fix(backups): robustness against stale locks: snapshot sizing 2023-08-09 14:46:27 +00:00
Houkime 26ab7b4d7b fix(backups): robustness against stale locks: is_initted 2023-08-09 14:27:14 +00:00
Houkime eca4b26a31 fix(backups): robustness against stale locks: backing up 2023-08-09 13:47:18 +00:00
dettlaff 446220a9c5 fix: replace os to subprocess
continuous-integration/drone/push Build is failing Details
2023-08-07 17:38:44 +04:00
Houkime 752a0b807e feature(backups): lock and unlock at will
continuous-integration/drone/push Build is failing Details
2023-08-07 13:33:10 +00:00
dettlaff a316f8b910 tests: fix
continuous-integration/drone/push Build is failing Details
2023-08-07 16:56:35 +04:00
dettlaff be8d249a04 fix: do a redis reset() 2023-08-07 16:41:42 +04:00
Inex Code 52336b885d fix: check if repo is initted by checking retcode
continuous-integration/drone/push Build is failing Details
2023-08-04 14:08:23 +03:00
Inex Code ff70a3588e chore: bump version
continuous-integration/drone/push Build is failing Details
2023-08-04 12:57:31 +03:00
Inex Code e6189e4e73 Merge branch 'master' into backups-forget
continuous-integration/drone/push Build is failing Details
2023-08-04 12:46:08 +03:00
Inex Code f4263b0288 style: remove unused imports
continuous-integration/drone/push Build is failing Details
2023-08-02 08:54:18 +03:00
Inex Code f08eafc3d8 refactor(services): extract get_drive to the base Service class
continuous-integration/drone/push Build is failing Details
2023-08-02 08:51:42 +03:00
Inex Code a87889b252 refactor: Change Mail Server id from "mailserver" to "email"
Nix config uses "email" so we should too.
2023-08-02 07:41:55 +03:00
Houkime bba837530a feature(backups): expose forget to API 2023-07-28 10:40:40 +00:00
Inex Code 88af27a8ba chore: bump version
continuous-integration/drone/push Build is failing Details
2023-07-28 03:20:33 +03:00
Inex Code 641ab26069 fix(storage): fix root device detection and ignore iso9660
continuous-integration/drone/push Build is failing Details
2023-07-28 03:14:50 +03:00
Inex Code 6660e1d9d5 fix(services): ocserv and jitsi were returning wrong volumes too 2023-07-28 02:31:28 +03:00
Inex Code 3bff43a6bf fix(mailserver): Location of the "location" attribute was inconsistent 2023-07-28 02:18:05 +03:00
Houkime 00317cc7e4 test(backups): erase repos between tests
continuous-integration/drone/push Build is failing Details
2023-07-26 16:52:58 +00:00
Houkime cfa7f4ae59 feature(backups): add full repo erasure capability 2023-07-26 16:45:08 +00:00
Houkime ffec344ba8 test(backups): make the test repo overridable by envs
continuous-integration/drone/push Build is failing Details
2023-07-26 14:26:04 +00:00
Houkime aa7cc71557 feature(backups):add a function to set provider from env
continuous-integration/drone/push Build is failing Details
2023-07-26 11:54:17 +00:00
Houkime d664fcbdc4 refactor(jobs):track 100-on-finished as a progress update
continuous-integration/drone/push Build is failing Details
2023-07-21 13:06:18 +00:00
Houkime 26488aa12f fix(backup):force backup function to return same length ids as when getting snapshots
continuous-integration/drone/push Build is failing Details
2023-07-21 11:11:24 +00:00
Inex Code b01247bc55 refactor: remove legacy backups implementations
continuous-integration/drone/push Build is failing Details
2023-07-20 20:11:42 +03:00
Inex Code 413911849d refactor(backups): remove calls of legacy backups API
continuous-integration/drone/push Build is failing Details
2023-07-20 20:06:39 +03:00
Inex Code eafc7a412c fix: timezone awareness of automatic backup task
continuous-integration/drone/push Build is failing Details
2023-07-20 19:42:44 +03:00
Inex Code c9d20e8efd fix(backups): make datetimes from huey timezone aware
continuous-integration/drone/push Build is failing Details
2023-07-20 19:39:10 +03:00
Inex Code e0a5ecdd9d style: reformat 2023-07-20 19:37:01 +03:00
Inex Code 95dbd4fac2 chore: bump version 2023-07-20 19:35:35 +03:00
Inex Code 4b575b6138 fix(graphql): duplicate imports 2023-07-20 18:25:32 +03:00
Inex Code 0245d629fd refactor(backups): linting 2023-07-20 18:24:26 +03:00
Inex Code 2df448a4a9 fix(backups): Do not shut down the service during backup
continuous-integration/drone/push Build is failing Details
We do not want the user to expirience outages during automatic backups.
Generally, they are not even needed.
We should use hooks to service-specific tasks, such as
creating the database dump, so we don't have to shut down Postgres.
2023-07-20 17:11:02 +03:00
Houkime f4ac3d29a9 feature(backup):remove code for finegrained autobackup control
continuous-integration/drone/push Build is failing Details
2023-07-19 15:36:25 +00:00
Houkime 466160dbf9 feature(backup):disable finegrain control over services to back up 2023-07-19 15:36:25 +00:00
Inex Code 5253780cc8 style: linting of backups module 2023-07-19 15:59:51 +03:00
Inex Code 3067d353d8 fix(backups): Do not remove failsafe snapshot after recovery 2023-07-19 15:59:29 +03:00
Houkime fa53264136 refactor(backup):remove unused verify arg from do_restore
continuous-integration/drone/push Build is failing Details
2023-07-19 10:51:36 +00:00
Houkime a303e5ce37 Merge branch 'restic-rewrite' of https://git.selfprivacy.org/SelfPrivacy/selfprivacy-rest-api into restic-rewrite
continuous-integration/drone/push Build is failing Details
2023-07-19 10:35:30 +00:00
Inex Code 8b504993d0 fix(backups): backup strategies were unused
continuous-integration/drone/push Build is failing Details
2023-07-18 20:15:22 +03:00
Houkime 45011450c5 feature(backup):calculate needed space for inplace restoration
continuous-integration/drone/push Build is failing Details
2023-07-17 16:05:00 +03:00
Houkime 097cf50b37 fix(servers): hopefully fix moving 2023-07-17 16:05:00 +03:00
Houkime c53f35c947 feature(servers): set default timeout of server operations to 10 min 2023-07-17 16:05:00 +03:00
Houkime b001e198bf feature(backups): stop services before restores 2023-07-17 16:05:00 +03:00
Houkime 40ad1b5ce4 feature(backups): stop services before backups 2023-07-17 16:05:00 +03:00
Houkime a7427f3cb5 test(backups): do not store the status file in backupped folders 2023-07-17 16:05:00 +03:00
Houkime 86c2ae2c1f refactor(backups): make a StoppedService context manager 2023-07-17 16:05:00 +03:00
Houkime ea4e53f826 test(backups): make delay settable per dummyservice 2023-07-17 16:05:00 +03:00
Houkime e2b906b219 test(backups): test async service start n stop simulation 2023-07-17 16:05:00 +03:00
Houkime d33e9d6335 test(backups): simulating async service start n stop 2023-07-17 16:05:00 +03:00