diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2019-09-22 16:57:54 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-22 16:57:54 +0200 |
commit | c0eff1a81c2718498aa8e75f7e45bfb688c91482 (patch) | |
tree | 3b83511c5d9072b9dc7ed6e2a9733b98b778491a | |
parent | 0d95e3aa06baf0613addc69b3d01bb7c262abd34 (diff) | |
parent | 33b3d2914f1f8a76751ccd5aa873fc4e7b05f344 (diff) | |
download | podman-c0eff1a81c2718498aa8e75f7e45bfb688c91482.tar.gz podman-c0eff1a81c2718498aa8e75f7e45bfb688c91482.tar.bz2 podman-c0eff1a81c2718498aa8e75f7e45bfb688c91482.zip |
Merge pull request #4071 from cevich/more_podbot
Cirrus: More podbot/success improvements
-rwxr-xr-x | contrib/cirrus/podbot.py | 15 | ||||
-rwxr-xr-x | contrib/cirrus/success.sh | 15 |
2 files changed, 21 insertions, 9 deletions
diff --git a/contrib/cirrus/podbot.py b/contrib/cirrus/podbot.py index 1be41a8ed..9ca4915a7 100755 --- a/contrib/cirrus/podbot.py +++ b/contrib/cirrus/podbot.py @@ -12,7 +12,7 @@ import sys class IRC: - response_timeout = 10 # seconds + response_timeout = 30 # seconds irc = socket.socket() def __init__(self, server, nickname, channel): @@ -90,9 +90,16 @@ class IRC: if len(sys.argv) < 3: print("Error: Must pass desired nick and message as parameters") else: - irc = IRC("irc.freenode.net", sys.argv[1], "#podman") - err = irc.connect(*os.environ.get('IRCID', 'Big Bug').split(" ", 2)) - if not err: + for try_again in (True,False): + irc = IRC("irc.freenode.net", sys.argv[1], "#podman") + err = irc.connect(*os.environ.get('IRCID', 'Big Bug').split(" ", 2)) + if err and try_again: + print("Trying again in 5 seconds...") + time.sleep(5) + continue + elif err: + break irc.message(" ".join(sys.argv[2:])) time.sleep(5.0) # avoid join/quit spam irc.quit() + break diff --git a/contrib/cirrus/success.sh b/contrib/cirrus/success.sh index 8a9618b91..3b171757f 100755 --- a/contrib/cirrus/success.sh +++ b/contrib/cirrus/success.sh @@ -4,7 +4,7 @@ set -e source $(dirname $0)/lib.sh -req_env_var CIRRUS_BRANCH CIRRUS_BUILD_ID CIRRUS_REPO_FULL_NAME CIRRUS_BASE_SHA CIRRUS_CHANGE_IN_REPO +req_env_var CIRRUS_BRANCH CIRRUS_REPO_FULL_NAME CIRRUS_BASE_SHA CIRRUS_CHANGE_IN_REPO CIRRUS_CHANGE_MESSAGE cd $CIRRUS_WORKING_DIR @@ -25,9 +25,9 @@ then # newline separated GITLOG="git log --format='%ae'" COMMIT_AUTHORS=$($GITLOG $SHARANGE || $GITLOG -1 HEAD | \ - sort -u | \ - egrep -v "$EXCLUDE_RE" | \ tr --delete --complement "$EMAILCSET[:space:]" | \ + egrep -v "$EXCLUDE_RE" | \ + sort -u | \ tail -$MAX_NICKS) for c_email in $COMMIT_AUTHORS @@ -43,8 +43,13 @@ then echo -e "\t\tNot found in $(basename $AUTHOR_NICKS_FILEPATH), using e-mail username." NICK=$(echo "$c_email" | cut -d '@' -f 1) fi - echo -e "\tUsing nick $NICK" - NICKS="${NICKS:+$NICKS, }$NICK" + if ! echo "$NICKS" | grep -q "$NICK" + then + echo -e "\tUsing nick $NICK" + NICKS="${NICKS:+$NICKS, }$NICK" + else + echo -e "\tNot re-adding duplicate nick $NICK" + fi done fi |