Commit Graph
28 Commits
Author SHA1 Message Date
JamBalaya56562andClaude Opus 4.8 7da681ddee Return non-zero exit code from server-util run --wait on backup failures
`server-util run --wait` always exited 0 even when the backup finished
with warnings or errors, so scripts and CI could not detect a degraded or
failed backup. Map the parsed backup result to the process exit code,
mirroring the main Duplicati CLI (warnings = 2, errors = 3, fatal = 4),
and propagate a non-zero result from the command handler through to the
process exit code (previously only exceptions set it). Fixes #5870.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 00:42:28 +00:00
Kenneth Skovhede 92d6d666ee Add OCSP failure handling option
This updates the SSL/TLS validation to optionally ignore failures in OCSP/CRL list. If the revocation servers are offline or unavailable, the SSL requests will fail.

With the new option, `--ignore-revocation-failure`, it is now possible to ignore this class of errors and let the connections work anyway.

By default, this is off so we have the strictest possible security.

As part of this PR, there were a few places that did validation/override of certificates. With this change all calls route into the single `SslCertificateValidator` class so all certificate validations are done the same from ServerUtil, reporting modules and backends.
2026-06-27 11:43:28 +02:00
Kenneth Skovhede 98ce287522 Rename to fix warnings
Recent C# compilers warn if async methods are not suffixed with `Async`.

This PR fixes a number of such warnings.
2026-06-08 13:16:17 +02:00
Kenneth Skovhede c0f40e19ca Updated copyright year to 2026 across the project 2026-04-16 15:21:24 +02:00
9bbb3e86c1 Update Duplicati/CommandLine/ServerUtil/Commands/DeleteBackup.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-13 16:42:14 +02:00
Kenneth SkovhedeandGitHub 9146921e73 Update DeleteBackup.cs
Fixed stray comma
2026-04-13 15:47:53 +02:00
Wouter Tinus 7cb8d1055b Add DeleteBackup command to ServerUtil 2026-04-10 17:43:30 +02:00
Kenneth SkovhedeandGitHub 179fd4da47 Merge pull request #6653 from duplicati/feature/secret-provider-write-support
Initial implementation of write-support for SecretProviders
2025-12-05 15:23:32 +01:00
Kenneth Skovhede 1e4a1d3df3 Added support for settings override in imports
This PR adds the option to provide additional settings when importing a backup.

The ServerUtil has been expanded to support passing in the target url and backup passphrase when importing a backup.

Also clarified wording around the import passphrase as there are (at least) two passphrases related to imports.

This fixes #6640
2025-12-02 10:26:45 +01:00
Kenneth Skovhede 6d9826df06 Initial implementation of write-support for SecretProviders
This updates the MacOS secret provider to use PInvoke for a more stable API than the secrets tool that was used before.
2025-11-30 23:01:57 +01:00
David Kartchner afe606edb7 Display status after running backup with ServerUtil 2025-11-07 09:54:29 -07:00
Kenneth SkovhedeandGitHub b732374d87 Merge pull request #6473 from duplicati/feature/improve-non-persisted-login
Implemented a nonce for refresh tokens
2025-08-08 13:09:04 +02:00
Kenneth Skovhede dc3b7fc56c Add detailed output to backup lists
This PR adds a `--detailed` flag to ServerUtil that reports additional data for each backup. The JSON output now also includes the schedule and any metadata.
2025-08-08 10:52:45 +02:00
Kenneth Skovhede eef7eb3191 Fixed server-util wait with refresh token.
This fixes #5904
2025-08-08 08:29:52 +02:00
Kenneth SkovhedeandGitHub adbad3a4b2 Merge branch 'master' into feature/fix-wait-timeout-issue 2025-05-12 15:34:08 +02:00
Kenneth Skovhede 44653f506e Fixed retries when token times out.
This fixes #5904
2025-05-12 14:44:03 +02:00
Kenneth Skovhede 7fb4391d67 Changed logic for scheduling requested backups to follow queue order by default 2025-05-12 13:49:28 +02:00
Marcelo C. d15e398e81 Added machine-readable output for serverutil commands
This comes from suggestion on issue https://github.com/duplicati/duplicati/issues/6056

The chosen argument was --json which produces a json that wraps the result with extended properties such as in example:

``
{
  "Timestamp": "2025-03-28T15:47:01.3368160-03:00",
  "UnixTimestamp": 1743187621,
  "Command": "import",
  "Success": true,
  "ExitCode": 0,
  "Messages": [
    "Importing backup configuration from ../2-firstbacku.json",
    "Connecting to http://127.0.0.1:8200/...",
    "No database found in../data/",
    "Imported \"firstbackup (5)\" with ID 8"
  ],
  "Exceptions": [],
  "Imported": {
    "Id": "8",
    "Name": "firstbackup (5)"
  }
}
``

The documentation will reflect all commands and schemas as this makes its way into Canary
2025-03-28 16:08:45 -03:00
Kenneth SkovhedeandGitHub e9aa8717fc Improve ServerUtil (#5860)
* Improve the ServerUtil

Added `status` command to show server state

* Added support for waiting on a backup after starting it
2025-01-09 14:48:00 +01:00
Kenneth SkovhedeandGitHub 9464caf622 Feature/update license 2025 (#5851)
* Fixed some minor whitespace issues

* Updated all copyright to 2025
2025-01-07 09:40:39 +01:00
Kenneth Skovhede feeda8d9dc Formatted the output for generating a forever token 2024-12-12 11:07:40 +01:00
Kenneth Skovhede 7d4f9ffab3 Implemented a forever-token feature 2024-12-12 08:59:59 +01:00
Kenneth Skovhede 8250a5befa Refactored SecretProviderHelper to replace in Uri instances instead of raw string.
This fixes some issues with URL encoding/decoding.
Due to the legacy class `Duplicati.Library.Utility.Uri` there are two replacements done.
2024-11-04 15:57:56 +01:00
Kenneth Skovhede 1ac26d7600 Added support for secret provider in server-util 2024-10-24 16:52:44 +02:00
Kenneth Skovhede e3579312e2 Added healt checks to server.
Added health command to server-util.
This fixes #5560
2024-09-17 14:01:08 +02:00
Kenneth Skovhede 1e6eea5758 Added command to export configurations from the server 2024-09-11 16:41:25 +02:00
Kenneth Skovhede e3a8f34a67 Fixed issue with not finding backup by name.
Improved error message if it can be extracted from the server response.
2024-09-03 22:02:51 +02:00
Kenneth Skovhede 735b4020eb Implemented duplicati-server-util for sending various commands to a running server.
This tool replaces `ConfigurationImporter` and partially replaces `duplicati_client`.
This fixes #5474
2024-08-26 20:00:13 +02:00