[devscripts] 01/01: uscan: Use random available port for FTP

Osamu Aoki osamu at moszumanska.debian.org
Wed Jan 31 19:28:07 UTC 2018


This is an automated email from the git hooks/post-receive script.

osamu pushed a commit to branch master
in repository devscripts.

commit af4594ec380d78ebf2586e8d22299800be2bf06f
Author: Osamu Aoki <osamu at debian.org>
Date:   Thu Feb 1 04:24:07 2018 +0000

    uscan: Use random available port for FTP
    
    Fixed port was problematic.
    So use the available random user port.
    
    Signed-off-by: Osamu Aoki <osamu at debian.org>
---
 test/test_uscan_ftp     | 7 +++++--
 test/uscan/ftpserver.py | 9 ++++++---
 2 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/test/test_uscan_ftp b/test/test_uscan_ftp
index 258c998..bd5bfcc 100755
--- a/test/test_uscan_ftp
+++ b/test/test_uscan_ftp
@@ -106,6 +106,9 @@ spawnFtpServer(){
 	echo "FTP starting ... $TMPDIR/$REPOPATH"
 	python3 "$test_dir/uscan/$USCAN_FTP_SERVER" 2>log &
 	echo $! > pid
+	while ! [ -s port ]; do
+	    :
+	done
 	unset USCAN_FTP_SERVER
     )
 }
@@ -240,7 +243,7 @@ helperWatch() {
     cd $TMPDIR
     # start FTP server with its root at $TMPDIR/$REPOPATH
     spawnFtpServer
-    PORT=2121
+    PORT=$(cat $TMPDIR/repo/port)
     $DEBUGECHO " ***** ftp://localhost:$PORT started showing $TMPDIR/$REPOPATH *****"
     # make web site
     $SITESCRIPT
@@ -323,7 +326,7 @@ helperWatchZip() {
     cd $TMPDIR
     # start FTP server with its root at $TMPDIR/$REPOPATH
     spawnFtpServer
-    PORT=2121
+    PORT=$(cat $TMPDIR/repo/port)
     $DEBUGECHO " ***** ftp://localhost:$PORT started showing $TMPDIR/$REPOPATH *****"
     # make web site
     $SITESCRIPT
diff --git a/test/uscan/ftpserver.py b/test/uscan/ftpserver.py
index 1fa5f0a..730a2d7 100644
--- a/test/uscan/ftpserver.py
+++ b/test/uscan/ftpserver.py
@@ -13,10 +13,13 @@ def test():
     handler = FTPHandler
     handler.authorizer = authorizer
 
-    logging.basicConfig(filename='log', level=logging.INFO)
-    #logging.basicConfig(filename='log', level=logging.DEBUG)
+    logging.basicConfig(filename='info.log', level=logging.INFO)
+    #logging.basicConfig(filename='debuag.log', level=logging.DEBUG)
 
-    ftpserver = FTPServer(("127.0.0.1", 2121), handler)
+    ftpserver = FTPServer(("127.0.0.1", 0), handler)
+    sa = ftpserver.socket.getsockname()
+    with open('port', 'w') as f:
+        f.write(str(sa[1]))
     ftpserver.serve_forever()
 
 if __name__ == '__main__':

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/collab-maint/devscripts.git



More information about the devscripts-devel mailing list