Commit Graph

20 Commits

Author SHA1 Message Date
Frederik Ring
7a705a46f0 Stop deploying docs on push to main branch
The current behavior is prone to introducing unwanted
drift between docs and latest image. Change deployment
to happen on release only, and leave a workflow_dispatch
for when smaller fixes need to go out without a release.
2025-11-12 11:28:32 +01:00
Jean Michel
60482b2045 Add label to optionally skip container restart after backup (#659)
* Add label to optionally skip container restart after backup

* Add new mutually exclusive label instead

* Simplified `hasLabel`

* removed unnecessary else block

* added new test-case `no-restart` based on test-case `local`

* removed invalid README entry

* added new section to how-tos

* Added configuration reference
2025-11-01 10:52:56 +01:00
Esteban Thilliez
f76d4fd814 Add optional jittering before any backup actions (#654)
* NEW: Add optional jittering before backing up

* Removed deprecated rand seeding

* Updated BACKUP_JITTER config option doc

* Moved jittering logic from script init to runScript

* Changed formatting of jittering log message
2025-10-17 08:37:14 +02:00
Frederik Ring
bebe3484c7 Update shoutrrr version to v0.10.3 (#655) 2025-10-17 08:37:02 +02:00
Esteban Thilliez
2d777ad76a Ensure destination exists when using SSH storage (#646)
* Ensure destination exists when using SSH storage

* Import "errors"

* New feature doc
2025-10-08 07:25:19 +02:00
Frederik Ring
614d325c5a Use forked and active shoutrrr package (#643)
* Use forked and active shoutrrr package

* Use versioned documentation links
2025-10-08 07:09:55 +02:00
Luiz Guilherme da Silva Junior
a5579b5abb feat: Add Google Drive storage backend with custom endpoint support (#613)
* feat: Add Google Drive storage backend with custom endpoint support

- Implement Google Drive storage backend using service account authentication
- Add support for custom Google Drive API endpoints for testing
- Include comprehensive test setup with mock services
- Add configuration options for Google Drive credentials and folder ID
- Update documentation with Google Drive configuration examples

* remove debug messages

* Improve tests

* Add mounting tip on documentation

* Replace deprecated lib usage

* Fix identation

* Fix googledrive tests

* Fix googledrive support for _FILE credentials

* Remove googledrive test unecessary echos
2025-08-04 20:38:57 +02:00
Frederik Ring
c735962bb9 Link to Dropbox from config reference is outdated (#562)
Closes #561
2025-03-26 12:06:42 +01:00
Frederik Ring
89655e09ad Config reference should always use default values (#549)
* Config reference should always use default values

* Cut down proliferation of conventions in config reference
2025-02-28 17:31:07 +01:00
Frederik Ring
cbbaa6ba7a Support passing standard ssh keys to age encryption (#530)
* Support passing standard ssh keys to age encryption

* Cover SSH keys in age test case
2025-02-07 13:43:41 +01:00
Frederik Ring
40b12b9d07 Configuration reference on age encryption is lacking 2025-02-04 16:34:10 +01:00
Lennart
8a64da4b0b Feature: PGP Asymmetric Encryption (#456)
* feat: asym encryption

* tests

* docs

* refactor

* logs & errs

* comment

* Update docs/reference/index.md

use correct env var in example

Co-authored-by: Frederik Ring <frederik.ring@gmail.com>

* Update cmd/backup/encrypt_archive.go

use errwarp for initial error msg

Co-authored-by: Frederik Ring <frederik.ring@gmail.com>

* rm orphaned code in encryption functions

* inline readArmoredKeys

* naming -GPG_PUBLIC_KEYS- to GPG_PUBLIC_KEY_RING

* add eror handling for closing func

* use dynamically generated keys for testing

* rm explicit gpg-agent start

* rm unnecessary private_key export

* pass PASSPHRASE correctly to the decryption command

* capture defer errors

* log & err msg

---------

Co-authored-by: Frederik Ring <frederik.ring@gmail.com>
2024-08-11 10:11:23 +02:00
J. Zebedee
f97ce11734 Add "none" compression type (#457)
* Add "none" compression type

* Add "none" compression to docs

* Use passThroughWriteCloser for "none" compression

* Add test for none compression

---------

Co-authored-by: Frederik Ring <frederik.ring@gmail.com>
2024-08-11 10:11:09 +02:00
Frederik Ring
336e12f874 Add support for Azure storage access tiers (#452) 2024-08-09 15:37:27 +02:00
Frederik Ring
c4eeaad813 Bump shoutrrr to version 0.8 (#450) 2024-07-31 21:58:24 +02:00
Frederik Ring
baf34ec1f7 Allow authentication using connection string when targeting Azure Blob Storage (#383)
* Allow authentication using connection string when targeting Azure Blob Storage

* Bail on ambiguous configuration
2024-03-08 20:23:30 +01:00
pixxon
1d45062100 Move cron scheduling inside application (#338)
* Move cron scheduling inside application

* Make envvar a fallback and check for errors

* Panic significantly less

* propagate error out of runBackup

* Add structured logging

* FIx error propagation to exit

* Enable the new scheduler by default

* Review fixes

* Added docs and better error propagation
2024-02-12 16:04:12 +01:00
Frederik Ring
c3daeacecb Improve Swarm support (#333)
* Query for labeled services as well

* Try scaling down services

* Scale services back up

* Use progress tool from Docker CLI

* In test, label both services

* Clean up error and log messages

* Document scale-up/down approach in docs

* Downgrade Docker CLI to match client

* Document services stats

* Do not rely on PreviousSpec for storing desired replica count

* Log warnings from Docker when updating services

* Check whether container and service labels collide

* Document script behavior on label collision

* Add additional check if all containers have been removed

* Scale services concurrently

* Move docker interaction code into own file

* Factor out code for service updating

* Time out after five minutes of not reaching desired container count

* Inline handling of in-swarm container level restart

* Timer is more suitable for timeout race

* Timeout when scaling down services should be configurable

* Choose better filename

* Reflect changes in naming

* Rename and deprecate BACKUP_STOP_CONTAINER_LABEL

* Improve logging

* Further simplify logging
2024-01-31 12:17:41 +01:00
Frederik Ring
2252c26edf Add note about potential leading and trailing whitespace in Docker secrets 2023-10-29 07:53:55 +01:00
Frederik Ring
0bb94a2f56 Docs site (#269)
* Set up documentation site using jekyll

* Add workflow for deploying docs

* Ini formatting is hard to read

* Add instructions on how to run docs locally

* Work through docs

* Remove content from README

* Miscellaneous fixes

* Fix artifact upload
2023-09-16 11:54:39 +02:00