From 8cad2097e985b67b516457580fbae9ca3f67dc6e Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Wed, 20 May 2026 15:02:32 +1000 Subject: [PATCH] packaging: remove obsolete samba-rsync and send-news scripts Both scripts were pre-release.py legacy helpers: * samba-rsync rsync'd ~/samba-rsync-{ftp,html}/ to the samba.org server. release.py step-10-push-ftp and step-11-push-html now do exactly this, using ../release/rsync-{ftp,html}/ as the local mirrors. * send-news copied README/INSTALL/NEWS .md + .html files into ~/samba-rsync-ftp/ and rsync'd them to samba.org. release.py step-8-update-ftp already does this (./md-convert --dest=FTP_DIR README.md NEWS.md INSTALL.md and the surrounding rsync of html files into FTP_DIR), and step-10-push-ftp pushes the result. Update the trailing instructions printed at the end of step-12-push-git to drop the now-obsolete 'run packaging/send-news' suggestion, and tighten the comment in step_1_fetch that referred to samba-rsync as a current sibling tool. --- packaging/release.py | 9 ++- packaging/samba-rsync | 124 ------------------------------------------ packaging/send-news | 33 ----------- 3 files changed, 4 insertions(+), 162 deletions(-) delete mode 100755 packaging/samba-rsync delete mode 100755 packaging/send-news diff --git a/packaging/release.py b/packaging/release.py index dc6b2c86..6cc7332e 100755 --- a/packaging/release.py +++ b/packaging/release.py @@ -153,8 +153,8 @@ def step_1_fetch(args): os.makedirs(HTML_DIR, exist_ok=True) cmd_chk(['rsync', '-aiv', f'{HTML_SRC}/', f'{HTML_DIR}/']) - # Then mirror non-git html content from the server (mirroring samba-rsync's - # behavior: skip files that the html git already provides). + # Then mirror non-git html content from the server, skipping files that + # the html git already provides (driven by the 'filt' file in HTML_DIR). filt = os.path.join(HTML_DIR, 'filt') if os.path.exists(filt): tmp_filt = os.path.join(HTML_DIR, 'tmp-filt') @@ -629,9 +629,8 @@ If you have a 'samba' remote configured (git.samba.org:/data/git/rsync.git): git push samba {master_branch} git push samba {v_ver} -Then upload the tarball + .asc to the GitHub release for {v_ver}, run -packaging/send-news (when convenient), and announce on rsync-announce@, -rsync@, and Discord. +Then upload the tarball + .asc to the GitHub release for {v_ver}, +and announce on rsync-announce@, rsync@, and Discord. """) diff --git a/packaging/samba-rsync b/packaging/samba-rsync deleted file mode 100755 index b291b276..00000000 --- a/packaging/samba-rsync +++ /dev/null @@ -1,124 +0,0 @@ -#!/bin/bash -# This script makes it easy to update the ftp & html directories on the samba.org server. -# It expects the 2 *_DEST directories to contain updated files that need to be sent to -# the remote server. If these directories don't exist yet, they will be copied from the -# remote server (while also making the html dir a git checkout). - -FTP_SRC="$HOME/samba-rsync-ftp" -HTML_SRC="$HOME/samba-rsync-html" - -FTP_DEST="/home/ftp/pub/rsync" -HTML_DEST="/home/httpd/html/rsync" - -HTML_GIT='git.samba.org:/data/git/rsync-web.git' - -export RSYNC_PARTIAL_DIR='' - -case "$RSYNC_SAMBA_HOST" in - *.samba.org) ;; - *) - echo "You must set RSYNC_SAMBA_HOST in your environment to the samba hostname to use." >&2 - exit 1 - ;; -esac - -MODE='' -REVERSE='' -while (( $# )); do - case "$1" in - -R|--reverse) REVERSE=yes ;; - f|ftp) MODE=ftp ;; - h|html) MODE=html ;; - -h|--help) - echo "Usage: [-R] [f|ftp|h|html]" - echo "-R --reverse Copy the files from the server to the local host." - echo " The default is to update the remote files." - echo "-h --help Output this help message." - echo " " - echo "The script will prompt if ftp or html is not specified on the command line." - echo "Only one category can be copied at a time. When pulling html files, a git" - echo "checkout will be either created or updated prior to the rsync copy." - exit - ;; - *) - echo "Invalid option: $1" >&2 - exit 1 - ;; - esac - shift -done - -while [ ! "$MODE" ]; do - if [ "$REVERSE" = yes ]; then - DIRECTION=FROM - else - DIRECTION=TO - fi - echo -n "Copy which files $DIRECTION the server? ftp or html? " - read ans - case "$ans" in - f*) MODE=ftp ;; - h*) MODE=html ;; - '') exit 1 ;; - *) echo "You must answer f or h to copy the ftp or html data." ;; - esac -done - -if [ "$MODE" = ftp ]; then - SRC_DIR="$FTP_SRC" - DEST_DIR="$FTP_DEST" - FILT=".filt" -else - SRC_DIR="$HTML_SRC" - DEST_DIR="$HTML_DEST" - FILT="filt" -fi - -function do_rsync { - rsync --dry-run "${@}" | grep -v 'is uptodate$' - echo '' - echo -n "Run without --dry-run? [n] " - read ans - case "$ans" in - y*) rsync "${@}" | grep -v 'is uptodate$' ;; - esac -} - -if [ -d "$SRC_DIR" ]; then - REVERSE_RSYNC=do_rsync -else - echo "The directory $SRC_DIR does not exist yet." - echo -n "Do you want to create it? [n] " - read ans - case "$ans" in - y*) ;; - *) exit 1 ;; - esac - REVERSE=yes - REVERSE_RSYNC=rsync -fi - -if [ "$REVERSE" = yes ]; then - OPTS='-aivOHP' - TMP_FILT="$SRC_DIR/tmp-filt" - echo "Copying files from $RSYNC_SAMBA_HOST to $SRC_DIR ..." - if [ "$MODE" = html ]; then - if [ $REVERSE_RSYNC = rsync ]; then - git clone "$HTML_GIT" "$SRC_DIR" || exit 1 - else - cd "$SRC_DIR" || exit 1 - git pull || exit 1 - fi - sed -n -e 's/[-P]/H/p' "$SRC_DIR/$FILT" >"$TMP_FILT" - OPTS="${OPTS}f._$TMP_FILT" - else - OPTS="${OPTS}f:_$FILT" - fi - $REVERSE_RSYNC "$OPTS" "$RSYNC_SAMBA_HOST:$DEST_DIR/" "$SRC_DIR/" - rm -f "$TMP_FILT" - exit -fi - -cd "$SRC_DIR" || exit 1 -echo "Copying files from $SRC_DIR to $RSYNC_SAMBA_HOST ..." -do_rsync -aivOHP --chown=:rsync --del -f._$FILT . "$RSYNC_SAMBA_HOST:$DEST_DIR/" diff --git a/packaging/send-news b/packaging/send-news deleted file mode 100755 index c83a74c0..00000000 --- a/packaging/send-news +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -e - -# This script expects the ~/src/rsync directory to contain the rsync -# source that has been updated. It also expects the auto-build-save -# directory to have been created prior to the running of configure so -# that each branch has its own build directory underneath. This supports -# the maintainer workflow for the rsync-patches files maintenace. - -FTP_SRC="$HOME/samba-rsync-ftp" -FTP_DEST="/home/ftp/pub/rsync" -MD_FILES="README.md INSTALL.md NEWS.md" - -case "$RSYNC_SAMBA_HOST" in - *.samba.org) ;; - *) - echo "You must set RSYNC_SAMBA_HOST in your environment to the samba hostname to use." >&2 - exit 1 - ;; -esac - -if [ ! -d "$FTP_SRC" ]; then - packaging/samba-rsync ftp # Ask to initialize the local ftp dir -fi - -cd ~/src/rsync - -make man -./md-convert --dest="$FTP_SRC" $MD_FILES -rsync -aiic $MD_FILES auto-build-save/master/*.?.html "$FTP_SRC" - -cd "$FTP_SRC" - -rsync -aiic README.* INSTALL.* NEWS.* *.?.html "$RSYNC_SAMBA_HOST:$FTP_DEST/"