Commit Graph
13 Commits
Author SHA1 Message Date
Marcelo C. def60a7e70 Adding B2 to CI
- Added B2 Test
- Updated ReadMe with backends status and variables
2025-02-18 15:34:22 -03:00
marceloduplicatiandGitHub f38d9a3d7e Terminal Adding CIFS to CI (#5971)
Adding CIFS to CI
2025-02-13 17:01:58 -03:00
Marcelo C. 24828d633b CIFS CI is not live, its in development 2025-02-13 15:53:46 -03:00
Marcelo C. c05ca31d6b Adding backend CI status on readme 2025-02-13 15:51:39 -03:00
Kenneth SkovhedeandGitHub f7b7555e87 Fixes for tests (#5918)
* Two small test fixes

* Ignore exceptions when comitting an empty transaction

* Attempt to fix FTP connection issue

* Unified test by having a single download function.
Added DNS probing call to attempt fixing sporadic DNS errors.

* Fixed argument order

* Avoid creating temp file during tests, if not needed
2025-01-28 08:55:28 +01:00
Marcelo C. 16627af766 Fixing the port range allocated for FTP tests 2025-01-27 14:06:50 -03:00
Kenneth SkovhedeandGitHub 997891525a Updated license-updater to update csproj files (#5898)
* Updated license-updater to update csproj files

* License updates
2025-01-22 21:04:19 +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
marceloduplicatiandGitHub 99ee234640 Primary functionality implemented for CIFS (#5780)
* Primary functionality implemented for CIFS

This will add CIFS support to Duplicati.

One of the advantages is that the resource does not need to be mounted as the backend connects and authenticates directly to the resource via TCP/or Netbios over TCP.

The authentication supported is domain/username/password. At present integrated Windows authentication is not supported.

This implementation relies on SMBLibrary library (https://github.com/TalAloni/SMBLibrary).

* Fixes to XML documentation

* Implementing single CIFS connection + Fix on PutAsync

Single CIFS connection to avoid re-authentication on every operation.
Fix to PutAsync which only because apparent after file sizes were larger than _smb2Client.MaxWriteSize

* Adding CI tests for CIFS

The CI test for CIFS is self contained, requiring no environment variables. Also updated README.
2025-01-06 14:22:23 +01:00
Kenneth SkovhedeandGitHub 447c2b3238 Feature/improve ci testing (#5781)
* Added options to insert delays in backend tester

* Added wait delays to Azure and GoogleDrive to see it the CI is more stable with small delays

* Added more debug output to the backend tester

* Fixed dropbox reporting OAuth quota errors, when it is likely Dropbox API quota errors

* Implemented exception detection on AzureBlob backend

* Also showing sleep times in output

* Fixed a bug with the dropbox quota response

* Fixed error message to report correct number of files

* Fixed suppressed warning
2024-12-20 16:10:08 +01:00
Marcelo C. 248de1e72d Adding pCloud CI tests
# pCloud Backend Tester Behavior Investigation

## Overview
This is a draft PR investigating inconsistent behavior between normal Duplicati operation and the BackendTester tool when using the pCloud backend. GitHub Actions changes are intentionally excluded pending resolution of these issues.

## Current Behavior
1. **Normal Operation:**
   - Backups with pCloud on Duplicati work successfully
   - No warnings or errors are reported

2. **BackendTester Issues:**
   When `--disable-streaming-transfers` is **not** present, the following issues occur:
   - Upload failures with `NotSupportedException`
   - Files appear missing after successful upload
   - Download verification failures
   - Deletion errors for uploaded files

## Technical Details

### Upload Errors
```
Uploading file 0, 1,187 KB ... Failed to upload file 0
Error message: System.NotSupportedException: Specified method is not supported.
at Duplicati.CommandLine.BackendTester.NonSeekableStream.set_Position(Int64 value) in /_/Duplicati/CommandLine/BackendTester/NonSeekableStream.cs:line 50
at Duplicati.Library.Backend.pCloudBackend.PutAsync(String remotename, Stream input, CancellationToken cancellationToken) in /_/Duplicati/Library/Backend/pCloud/pCloudBackend.cs:line 253
at Duplicati.Library.Utility.Utility.Await(Task task) in /_/Duplicati/Library/Utility/Utility.cs:line 1478
at Duplicati.CommandLine.BackendTester.Program.Uploadfile(String localfilename, Int32 i, String remotefilename, IBackend backend, Boolean disableStreaming, Int64 throttle)
in /_/Duplicati/CommandLine/BackendTester/Program.cs:line 522, remote name: OxHqszSAo69UcPCPLdyJCXm
```

### Verification and File List Errors
```
Verifying file list ...
*** File with name OxHqszSAo69UcPCPLdyJCXm was uploaded but not found afterwards
*** File with name g7PSb3WOAHkKMZ-V2baVpBxLFR4MYMZRzDo- was uploaded but not found afterwards
```

### Download Errors
```
Downloading file 16 ... failed
*** Error: Duplicati.Library.Interface.FileMissingException: File not found.
 at Duplicati.Library.Backend.pCloudBackend.GetFileId(String filename) in /`/Duplicati/Library/Backend/pCloud/pCloudBackend.cs:line 317
 at Duplicati.Library.Backend.pCloudBackend.GetAsync(String remotename, Stream output, CancellationToken cancellationToken) in /_/Duplicati/Library/Backend/pCloud/pCloudBackend.cs:line 345
 at Duplicati.Library.Utility.Utility.Await(Task task) in /_/Duplicati/Library/Utility/Utility.cs:line 1478
 at Duplicati.CommandLine.BackendTester.Program.Run(List`1 args, Dictionary`2 options, Boolean first) in /_/Duplicati/CommandLine/BackendTester/Program.cs:line 372
Checking hash ... failed
*** Downloaded file was corrupt
```

### Deletion Errors
```
Deleting files...
*** Failed to delete file OxHqszSAo69UcPCPLdyJCXm, message: Duplicati.Library.Interface.FileMissingException: The requested file does not exist
 at Duplicati.Library.Backend.pCloudBackend.DeleteAsync(String remotename, CancellationToken cancellationToken) in /_/Duplicati/Library/Backend/pCloud/pCloudBackend.cs:line 402
 at Duplicati.CommandLine.BackendTester.Program.Run(List`1 args, Dictionary`2 options, Boolean first) in /_/Duplicati/CommandLine/BackendTester/Program.cs:line 407
*** Failed to delete file g7PSb3WOAHkKMZ-V2baVpBxLFR4MYMZRzDo-, message: Duplicati.Library.Interface.FileMissingException: The requested file does not exist
```

## Questions
1. Is it expected that BackendTester exits with return code 0 despite these errors?
2. Could this indicate an issue with either:
   - The BackendTester tool implementation
   - The pCloud backend implementation
   - The interaction between these components

## Additional Context
- These issues only appear in BackendTester scenarios
- Regular Duplicati operations with pCloud remain unaffected
- All errors appear related to file streaming/seeking behavior

Would appreciate insights on whether this is expected behavior or indicates a deeper issue that needs addressing.
2024-11-26 11:28:21 +01:00
Marcelo Ceccon 265cf205ca Adding escaping to environment variable 2024-10-30 13:04:55 +01:00
Marcelo Ceccon 1189bd2fb1 Adding Live backend tests
These tests are not unit tests but actual backup tests to backends (both cloud and self hosted containers).
2024-10-30 09:09:17 +01:00