rclone/fstest/test_all/config.yaml
nielash 2bebbfaded bisync: add to integration tests - fixes #7665
This change officially adds bisync to the nightly integration tests for all
backends.

This will be part of giving us the confidence to take bisync out of beta.

A number of fixes have been added to account for features which can differ on
different backends -- for example, hash types / modtime support, empty
directories, unicode normalization, and unimportant differences in log output.
We will likely find that more of these are needed once we start running these
with the full set of remotes.

Additionally, bisync's extremely sensitive tests revealed a few bugs in other
backends that weren't previously covered by other tests. Fixes for those issues
have been submitted on the following separate PRs (and bisync test failures will
be expected until they are merged):

- #7670 memory: fix deadlock in operations.Purge
- #7688 memory: fix incorrect list entries when rooted at subdirectory
- #7690 memory: fix dst mutating src after server-side copy
- #7692 dropbox: fix chunked uploads when size <= chunkSize

Relatedly, workarounds have been put in place for the following backend
limitations that are unsolvable for the time being:

- #3262 drive is sometimes aware of trashed files/folders when it shouldn't be
- #6199 dropbox can't handle emojis and certain other characters
- #4590 onedrive API has longstanding bug for conflictBehavior=replace in
	server-side copy/move
2024-03-27 10:50:14 -04:00

465 lines
12 KiB
YAML

