Opened 3 months ago
Last modified 7 days ago
#70606 new enhancement
Automatically publish base source releases to distfiles server
Reported by: | jmroot (Joshua Root) | Owned by: | admin@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | server/hosting | Version: | |
Keywords: | Cc: | ||
Port: |
Description
Similar to #70365, downloading the source tarball for selfupdate from GitHub is not always possible. Older systems currently have to use the rsync fallback, so we'll need to ensure that new releases become available via plain HTTP in a timely fashion before we can remove that fallback.
Change History (4)
comment:1 follow-up: 2 Changed 3 months ago by ryandesign (Ryan Carsten Schmidt)
comment:2 Changed 3 months ago by jmroot (Joshua Root)
Replying to ryandesign:
Yes I agree with mirroring these files automatically but I would like to mirror all of the release assets not just the source tarball.
That's fine of course. :)
comment:3 Changed 7 weeks ago by ryandesign (Ryan Carsten Schmidt)
I've put the 2.10.0 and 2.10.1 files on the distfiles server manually for now.
comment:4 Changed 7 days ago by ryandesign (Ryan Carsten Schmidt)
The 2.10.2 files went up last month. The 2.10.3 and 2.10.4 files went up today.
To document the process I currently do manually:
In a web browser, visit https://github.com/macports/macports-base/releases. Click "Show All Assets". For each asset (except the two "Source Code" links at the bottom which are automatically generated by GitHub), click the asset to download it.
Find the date and time of the release. For example, to the left of the 2.10.4 release it currently says "yesterday". Mousing over "yesterday" reveals the actual release date in my local time, Oct 31, 2024, 6:41 PM CDT.
In the Terminal, go to the Downloads folder:
cd ~/Downloads
Delete the com.apple.quarantine
and other extended attributes the browser added:
xattr -c MacPorts-*
The modification time of the files will have been set to the download time. Change it to the time the release was created:
touch -t 202410311841 MacPorts-*
Copy the files to the server:
scp -Cpr MacPorts-* xxx@build:/tmp
ssh to the server:
ssh xxx@build
Go to the /tmp directory:
cd /tmp
Change the ownership of the files to the buildbot user:
sudo chown buildbot:buildbot MacPorts-*
Move the files to the right directory:
sudo mv -v MacPorts-* /Volumes/RAID/opt/local/var/rsync/macports/distfiles/MacPorts/
Yes I agree with mirroring these files automatically but I would like to mirror all of the release assets not just the source tarball.
For alpha/beta/rc releases the files should go in the testing folder.