This is an automated email from the ASF dual-hosted git repository.

MartijnVisser pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git


The following commit(s) were added to refs/heads/master by this push:
     new 35dc0fba16f [FLINK-40803][ci] Deploy docs with rsync instead of 
rsync-deployments
35dc0fba16f is described below

commit 35dc0fba16f0b501f51f722463bb385fc7e8f9ee
Author: Martijn Visser <[email protected]>
AuthorDate: Fri Sep 25 15:36:22 2026 +0200

    [FLINK-40803][ci] Deploy docs with rsync instead of rsync-deployments
    
    The ASF actions allow list dropped rsync-deployments 8.0.5 on 2026-09-17,
    the third time in a year it broke the docs upload. Run rsync on the runner
    instead, inline so it does not depend on files in the checked-out release
    branches. The build runs as root and the upload now as the runner user, so
    make docs/target world-readable first.
    
    Generated-by: Claude Code (Claude Opus 5.5)
---
 .github/workflows/docs-legacy.yml | 26 +++++++++++++---------
 .github/workflows/docs.yml        | 45 ++++++++++++++++++++-------------------
 2 files changed, 39 insertions(+), 32 deletions(-)

diff --git a/.github/workflows/docs-legacy.yml 
b/.github/workflows/docs-legacy.yml
index fd30c595f0c..bad35d663f3 100644
--- a/.github/workflows/docs-legacy.yml
+++ b/.github/workflows/docs-legacy.yml
@@ -76,20 +76,26 @@ jobs:
             bash -c "./build_docs.sh"
 
       - name: Build documentation
+        # The build runs as root, the upload below as the runner user, hence 
the chmod
         run: |
           docker run --rm \
             --volume "$PWD:/root/flink" \
             --volume "$HOME/.m2/repository:/root/.m2/repository" \
             apache/flink-ci-docker:java_8_11_17_21_25_maven_386_3916_noble \
-            bash -c "apt-get update && apt-get install -y rsync && cd 
/root/flink && ./.github/workflows/docs.sh"
+            bash -c "apt-get update && apt-get install -y rsync && cd 
/root/flink && ./.github/workflows/docs.sh && chmod -R a+rX docs/target"
 
       - name: Upload documentation
-        uses: 
burnett01/rsync-deployments@66257cad6bfeb2171d3b6bfa6c9a22279dd9c3a1 # 8.0.5
-        with:
-          switches: --archive --compress --delete --omit-dir-times
-          path: docs/target/
-          remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH 
}}/flink/flink-docs-${{ env.flink_branch }}/
-          remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
-          remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
-          remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }}
-          remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }}
+        env:
+          NIGHTLIES_RSYNC_HOST: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
+          NIGHTLIES_RSYNC_KEY: ${{ secrets.NIGHTLIES_RSYNC_KEY }}
+          NIGHTLIES_RSYNC_PATH: ${{ secrets.NIGHTLIES_RSYNC_PATH }}
+          NIGHTLIES_RSYNC_PORT: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
+          NIGHTLIES_RSYNC_USER: ${{ secrets.NIGHTLIES_RSYNC_USER }}
+        run: |
+          eval "$(ssh-agent -s)"
+          trap 'ssh-agent -k > /dev/null || true' EXIT
+          printf '%s\n' "${NIGHTLIES_RSYNC_KEY}" | ssh-add -
+          unset NIGHTLIES_RSYNC_KEY
+          rsync --archive --compress --delete --omit-dir-times \
+            -e "ssh -o StrictHostKeyChecking=no -p ${NIGHTLIES_RSYNC_PORT}" \
+            docs/target/ 
"${NIGHTLIES_RSYNC_USER}@${NIGHTLIES_RSYNC_HOST}:${NIGHTLIES_RSYNC_PATH}/flink/flink-docs-${flink_branch}/"
diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml
index c31d354a540..2e3e2f35b91 100644
--- a/.github/workflows/docs.yml
+++ b/.github/workflows/docs.yml
@@ -66,32 +66,33 @@ jobs:
             ${{ runner.os }}-maven-docs-
 
       - name: Build documentation
+        # The build runs as root, the upload below as the runner user, hence 
the chmod
         run: |
           docker run --rm \
             --volume "$PWD:/root/flink" \
             --volume "$HOME/.m2/repository:/root/.m2/repository" \
             apache/flink-ci-docker:java_8_11_17_21_25_maven_386_3916_noble \
-            bash -c "cd /root/flink && ./.github/workflows/docs.sh"
+            bash -c "cd /root/flink && ./.github/workflows/docs.sh && chmod -R 
a+rX docs/target"
 
       - name: Upload documentation
-        uses: 
burnett01/rsync-deployments@66257cad6bfeb2171d3b6bfa6c9a22279dd9c3a1 # 8.0.5
-        with:
-          switches: --archive --compress --delete
-          path: docs/target/
-          remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH 
}}/flink/flink-docs-${{ env.flink_branch }}/
-          remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
-          remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
-          remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }}
-          remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }}
-
-      - name: Upload documentation alias
-        if: env.flink_alias != ''
-        uses: 
burnett01/rsync-deployments@66257cad6bfeb2171d3b6bfa6c9a22279dd9c3a1 # 8.0.5
-        with:
-          switches: --archive --compress --delete
-          path: docs/target/
-          remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH 
}}/flink/flink-docs-${{ env.flink_alias }}/
-          remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
-          remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
-          remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }}
-          remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }}
+        env:
+          NIGHTLIES_RSYNC_HOST: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
+          NIGHTLIES_RSYNC_KEY: ${{ secrets.NIGHTLIES_RSYNC_KEY }}
+          NIGHTLIES_RSYNC_PATH: ${{ secrets.NIGHTLIES_RSYNC_PATH }}
+          NIGHTLIES_RSYNC_PORT: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
+          NIGHTLIES_RSYNC_USER: ${{ secrets.NIGHTLIES_RSYNC_USER }}
+        run: |
+          eval "$(ssh-agent -s)"
+          trap 'ssh-agent -k > /dev/null || true' EXIT
+          printf '%s\n' "${NIGHTLIES_RSYNC_KEY}" | ssh-add -
+          unset NIGHTLIES_RSYNC_KEY
+          upload() {
+            echo "Uploading to flink-docs-$1"
+            rsync --archive --compress --delete \
+              -e "ssh -o StrictHostKeyChecking=no -p ${NIGHTLIES_RSYNC_PORT}" \
+              docs/target/ 
"${NIGHTLIES_RSYNC_USER}@${NIGHTLIES_RSYNC_HOST}:${NIGHTLIES_RSYNC_PATH}/flink/flink-docs-$1/"
+          }
+          upload "${flink_branch}"
+          if [ -n "${flink_alias}" ]; then
+            upload "${flink_alias}"
+          fi

Reply via email to