tests:
- path: backend
addbackend: true
nobinary: true
short: true
- path: fs/operations
fastlist: true
- path: fs/sync
fastlist: true
- path: cmd/bisync
- path: vfs
- path: cmd/serve/restic
localonly: true
- path: cmd/serve/docker
localonly: true
- path: cmd/selfupdate
localonly: true
backends:
- backend: "local"
remote: ""
fastlist: false
- backend: "b2"
remote: "TestB2:"
fastlist: true
listretries: 5
ignore:
# This test fails because B2 versions make the empty bucket undeleteable.
# It isn't possible to turn off versions, and setting hard_delete doesn't stop
# versions being made on overwrite.
- TestRmdirsNoLeaveRoot
- backend: "crypt"
remote: "TestCryptDrive:"
fastlist: true
ignore:
- TestCopyFileMaxTransfer
- backend: "crypt"
remote: "TestCryptSwift:"
fastlist: false
## chunker
- backend: "chunker"
remote: "TestChunkerLocal:"
fastlist: true
- backend: "chunker"
remote: "TestChunkerNometaLocal:"
fastlist: true
- backend: "chunker"
remote: "TestChunkerChunk3bLocal:"
fastlist: true
maxfile: 6k
- backend: "chunker"
remote: "TestChunkerChunk3bNometaLocal:"
fastlist: true
maxfile: 6k
- backend: "chunker"
remote: "TestChunkerChunk3bNoRenameLocal:"
fastlist: true
maxfile: 6k
- backend: "chunker"
remote: "TestChunkerMailru:"
fastlist: true
ignore:
- TestApplyTransforms
- backend: "chunker"
remote: "TestChunkerChunk50bMailru:"
fastlist: true
maxfile: 10k
ignore:
- TestApplyTransforms
- backend: "chunker"
remote: "TestChunkerChunk50bYandex:"
fastlist: true
maxfile: 1k
- backend: "chunker"
remote: "TestChunkerChunk50bBox:"
fastlist: true
maxfile: 1k
- backend: "chunker"
remote: "TestChunkerS3:"
fastlist: true
- backend: "chunker"
remote: "TestChunkerChunk50bS3:"
fastlist: true
maxfile: 1k
- backend: "chunker"
remote: "TestChunkerChunk50bMD5HashS3:"
fastlist: true
maxfile: 1k
- backend: "chunker"
remote: "TestChunkerChunk50bSHA1HashS3:"
fastlist: true
maxfile: 1k
- backend: "chunker"
remote: "TestChunkerOverCrypt:"
fastlist: true
maxfile: 6k
- backend: "chunker"
remote: "TestChunkerChunk50bMD5QuickS3:"
fastlist: true
maxfile: 1k
- backend: "chunker"
remote: "TestChunkerChunk50bSHA1QuickS3:"
fastlist: true
maxfile: 1k
## end chunker
- backend: "combine"
remote: "TestCombine:dir1"
fastlist: false
## begin compress
- backend: "compress"
remote: "TestCompress:"
fastlist: false
- backend: "compress"
remote: "TestCompressSwift:"
fastlist: false
- backend: "compress"
remote: "TestCompressDrive:"
fastlist: false
- backend: "compress"
remote: "TestCompressS3:"
fastlist: false
## end compress
- backend: "drive"
remote: "TestDrive:"
fastlist: true
ignore:
# Test with CutoffModeHard does not result in ErrorMaxTransferLimitReachedFatal
# because googleapi replaces it with a non-fatal error
- TestCopyFileMaxTransfer
- backend: "dropbox"
remote: "TestDropbox:"
fastlist: false
ignore:
# This test doesn't work on a standard dropbox account because it
# tries to set the expiry of the link
- TestIntegration/FsMkdir/FsPutFiles/PublicLink
# - backend: "filefabric"
# remote: "TestFileFabric:"
# fastlist: false
# extratime: 2.0
- backend: "googlecloudstorage"
remote: "TestGoogleCloudStorage:"
fastlist: true
- backend: "googlecloudstorage"
remote: "TestGoogleCloudStorage,directory_markers:"
fastlist: true
- backend: "googlephotos"
remote: "TestGooglePhotos:"
tests:
- backend
- backend: "hidrive"
remote: "TestHiDrive:"
fastlist: false
- backend: "imagekit"
remote: "TestImageKit:"
fastlist: false
- backend: "internetarchive"
remote: "TestIA:rclone-integration-test"
fastlist: true
tests:
- backend
extratime: 2.0
- backend: "jottacloud"
remote: "TestJottacloud:"
fastlist: true
- backend: "memory"
remote: ":memory:"
fastlist: true
- backend: "netstorage"
remote: "TestnStorage:"
fastlist: true
- backend: "onedrive"
remote: "TestOneDrive:"
fastlist: false
ignore:
# This test doesn't work on a standard Onedrive account returning
# accessDenied: accountUpgradeRequired: Account Upgrade is required for this operation.
- TestIntegration/FsMkdir/FsPutFiles/PublicLink
- backend: "onedrive"
remote: "TestOneDriveBusiness:"
fastlist: false
# - backend: "onedrive"
# remote: "TestOneDriveCn:"
# fastlist: false
- backend: "s3"
remote: "TestS3:"
fastlist: true
- backend: "s3"
remote: "TestS3,directory_markers:"
fastlist: true
- backend: "s3"
remote: "TestS3Rclone:"
fastlist: true
- backend: "s3"
remote: "TestS3Minio:"
fastlist: true
ignore:
- TestIntegration/FsMkdir/FsPutFiles/SetTier
- TestIntegration/FsMkdir/FsEncoding/control_chars
- TestIntegration/FsMkdir/FsEncoding/leading_LF
- TestIntegration/FsMkdir/FsEncoding/leading_VT
- TestIntegration/FsMkdir/FsEncoding/punctuation
- TestIntegration/FsMkdir/FsEncoding/trailing_LF
- TestIntegration/FsMkdir/FsEncoding/trailing_VT
- backend: "s3"
remote: "TestS3MinioEdge:"
fastlist: true
ignore:
- TestIntegration/FsMkdir/FsPutFiles/SetTier
- backend: "s3"
remote: "TestS3Wasabi:"
fastlist: true
ignore:
- TestIntegration/FsMkdir/FsEncoding/leading_CR
- TestIntegration/FsMkdir/FsEncoding/leading_LF
- TestIntegration/FsMkdir/FsEncoding/leading_HT
- TestIntegration/FsMkdir/FsEncoding/leading_VT
- TestIntegration/FsMkdir/FsPutFiles/FsPutStream/0
# Disabled due to excessive rate limiting at DO which cause the tests never to pass
# This hits the rate limit as documented here: https://www.digitalocean.com/docs/spaces/#limits
# 2 COPYs per 5 minutes on any individual object in a Space
# - backend: "s3"
# remote: "TestS3DigitalOcean:"
# fastlist: true
# ignore:
# - TestIntegration/FsMkdir/FsPutFiles/FsCopy
# - TestIntegration/FsMkdir/FsPutFiles/SetTier
# - backend: "s3"
# remote: "TestS3Ceph:"
# fastlist: true
# ignore:
# - TestIntegration/FsMkdir/FsPutFiles/FsCopy
# - TestIntegration/FsMkdir/FsPutFiles/SetTier
- backend: "s3"
remote: "TestS3Alibaba:"
fastlist: true
# - backend: "s3"
# remote: "TestS3Qiniu:"
# fastlist: true
# ignore:
# - TestIntegration/FsMkdir/FsEncoding/control_chars
# - TestIntegration/FsMkdir/FsEncoding/leading_VT
# - TestIntegration/FsMkdir/FsEncoding/trailing_VT
# - TestIntegration/FsMkdir/FsPutFiles/FromRoot/ListR
# - TestIntegration/FsMkdir/FsPutFiles/SetTier
# - TestIntegration/FsMkdir/FsPutFiles/FsPutStream/0
# - TestIntegration/FsMkdir/FsPutFiles/Internal/Metadata
- backend: "s3"
remote: "TestS3R2:"
fastlist: true
ignore:
- TestIntegration/FsMkdir/FsPutFiles/SetTier
- backend: "sftp"
remote: "TestSFTPOpenssh:"
fastlist: false
- backend: "sftp"
remote: "TestSFTPRclone:"
fastlist: false
- backend: "sftp"
remote: "TestSFTPRcloneSSH:"
fastlist: false
- backend: "sftp"
remote: "TestSFTPRsyncNet:"
fastlist: false
ignore:
- TestIntegration/FsMkdir/FsEncoding/trailing_space
- TestIntegration/FsMkdir/FsEncoding/trailing_CR
- TestIntegration/FsMkdir/FsEncoding/trailing_LF
- TestIntegration/FsMkdir/FsEncoding/trailing_HT
- TestIntegration/FsMkdir/FsEncoding/trailing_VT
- TestIntegration/FsMkdir/FsEncoding/trailing_dot
- TestIntegration/FsMkdir/FsEncoding/invalid_UTF-8
- TestIntegration/FsMkdir/FsEncoding/URL_encoding
- backend: "sugarsync"
remote: "TestSugarSync:Test"
fastlist: false
ignore:
- TestIntegration/FsMkdir/FsPutFiles/PublicLink
- backend: "swift"
remote: "TestSwiftAIO:"
fastlist: true
- backend: "swift"
remote: "TestSwift:"
fastlist: true
# - backend: "swift"
# remote: "TestSwiftCeph:"
# fastlist: true
# ignore:
# - TestIntegration/FsMkdir/FsPutFiles/FsCopy
- backend: "yandex"
remote: "TestYandex:"
fastlist: false
- backend: "ftp"
remote: "TestFTPProftpd:"
fastlist: false
- backend: "ftp"
remote: "TestFTPPureftpd:"
fastlist: false
- backend: "ftp"
remote: "TestFTPVsftpd:"
fastlist: false
- backend: "ftp"
remote: "TestFTPRclone:"
fastlist: false
- backend: "box"
remote: "TestBox:"
fastlist: false
- backend: "fichier"
remote: "TestFichier:"
fastlist: false
listretries: 5
tests:
- backend
- backend: "qingstor"
remote: "TestQingStor:"
fastlist: false
oneonly: true
cleanup: true
ignore:
# This test fails because of a broken bucket in the account!
- TestIntegration/FsMkdir/FsPutFiles/FromRoot/ListR
- backend: "azureblob"
remote: "TestAzureBlob:"
fastlist: true
- backend: "azureblob"
remote: "TestAzureBlob,directory_markers:"
fastlist: true
- backend: "azurefiles"
remote: "TestAzureFiles:"
- backend: "pcloud"
remote: "TestPcloud:"
fastlist: true
- backend: "pikpak"
remote: "TestPikPak:"
fastlist: false
ignore:
# fs/operations
- TestCheckSum
- TestHashSums/Md5
# fs/sync
- TestSyncWithTrackRenames
# integration
- TestIntegration/FsMkdir/FsPutFiles/ObjectMimeType
- backend: "webdav"
remote: "TestWebdavNextcloud:"
ignore:
- TestIntegration/FsMkdir/FsEncoding/punctuation
- TestIntegration/FsMkdir/FsEncoding/invalid_UTF-8
fastlist: false
- backend: "webdav"
remote: "TestWebdavOwncloud:"
ignore:
- TestIntegration/FsMkdir/FsEncoding/punctuation
- TestIntegration/FsMkdir/FsEncoding/invalid_UTF-8
fastlist: false
- backend: "webdav"
remote: "TestWebdavRclone:"
ignore:
- TestFileReadAtZeroLength
fastlist: false
- backend: "cache"
remote: "TestCache:"
fastlist: false
- backend: "mega"
remote: "TestMega:"
fastlist: false
ignore:
- TestIntegration/FsMkdir/FsPutFiles/PublicLink
- TestDirRename
- backend: "opendrive"
remote: "TestOpenDrive:"
fastlist: false
- backend: "union"
remote: "TestUnion:"
fastlist: false
- backend: "koofr"
remote: "TestKoofr:"
fastlist: false
# - backend: "koofr"
# remote: "TestDigiStorage:"
# fastlist: false
- backend: "linkbox"
remote: "TestLinkbox:"
fastlist: false
ignore:
- TestIntegration/FsMkdir/FsEncoding/invalid_UTF-8
- TestRWFileHandleWriteNoWrite
- TestCaseInsensitiveMoveFile
- TestFixCase
- backend: "premiumizeme"
remote: "TestPremiumizeMe:"
fastlist: false
- backend: "protondrive"
remote: "TestProtonDrive:"
fastlist: false
- backend: "putio"
remote: "TestPutio:"
fastlist: false
extratime: 2.0
ignore:
- TestIntegration/FsMkdir/FsEncoding/URL_encoding
- backend: "sharefile"
remote: "TestSharefile:"
fastlist: false
- backend: "sia"
remote: "TestSia:"
fastlist: false
- backend: "mailru"
remote: "TestMailru:"
subdir: false
fastlist: false
ignore:
- TestApplyTransforms
- backend: "seafile"
remote: "TestSeafileV6:"
fastlist: false
ignore:
- TestIntegration/FsMkdir/FsPutFiles/FsDirMove
- backend: "seafile"
remote: "TestSeafile:"
fastlist: true
- backend: "seafile"
remote: "TestSeafileEncrypted:"
fastlist: true
- backend: "sia"
remote: "TestSia:"
fastlist: false
- backend: "smb"
remote: "TestSMB:rclone"
fastlist: false
- backend: "storj"
remote: "TestStorj:"
fastlist: true
- backend: "zoho"
remote: "TestZoho:"
fastlist: false
tests:
- backend
- backend: "hdfs"
remote: "TestHdfs:"
fastlist: false
ignore:
- TestSyncUTFNorm
# - backend: "uptobox"
# remote: "TestUptobox:"
# fastlist: false
# ignore:
# - TestRWFileHandleWriteNoWrite
- backend: "oracleobjectstorage"
remote: "TestOracleObjectStorage:"
fastlist: true
ignore:
- TestIntegration/FsMkdir/FsEncoding/control_chars
- TestIntegration/FsMkdir/FsEncoding/leading_CR
- TestIntegration/FsMkdir/FsEncoding/leading_LF
- TestIntegration/FsMkdir/FsEncoding/trailing_CR
- TestIntegration/FsMkdir/FsEncoding/trailing_LF
- TestIntegration/FsMkdir/FsEncoding/leading_HT
- TestIntegration/FsMkdir/FsPutFiles/FsPutStream/0
- backend: "quatrix"
remote: "TestQuatrix:"
fastlist: false
- backend: "ulozto"
remote: "TestUlozto:"
fastlist: false