<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch release-2.10
in repository macports-base.

</pre>
<p><a href="https://github.com/macports/macports-base/commit/39034810492b9cc509cf5a33b972f08ccd2357a1">https://github.com/macports/macports-base/commit/39034810492b9cc509cf5a33b972f08ccd2357a1</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 39034810492b9cc509cf5a33b972f08ccd2357a1
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Thu Mar 27 01:17:46 2025 +1100

<span style='display:block; white-space:pre;color:#404040;'>    Actions: mirror improvements
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Mirror all release files.
</span><span style='display:block; white-space:pre;color:#404040;'>    Handle prereleases correctly.
</span><span style='display:block; white-space:pre;color:#404040;'>    Also deploy RELEASE_URL.
</span>---
 .github/workflows/mirror.yml | 45 ++++++++++++++++++++++++++------------------
 1 file changed, 27 insertions(+), 18 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/.github/workflows/mirror.yml b/.github/workflows/mirror.yml
</span><span style='display:block; white-space:pre;color:#808080;'>index 43da98a45..4cae51d68 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/.github/workflows/mirror.yml
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/.github/workflows/mirror.yml
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,33 +1,29 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-name: "mirror base source"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name: "Mirror base files"
</span> 
 on:
   release:
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    types: [released]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    types: [released, edited]
</span> 
 permissions:
   contents: read
 
 jobs:
   build:
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    name: Mirror base source
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    name: Mirror base files
</span>     concurrency:
       group: mirror-${{ github.ref }}
     runs-on: ubuntu-latest
 
     steps:
<span style='display:block; white-space:pre;background:#ffe0e0;'>-      - name: Fetch release source
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        run: |
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          set -eu
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          MP_VERS="$(echo "$GITHUB_REF_NAME" | colrm 1 1)"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          SOURCE_FILE="MacPorts-${MP_VERS}.tar.bz2"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          SIG_FILE="${SOURCE_FILE}.sig"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          DOWNLOAD_BASEURL="${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/releases/download/${GITHUB_REF_NAME}/"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          mkdir -p mpsource
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          curl -fL -o "./mpsource/${SOURCE_FILE}" "${DOWNLOAD_BASEURL}${SOURCE_FILE}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          curl -fL -o "./mpsource/${SIG_FILE}" "${DOWNLOAD_BASEURL}${SIG_FILE}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      - name: Fetch release files
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        uses: robinraju/release-downloader@v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        with:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            fileName: '*'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            tarBall: false
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            zipBall: false
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            out-file-path: 'mpfiles'
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-      - name: Deploy release source
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      - name: Deploy release files
</span>         env:
           MIRROR_SSH_HOST: ${{ secrets.MIRROR_SSH_HOST }}
           MIRROR_SSH_HOSTKEY: ${{ secrets.MIRROR_SSH_HOSTKEY }}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -36,9 +32,22 @@ jobs:
</span>         run: |
           set -eu
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-          echo "Uploading tarball for MacPorts $GITHUB_REF_NAME"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          echo "$MIRROR_SSH_KEY" > ssh_key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          echo "Uploading files for MacPorts $GITHUB_REF_NAME"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          chmod -R a+rX mpfiles
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          touch ssh_key
</span>           chmod 0600 ssh_key
<span style='display:block; white-space:pre;background:#e0ffe0;'>+          echo "$MIRROR_SSH_KEY" > ssh_key
</span>           echo "$MIRROR_SSH_HOSTKEY" > ssh_known_hosts
           export RSYNC_RSH="ssh -l $MIRROR_SSH_USER -i ssh_key -oUserKnownHostsFile=ssh_known_hosts -p 23"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-          rsync -av --progress ./mpsource/MacPorts-* "${MIRROR_SSH_HOST}:"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          case "$GITHUB_REF_NAME" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            *-rc*) SUBDIR="/testing" ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            *-beta*) SUBDIR="/testing" ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            *) SUBDIR="" ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          rsync -av --progress --delay-updates ./mpfiles/ "${MIRROR_SSH_HOST}:pub/distfiles/MacPorts${SUBDIR}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          echo "Updating RELEASE_URL"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          curl -fL -o ./RELEASE_URL https://raw.githubusercontent.com/macports/macports-base/master/config/RELEASE_URL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          chmod a+r ./RELEASE_URL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          rsync -av --delay-updates ./RELEASE_URL "${MIRROR_SSH_HOST}:pub/distfiles/MacPorts/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          rm -f ssh_key ssh_known_hosts
</span></pre><pre style='margin:0'>

</pre>