Skip to content

Releases: creativeprojects/resticprofile

v0.26.0

20 Feb 20:55
2ab1f3a
Compare
Choose a tag to compare

🦆 Second time lucky February release 🚀

🆕 A lot of pre-built binaries have been added on this release. This is to align with the list of pre-built binaries provided by restic

Otherwise this is mostly a maintenance release with a few fixes:

  • fixes multiple backup profiles exporting prometheus files to node_exporter
  • fix missing fields in the show command
  • weekly docker image build (rebuilt under the same version tag, and as latest)
  • restrict the copy command to a list of snapshots in the configuration

Changelog

  • 2ab1f3a Add pre-built binary targets to release pipeline (#324)
  • 233e4b8 Add prometheus label to build info (#319)
  • b1b03db Change priority warning message (#310)
  • 9eba431 Fix missing fields in show command (#315)
  • a9273f8 Merge pull request #312 from creativeprojects/nightly
  • 15004f9 Restrict copy command to a list of snapshots (#291)
  • 1c076dc add separate goreleaser config for rebuilding the docker image only (#309)
  • bbb3760 add snapshot build to docker hub
  • 8aebd28 publish docker images and manifest manually (#313)

v0.25.0

08 Feb 17:49
952380f
Compare
Choose a tag to compare

💖 February release 💝

⚠️ Potential breaking change

The prometheus library used to send metrics to the proxy using protobuf.
By default it's now using the more widely used text format.

If you have any issue sending metrics to your proxy, you can revert to the previous behaviour by adding this option to your profile (it's not a global option)

my_profile:
  prometheus-push-format: protobuf

More information about the different formats: https://prometheus.io/docs/instrumenting/exposition_formats/#exposition-formats

New in this version

  • fix for CVE-2023-48795
  • new option prometheus-push-format with values text or protobuf (#281)
  • new option to set log output in global section (#277)
  • more control over the default systemd service files (#267)
  • and bug fixes!

Thanks to all our contributors for the good work!

Changelog

  • 765c2af Add prometheus-push-format to allow selecting text format (#281)
  • ae9554a Pass context to own commands and profile runner (#280)
  • fccc05b Remove rclone binary in make clean target (#283)
  • 0871d28 Trying new configuration for CodeQL (#306)
  • 1317f60 Upgrade packages (#307)
  • 63f8faf chore: prep next release & allow deployment to fail on PR
  • 3d72803 chore: various fixes (#285)
  • 952380f doc: add information about windows path in variables
  • f346571 doc: add various missing information (#278)
  • 1b3292c logging: allow to setup default log output in global (#277)
  • 99484bf macOS: create LaunchAgents folder if it doesn't exist
  • 37dcf84 profile: support source with "-" (dash) prefix (#276)
  • a1b7840 systemd drop-ins support, option to wait for network-online.target (#267)

v0.24.0

24 Oct 16:12
bcfaaa7
Compare
Choose a tag to compare

🎃 October release 👻

  • upgrade dependencies to fix CVE-2023-3978, CVE-2023-39325 and CVE-2023-44487
  • fix the broken documentation (some tabs were not accessible)
  • can now stop the wait for a lock (restic or resticprofile lock). Before the fix the CTRL-C or other signal was ignored until the lock was acquired or timed out.
  • resticprofile is now available on scoop! thanks @hgraeber
  • detect if the host is running on battery and cancel an action depending on how much battery is left - see schedule section
  • bug fixes (see changelog)

Changelog

v0.23.0

11 Aug 21:54
1024189
Compare
Choose a tag to compare

🌞 New summer edition 🌻

This release mostly fixes a few regression from version 0.21.0 and adds a handful of new features:

  • Allow to set base-dir and source-dir in a profile so you can start resticprofile from any current folder
  • Allow to set keep-tag, tag & group-by as empty string
  • Support for restic v0.16 new flags

Thanks to all the contributors for the great work 👍🏻

Changelog

  • b0767ad Added {{ "data" | base64 }} & {{ "data" | hex }} (#213)
  • b00c8a0 Allow to set a base-dir inside the profile (#183) (#192)
  • 4b2ea31 Fix 194: Allow to set "keep-tag", “tag” & “group-by” as empty string (#220)
  • 10057d4 Fix 218: Args filter must not remove paths (#222)
  • 0c8c985 Fix 223, 230: Escape args and absolute restic path for pwsh (#224)
  • 2bf0d28 Fix 242: iexclude-file not converted to abs path (#243)
  • 6cbfdb3 Fix links for versioned JSON schema files (#244)
  • fc66fab Fix schedule tests (#236)
  • 304e418 Fix: Do not add --tag for tag: true (#221)
  • 82fccdb Restic: Add restic v16 release (#238)
  • 3f4e0bf Restic: Fixed unit tests for restic v16 (#239)
  • ba9297a Retention: Align host filter with "backup" (#227)
  • 347501d Schedule: Capture os.Environ on schedule creation (#212)
  • 9c05157 Support lock-wait with --lock-retry in restic 0.16 (#240)
  • 6cc332d Support build when GOPATH is unset / fix mockery build warning (#234)
  • 3476fbc Variables: Allow to escape "$" with "$$" (#216)

v0.22.0

06 May 15:20
ddf9deb
Compare
Choose a tag to compare

⚠️ Breaking change

The default value of the job tag on prometheus gateway push has changed from command to profile.command.
But don't worry: you can easily revert back to the original value by adding this option in your configuration:

prometheus-push-job: "${COMMAND}"

Fixes:

  • Complicated scheduling on Windows was sometimes setting up a random delay before starting a job

Changelog

  • c00fc9a New option to specify Prometheus Pushgateway job name (#193)
  • 0c7405f Templates: Add map/splitR/contains/matches (#197)
  • 7545bbf Upgrade task scheduler library (#206)

v0.21.1

05 Apr 20:44
b6a98ef
Compare
Choose a tag to compare

Bug fixes!

This small release fixes two regression bugs introduced in version 0.21.0

  • the ~ was no longer replaced by the user's home directory for some flag (repository and others...)
  • environment variables were no longer replaced by their value for some flag (repository and others...)

Thanks @jkellerer for the quick fixes 😉 👍🏻

New features from v0.21.0

This release adds a verification of all the flags permitted by restic. Only the flags compatible with your version of restic will be generated (prior to this version, any flag like unknown-flag would end up on the restic command line as --unknown-flag.

Also this version generates a JSON schema: this is the configuration schema which can auto-complete options, and verify that your configuration is correct. It works with any compatible editor for the JSON, TOML and YAML configuration file format. Thanks @jkellerer for the awesome work on this 🎉 . More information here.

Other nice feature is the introduction of the help command which works for both all the resticprofile and restic commands and flags. Try it out!

Changelog

v0.21.0

03 Apr 18:28
826b738
Compare
Choose a tag to compare

This is a great milestone for resticprofile 🥳

This release adds a verification of all the flags permitted by restic. Only the flags compatible with your version of restic will be generated (prior to this version, any flag like unknown-flag would end up on the restic command line as --unknown-flag.

Also this version generates a JSON schema: this is the configuration schema which can auto-complete options, and verify that your configuration is correct. It works with any compatible editor for the JSON, TOML and YAML configuration file format. Thanks @jkellerer for the awesome work on this 🎉 . More information here.

Other nice feature is the introduction of the help command which works for both all the resticprofile and restic commands and flags. Try it out!

And as usual, a lot of bug fixes 😉

Changelog

v0.20.0

23 Jan 18:39
7439620
Compare
Choose a tag to compare

Not too many new features in this release, but I wanted to build a new docker image with the new restic 0.15.0

Improvements

  • Adds shell command hooks to the following additional commands: dump, find, ls, mount, restore, snapshots, stats and tag.
  • Docker image now contains ssh (to allow sftp repository), curl, tzdata and ca-certificates

Changelog

v0.19.0

11 Nov 21:24
01bbd78
Compare
Choose a tag to compare

New version 0.19.0 of resticprofile!

With:

  • New help system showing all flags from resticprofile and restic. Just type resticprofile help backup and see (thanks @jkellerer)
  • copy command now has run-before, run-after, run-after-fail and run-finally targets. Also more targets are now available for backup and for a profile. See the documentation.
  • groups of profiles can keep running after a profile failed (this is a global settings)
  • Prevent your system from idle sleeping (Windows, macOS, and unix type OS using systemd)
  • May contain nuts

Changelog

  • c360880 Add --help to own commands (e.g. generate --help) (#139)
  • 1edf995 Add last backup time to prometheus metrics (#132)
  • 8a70e7b Config: Add run before/after/fail to more restic commands than backup (#138)
  • 419e66c Continue profile in group on error (#149)
  • a880b44 Fixes zsh completion script (use of outdated CLI) (#150)
  • 49c4920 Prevent system from idle sleeping (#140)
  • d4c1032 add devcontainer config
  • 0c43c2c chore: upgrade packages

v0.18.0

29 Aug 19:14
e9b4650
Compare
Choose a tag to compare

Following the release of the long awaited restic 0.14.0, here’s a new resticprofile!

A few big features were introduced in this version:

  • HTTP hooks using a similar syntax to command hooks but sending HTTP messages to monitoring platforms
  • Better support of the new-ish copy command
  • Addition of mixins on configuration file v2 (in preview)
  • Ability to choose your preferred shell on Windows (cmd, powershell or bash)
  • Send resticprofile logs to a syslog server
  • Add armv8 (arm64) CPU target to docker images
  • Upgrade to restic 0.14.0 in docker image
  • Add rclone to docker image
  • Also search for a configuration file in the resticprofile program folder on Windows (to be used in portable mode)

Changelog