Legacy ASF Releases from SVN Dist
We have three types of ASF Releases to import in ATR using a "Pull from 'SVN Dist'" process:
-
Current Release Candidates from
dist/dev, as the Release Manager requests from within the ATR Web UI. -
Current/last Releases from
dist/release: this will be used for the initial migration and may be used from time to time as PMCs use the old methods. -
Archived Releases in Archive Distribution Directory which are migrated from the archive if not present in the Current Releases.
ATR Web UX
We will need pages to perform tasks related to the use of our legacy SVN dist setup.
PMC Management Page
-
Create Release Candidate - upload the packages to ATR from a release candidate from
svn:dist/dev. This upload page can also handle direct uploads, without thesvn:dist/devstep. -
Previous Release - upload an approved release from
svn:dist/release.
System Admin Page
-
Synchronise Current Releases - scan
svn:dist/releaseand migrate any not in the ATR. -
Synchronize Release Archive Distribution Directory - scan
archiverepository and migrate any archived not in the ATR as a Current or Archived Release.
Backends Hosting Release Distribution
The legacy domains are currently connected to svn:dist/release as follows:
- rsync.apache.org has a directory that updates a checkout of
svn:dist/release - downloads.apache.org periodically rsyncs with rsync.apache.org
- archive.apache.org periodically rsyncs with rsync.apache.org without removing artifacts from the destination.
Transitional Steps
flowchart
subgraph Legacy
A[svn:dist/release]
B[rsync.apache.org]
A -->|svn| B
C["downloads.apache.org"]
D[archive.apache.org]
B -->|rsync| C
B -->|rsync| D
end
-
ATR writes to SVN Dist - ATR Releases write to
svn:dist/releaseas an interim step.- (a) ATR commits new releases distributions to SVN dist/release.
flowchart
subgraph Transition 1A
ATR[ATR releases.apache.org]
A[svn:dist/release]
ATR -->|svn| A
B[rsync.apache.org]
A -->|svn| B
C["downloads.apache.org"]
D[archive.apache.org]
B -->|rsync| C
B -->|rsync| D
end
- (b) ATR both watches changes to SVN dist release and commits new ATR-first changes to SVN dist release.
flowchart
subgraph Transition 1B
AA[svn:dist/release]
ATR[releases.apache.org]
AA -->|svn| ATR
A[svn:dist/release]
ATR -->|svn| A
B[rsync.apache.org]
A -->|svn| B
C["downloads.apache.org"]
D[archive.apache.org]
B -->|rsync| C
B -->|rsync| D
end
- ATR and Legacy are Integrated - Insert ATR into the rsync chain.
-
ATR has a directory with the same organization as
svn:dist/releaseusing symbolic links to the Releases in the ATR Datastore. -
(a) ATR's rsync from rsync.apache.org should detect legacy release addition and deletion.
-
flowchart
subgraph Transition 2A
A[svn:dist/release]
B[rsync.apache.org]
A -->|svn| B
ATR[releases.apache.org]
B -->|rsync| ATR
C["downloads.apache.org"]
D[archive.apache.org]
ATR -->|rsync| C
ATR -->|rsync| D
end
Or
- (b) ATR coexists on rsync.apache.org and detects legacy release addition and deletion.
flowchart
subgraph Transition 2B
A[svn:dist/release]
subgraph ATR on Rsync
ATR[releases.apache.org]
B[rsync.apache.org]
ATR <--> B
end
A -->|svn| ATR
C["downloads.apache.org"]
D[archive.apache.org]
B -->|rsync| C
B -->|rsync| D
end
- Legacy SVN Dist is Retired -
svn:dist/releaseis retired.
flowchart
subgraph Transition 3
ATR[ATR releases.apache.org]
C["downloads.apache.org"]
D[archive.apache.org]
ATR -->|rsync| C
ATR -->|rsync| D
end
- Further Integration - downloads.apache.org is hosted on ATR. Downloads.apache.org is multiple servers. ATR would need to work on multiple servers
flowchart
subgraph Transition 4
ATR["releases.apache.org"]
D[archive.apache.org]
ATR -->|rsync| D
end
Copyright 2026, The Apache Software Foundation, Licensed under the Apache License, Version 2.0.
Apache® and the Apache logo are trademarks or registered trademarks of The Apache Software Foundation.