mirror of
https://github.com/tuna/tunasync.git
synced 2025-06-14 13:32:43 +00:00
Update two stage rsync profiles (#135)
* Update two stage rsync profiles * Fix tests of two stage rsync provider
This commit is contained in:
parent
a4d94cae07
commit
984f8a1eb5
@ -614,7 +614,7 @@ exit 0
|
|||||||
targetDir,
|
targetDir,
|
||||||
fmt.Sprintf(
|
fmt.Sprintf(
|
||||||
"-aHvh --no-o --no-g --stats --exclude .~tmp~/ --safe-links "+
|
"-aHvh --no-o --no-g --stats --exclude .~tmp~/ --safe-links "+
|
||||||
"--exclude dists/ --timeout=30 -6 "+
|
"--include=*.diff/ --exclude=*.diff/Index --exclude=Packages* --exclude=Sources* --exclude=Release* --exclude=InRelease --include=i18n/by-hash --exclude=i18n/* --exclude=ls-lR* --timeout=30 -6 "+
|
||||||
"--exclude-from %s %s %s",
|
"--exclude-from %s %s %s",
|
||||||
provider.excludeFile, provider.upstreamURL, provider.WorkingDir(),
|
provider.excludeFile, provider.upstreamURL, provider.WorkingDir(),
|
||||||
),
|
),
|
||||||
@ -656,7 +656,7 @@ exit 0
|
|||||||
|
|
||||||
expectedOutput := fmt.Sprintf(
|
expectedOutput := fmt.Sprintf(
|
||||||
"-aHvh --no-o --no-g --stats --exclude .~tmp~/ --safe-links "+
|
"-aHvh --no-o --no-g --stats --exclude .~tmp~/ --safe-links "+
|
||||||
"--exclude dists/ --timeout=30 -6 "+
|
"--include=*.diff/ --exclude=*.diff/Index --exclude=Packages* --exclude=Sources* --exclude=Release* --exclude=InRelease --include=i18n/by-hash --exclude=i18n/* --exclude=ls-lR* --timeout=30 -6 "+
|
||||||
"--exclude-from %s %s %s\n",
|
"--exclude-from %s %s %s\n",
|
||||||
provider.excludeFile, provider.upstreamURL, provider.WorkingDir(),
|
provider.excludeFile, provider.upstreamURL, provider.WorkingDir(),
|
||||||
)
|
)
|
||||||
|
@ -34,11 +34,12 @@ type twoStageRsyncProvider struct {
|
|||||||
dataSize string
|
dataSize string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ref: https://salsa.debian.org/mirror-team/archvsync/-/blob/master/bin/ftpsync#L431
|
||||||
var rsyncStage1Profiles = map[string]([]string){
|
var rsyncStage1Profiles = map[string]([]string){
|
||||||
"debian": []string{"dists/"},
|
"debian": []string{"--include=*.diff/", "--exclude=*.diff/Index", "--exclude=Packages*", "--exclude=Sources*", "--exclude=Release*", "--exclude=InRelease", "--include=i18n/by-hash", "--exclude=i18n/*", "--exclude=ls-lR*"},
|
||||||
"debian-oldstyle": []string{
|
"debian-oldstyle": []string{
|
||||||
"Packages*", "Sources*", "Release*",
|
"--exclude=Packages*", "--exclude=Sources*", "--exclude=Release*",
|
||||||
"InRelease", "i18n/*", "ls-lR*", "dep11/*",
|
"--exclude=InRelease", "--exclude=i18n/*", "--exclude=ls-lR*", "--exclude=dep11/*",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -109,12 +110,12 @@ func (p *twoStageRsyncProvider) Options(stage int) ([]string, error) {
|
|||||||
var options []string
|
var options []string
|
||||||
if stage == 1 {
|
if stage == 1 {
|
||||||
options = append(options, p.stage1Options...)
|
options = append(options, p.stage1Options...)
|
||||||
stage1Excludes, ok := rsyncStage1Profiles[p.stage1Profile]
|
stage1Profile, ok := rsyncStage1Profiles[p.stage1Profile]
|
||||||
if !ok {
|
if !ok {
|
||||||
return nil, errors.New("Invalid Stage 1 Profile")
|
return nil, errors.New("Invalid Stage 1 Profile")
|
||||||
}
|
}
|
||||||
for _, exc := range stage1Excludes {
|
for _, exc := range stage1Profile {
|
||||||
options = append(options, "--exclude", exc)
|
options = append(options, exc)
|
||||||
}
|
}
|
||||||
|
|
||||||
} else if stage == 2 {
|
} else if stage == 2 {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user