-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
burnett01/[email protected] hangs transferring specific files #64
Comments
Hey @arobthearab thank you for your report. I was not able to reproduce the issue I am afraid. When I use Can you please conduct the following steps to find out more:
Greetings |
Hi Steve,
I will try verbose mode – I will be doing another deployment soon.
None of the steps explicitly change permissions. The USER var is the that owns the directory tree, and each directory in that tree has at least u=rwx, g=rx permissions (0750):
3033892 0 drwxr-xr-x 4 www publish 37 Aug 21 10:44 deployment
37612581 0 drwxr-xr-x 4 www publish 112 Aug 21 12:42 deployment/backend
55114285 4 drwxr-xr-x 5 www publish 4096 Aug 21 12:42 deployment/frontend
However, as far as I can tell from my SSH logs the fifth rsync is never connecting to the server (despite the identical configuration). If so, it is a VERY lazy write because even 10-15 minutes after the job fails I can see no evidence of a fifth connection:
Aug 21 12:42:20 phosphorus sshd[10986]: Accepted publickey for www from 4.236.175.70 port 23552 ssh2: RSA SHA256:b0aDPOJYKdebjLjkKje1JJhqH9p+OOGKwaGJrzJGNA4
Aug 21 12:42:20 phosphorus systemd[10989]: pam_unix(systemd-user:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 12:42:20 phosphorus sshd[10986]: pam_unix(sshd:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 12:42:21 phosphorus sshd[11006]: Received disconnect from 4.236.175.70 port 23552:11: disconnected by user
Aug 21 12:42:21 phosphorus sshd[11006]: Disconnected from user www 4.236.175.70 port 23552
Aug 21 12:42:21 phosphorus sshd[10986]: pam_unix(sshd:session): session closed for user www
Aug 21 12:42:22 phosphorus sshd[11104]: Accepted publickey for www from 4.236.175.70 port 23553 ssh2: RSA SHA256:b0aDPOJYKdebjLjkKje1JJhqH9p+OOGKwaGJrzJGNA4
Aug 21 12:42:22 phosphorus sshd[11104]: pam_unix(sshd:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 12:42:23 phosphorus sshd[11106]: Received disconnect from 4.236.175.70 port 23553:11: disconnected by user
Aug 21 12:42:23 phosphorus sshd[11106]: Disconnected from user www 4.236.175.70 port 23553
Aug 21 12:42:23 phosphorus sshd[11104]: pam_unix(sshd:session): session closed for user www
Aug 21 12:42:24 phosphorus sshd[11206]: Accepted publickey for www from 4.236.175.70 port 23554 ssh2: RSA SHA256:b0aDPOJYKdebjLjkKje1JJhqH9p+OOGKwaGJrzJGNA4
Aug 21 12:42:24 phosphorus sshd[11206]: pam_unix(sshd:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 12:42:24 phosphorus sshd[11208]: Received disconnect from 4.236.175.70 port 23554:11: disconnected by user
Aug 21 12:42:24 phosphorus sshd[11208]: Disconnected from user www 4.236.175.70 port 23554
Aug 21 12:42:24 phosphorus sshd[11206]: pam_unix(sshd:session): session closed for user www
Aug 21 12:42:25 phosphorus sshd[11306]: Accepted publickey for www from 4.236.175.70 port 23555 ssh2: RSA SHA256:b0aDPOJYKdebjLjkKje1JJhqH9p+OOGKwaGJrzJGNA4
Aug 21 12:42:25 phosphorus sshd[11306]: pam_unix(sshd:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 12:42:26 phosphorus sshd[11308]: Received disconnect from 4.236.175.70 port 23555:11: disconnected by user
Aug 21 12:42:26 phosphorus sshd[11308]: Disconnected from user www 4.236.175.70 port 23555
Aug 21 12:42:26 phosphorus sshd[11306]: pam_unix(sshd:session): session closed for user www
Anyway, I will try -vvv and get back to you.
…--
Andy Robinson
CISO, Director of Products & Professional Services
***@***.*** ***@***.***>
+1 207 517.6121 (d)
+1 207 232.6381 (m)
www.rescor.net <http://www.rescor.net>
From: Steven Agyekum ***@***.***>
Reply-To: Burnett01/rsync-deployments ***@***.***>
Date: Wednesday, August 21, 2024 at 14:29
To: Burnett01/rsync-deployments ***@***.***>
Cc: Andy Robinson ***@***.***>, Mention ***@***.***>
Subject: Re: [Burnett01/rsync-deployments] ***@***.*** hangs transferring specific files (Issue #64)
Hey @arobthearab <https://github.com/arobthearab> thank you for your report.
I was not able to reproduce the issue I am afraid.
When I use *.sh as you did, rsync correctly found my test.sh file and synced it:
image.png (view on web) <https://github.com/user-attachments/assets/75a7b0ad-ed43-4b7f-aab2-ebf349620345>
Can you please conduct the following steps to find out more:
* Does a previous step in your deployment change the file permissions of the .sh files before using the action?
* Can you try the verbose debug mode to find out more by adding -vvv to the switches
Greetings
Steve
—
Reply to this email directly, view it on GitHub <#64 (comment)> , or unsubscribe <https://github.com/notifications/unsubscribe-auth/AG4PYEOY4VS5QGMAT6IDHCTZSTMBZAVCNFSM6AAAAABM4KW46CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBSG4YTCMJQG4> .
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Hi @arobthearab can you try using an absolute path like /*.sh since the absolute path / represents your checked out github workspace |
Here is the result of -vvv and absolute path:
Run ***@***.*** ***@***.***>
2 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:2> with:
3 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:3> switches: -avzr -vvv --delete
4 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:4> path: /*.sh
5 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:5> remote_path: /home/www/deployment
6 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:6> remote_host: [REDACTED]
7 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:7> remote_port: [REDACTED]
8 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:8> remote_user: www
9 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:9> remote_key: ***
10 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:10> legacy_allow_rsa_hostkeys: false
11 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:12> /usr/bin/docker run --name ed9137c4752e4fbeef4ebbbc71833fd6f15328_6173f0 --label ed9137 --workdir /github/workspace --rm -e "INPUT_SWITCHES" -e "INPUT_PATH" -e "INPUT_REMOTE_PATH" -e "INPUT_REMOTE_HOST" -e "INPUT_REMOTE_PORT" -e "INPUT_REMOTE_USER" -e "INPUT_REMOTE_KEY" -e "INPUT_RSH" -e "INPUT_LEGACY_ALLOW_RSA_HOSTKEYS" -e "INPUT_REMOTE_KEY_PASS" -e "HOME" -e "GITHUB_JOB" -e "GITHUB_REF" -e "GITHUB_SHA" -e "GITHUB_REPOSITORY" -e "GITHUB_REPOSITORY_OWNER" -e "GITHUB_REPOSITORY_OWNER_ID" -e "GITHUB_RUN_ID" -e "GITHUB_RUN_NUMBER" -e "GITHUB_RETENTION_DAYS" -e "GITHUB_RUN_ATTEMPT" -e "GITHUB_REPOSITORY_ID" -e "GITHUB_ACTOR_ID" -e "GITHUB_ACTOR" -e "GITHUB_TRIGGERING_ACTOR" -e "GITHUB_WORKFLOW" -e "GITHUB_HEAD_REF" -e "GITHUB_BASE_REF" -e "GITHUB_EVENT_NAME" -e "GITHUB_SERVER_URL" -e "GITHUB_API_URL" -e "GITHUB_GRAPHQL_URL" -e "GITHUB_REF_NAME" -e "GITHUB_REF_PROTECTED" -e "GITHUB_REF_TYPE" -e "GITHUB_WORKFLOW_REF" -e "GITHUB_WORKFLOW_SHA" -e "GITHUB_WORKSPACE" -e "GITHUB_ACTION" -e "GITHUB_EVENT_PATH" -e "GITHUB_ACTION_REPOSITORY" -e "GITHUB_ACTION_REF" -e "GITHUB_PATH" -e "GITHUB_ENV" -e "GITHUB_STEP_SUMMARY" -e "GITHUB_STATE" -e "GITHUB_OUTPUT" -e "RUNNER_OS" -e "RUNNER_ARCH" -e "RUNNER_NAME" -e "RUNNER_ENVIRONMENT" -e "RUNNER_TOOL_CACHE" -e "RUNNER_TEMP" -e "RUNNER_WORKSPACE" -e "ACTIONS_RUNTIME_URL" -e "ACTIONS_RUNTIME_TOKEN" -e "ACTIONS_CACHE_URL" -e "ACTIONS_RESULTS_URL" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/_temp/_runner_file_commands":"/github/file_commands" -v "/home/runner/work/tc.rescor.net/tc.rescor.net":"/github/workspace" ed9137:c4752e4fbeef4ebbbc71833fd6f15328
12 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:13> Identity added: (stdin) (GitHub Deployment Key)
13 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:14> cmd=ssh -o StrictHostKeyChecking=no -p [REDACTED] machine=[REDACTED] user=www path=/home/www/deployment
14 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:15> cmd[0]=ssh cmd[1]=-o cmd[2]=StrictHostKeyChecking=no cmd[3]=-p cmd[4]=[REDACTED] cmd[5]=-l cmd[6]=www cmd[7]=[REDACTED] cmd[8]=rsync cmd[9]=--server cmd[10]=-vvvvlogDtprze.iLsfxCIvu cmd[11]=--delete cmd[12]=. cmd[13]=/home/www/deployment
15 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:16> opening connection using: ssh -o StrictHostKeyChecking=no -p [REDACTED] -l www [REDACTED] rsync --server -vvvvlogDtprze.iLsfxCIvu --delete . /home/www/deployment (14 args)
16 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:17> msg checking charset: UTF-8
17 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:18> kex_exchange_identification: read: Connection reset by peer
18 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:19> Connection reset by [REDACTED] port [REDACTED]
19 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:20> rsync: connection unexpectedly closed (0 bytes received so far) [sender]
20 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:21> rsync error: error in rsync protocol data stream (code 12) at io.c(231) [sender=3.2.7]
21 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:22> [sender] _exit_cleanup(code=12, file=io.c, line=231): entered
22 <https://github.com/arobthearab/tc.rescor.net/actions/runs/10496059481/job/29075863583#step:11:23> [sender] _exit_cleanup(code=12, file=io.c, line=231): about to call exit(12)
According to the log, the connection is being reset – but the four previous rsyncs using the same parameters (except path and remote path) all succeeded, and the connection is not seen by the host:
Aug 21 15:16:16 phosphorus sshd[15508]: Accepted publickey for www from 13.89.3.220 port 9856 ssh2: RSA SHA256:b0aDPOJYKdebjLjkKje1JJhqH9p+OOGKwaGJrzJGNA4
Aug 21 15:16:16 phosphorus systemd[15511]: pam_unix(systemd-user:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 15:16:16 phosphorus sshd[15508]: pam_unix(sshd:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 15:16:17 phosphorus sshd[15527]: Received disconnect from 13.89.3.220 port 9856:11: disconnected by user
Aug 21 15:16:17 phosphorus sshd[15527]: Disconnected from user www 13.89.3.220 port 9856
Aug 21 15:16:17 phosphorus sshd[15508]: pam_unix(sshd:session): session closed for user www
Aug 21 15:16:18 phosphorus sshd[15625]: Accepted publickey for www from 13.89.3.220 port 9857 ssh2: RSA SHA256:b0aDPOJYKdebjLjkKje1JJhqH9p+OOGKwaGJrzJGNA4
Aug 21 15:16:18 phosphorus sshd[15625]: pam_unix(sshd:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 15:16:19 phosphorus sshd[15627]: Received disconnect from 13.89.3.220 port 9857:11: disconnected by user
Aug 21 15:16:19 phosphorus sshd[15627]: Disconnected from user www 13.89.3.220 port 9857
Aug 21 15:16:19 phosphorus sshd[15625]: pam_unix(sshd:session): session closed for user www
Aug 21 15:16:21 phosphorus sshd[15725]: Accepted publickey for www from 13.89.3.220 port 9858 ssh2: RSA SHA256:b0aDPOJYKdebjLjkKje1JJhqH9p+OOGKwaGJrzJGNA4
Aug 21 15:16:21 phosphorus sshd[15725]: pam_unix(sshd:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 15:16:22 phosphorus sshd[15727]: Received disconnect from 13.89.3.220 port 9858:11: disconnected by user
Aug 21 15:16:22 phosphorus sshd[15727]: Disconnected from user www 13.89.3.220 port 9858
Aug 21 15:16:22 phosphorus sshd[15725]: pam_unix(sshd:session): session closed for user www
Aug 21 15:16:23 phosphorus sshd[15825]: Accepted publickey for www from 13.89.3.220 port 9859 ssh2: RSA SHA256:b0aDPOJYKdebjLjkKje1JJhqH9p+OOGKwaGJrzJGNA4
Aug 21 15:16:23 phosphorus sshd[15825]: pam_unix(sshd:session): session opened for user www(uid=2048) by www(uid=0)
Aug 21 15:16:24 phosphorus sshd[15828]: Received disconnect from 13.89.3.220 port 9859:11: disconnected by user
Aug 21 15:16:24 phosphorus sshd[15828]: Disconnected from user www 13.89.3.220 port 9859
Aug 21 15:16:24 phosphorus sshd[15825]: pam_unix(sshd:session): session closed for user www
Since this *is* being handled through a port forwarding, I checked the logs on the Unifi Security Gateway:
syslogemu.log.1:Aug 21 16:06:33 Unobtanium [PREROUTING-DNAT-15] DESCR="PortForward DNAT [TC SSH]" IN=eth8 OUT= MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=[REDACTED] LEN=60 TOS=00 PREC=0x00 TTL=43 ID=5685 DF PROTO=TCP SPT=22568 DPT=[REDACTED] SEQ=3349944661 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:06:33 Unobtanium [WAN_IN-RET-30010] DESCR="[WAN_IN]Allow Port Forward {TC SSH}" IN=eth8 OUT=br0 MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=10.0.0.60 LEN=60 TOS=00 PREC=0x00 TTL=42 ID=5685 DF PROTO=TCP SPT=22568 DPT=22 SEQ=3349944661 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:06:35 Unobtanium [PREROUTING-DNAT-15] DESCR="PortForward DNAT [TC SSH]" IN=eth8 OUT= MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=[REDACTED] LEN=60 TOS=00 PREC=0x00 TTL=43 ID=36996 DF PROTO=TCP SPT=22569 DPT=[REDACTED] SEQ=193353223 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:06:35 Unobtanium [WAN_IN-RET-30010] DESCR="[WAN_IN]Allow Port Forward {TC SSH}" IN=eth8 OUT=br0 MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=10.0.0.60 LEN=60 TOS=00 PREC=0x00 TTL=42 ID=36996 DF PROTO=TCP SPT=22569 DPT=22 SEQ=193353223 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:06:37 Unobtanium [PREROUTING-DNAT-15] DESCR="PortForward DNAT [TC SSH]" IN=eth8 OUT= MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=[REDACTED] LEN=60 TOS=00 PREC=0x00 TTL=44 ID=10177 DF PROTO=TCP SPT=22570 DPT=[REDACTED] SEQ=36946230 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:06:37 Unobtanium [WAN_IN-RET-30010] DESCR="[WAN_IN]Allow Port Forward {TC SSH}" IN=eth8 OUT=br0 MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=10.0.0.60 LEN=60 TOS=00 PREC=0x00 TTL=43 ID=10177 DF PROTO=TCP SPT=22570 DPT=22 SEQ=36946230 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:06:39 Unobtanium [PREROUTING-DNAT-15] DESCR="PortForward DNAT [TC SSH]" IN=eth8 OUT= MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=[REDACTED] LEN=60 TOS=00 PREC=0x00 TTL=44 ID=8585 DF PROTO=TCP SPT=22571 DPT=[REDACTED] SEQ=66393224 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:06:39 Unobtanium [WAN_IN-RET-30010] DESCR="[WAN_IN]Allow Port Forward {TC SSH}" IN=eth8 OUT=br0 MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=10.0.0.60 LEN=60 TOS=00 PREC=0x00 TTL=43 ID=8585 DF PROTO=TCP SPT=22571 DPT=22 SEQ=66393224 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:06:41 Unobtanium [PREROUTING-DNAT-15] DESCR="PortForward DNAT [TC SSH]" IN=eth8 OUT= MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=[REDACTED] LEN=60 TOS=00 PREC=0x00 TTL=44 ID=26777 DF PROTO=TCP SPT=22572 DPT=[REDACTED] SEQ=1783396620 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:06:41 Unobtanium [WAN_IN-RET-30010] DESCR="[WAN_IN]Allow Port Forward {TC SSH}" IN=eth8 OUT=br0 MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=10.0.0.60 LEN=60 TOS=00 PREC=0x00 TTL=43 ID=26777 DF PROTO=TCP SPT=22572 DPT=22 SEQ=1783396620 ACK=0 WINDOW=64240 SYN URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:10:55 Unobtanium [PREROUTING-DNAT-15] DESCR="PortForward DNAT [TC SSH]" IN=eth8 OUT= MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=[REDACTED] LEN=696 TOS=00 PREC=0x00 TTL=44 ID=26798 DF PROTO=TCP SPT=22572 DPT=[REDACTED] SEQ=1783398426 ACK=4193616184 WINDOW=501 ACK PSH URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:12:56 Unobtanium [PREROUTING-DNAT-15] DESCR="PortForward DNAT [TC SSH]" IN=eth8 OUT= MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=[REDACTED] LEN=696 TOS=00 PREC=0x00 TTL=44 ID=26799 DF PROTO=TCP SPT=22572 DPT=[REDACTED] SEQ=1783398426 ACK=4193616184 WINDOW=501 ACK PSH URGP=0 MARK=1a0000
syslogemu.log.1:Aug 21 16:12:56 Unobtanium [WAN_IN-RET-30010] DESCR="[WAN_IN]Allow Port Forward {TC SSH}" IN=eth8 OUT=br0 MAC=74:ac:b9:4a:ba:14:7c:db:98:e7:f8:54:08:00 SRC=172.177.245.197 DST=10.0.0.60 LEN=696 TOS=00 PREC=0x00 TTL=43 ID=26799 DF PROTO=TCP SPT=22572 DPT=22 SEQ=1783398426 ACK=4193616184 WINDOW=501 ACK PSH URGP=0 MARK=1a0000
The rules don’t prove much except there is no blocking of traffic going on. The fact there are 13 entries is ambiguous since there are 4 successful connections and I would expect some multiple of 4 log messages. However, the logs on the server are unequivocal that four connections are getting through to the server, and there are no dangling TCP connections to SSH, either.
PS – The time discrepancies are two separate runs, not a clock error.
--
Andy Robinson
CISO, Director of Products & Professional Services
***@***.*** ***@***.***>
+1 207 517.6121 (d)
+1 207 232.6381 (m)
www.rescor.net <http://www.rescor.net>
From: Steven Agyekum ***@***.***>
Reply-To: Burnett01/rsync-deployments ***@***.***>
Date: Wednesday, August 21, 2024 at 14:44
To: Burnett01/rsync-deployments ***@***.***>
Cc: Andy Robinson ***@***.***>, Mention ***@***.***>
Subject: Re: [Burnett01/rsync-deployments] ***@***.*** hangs transferring specific files (Issue #64)
Hi @arobthearab <https://github.com/arobthearab>
can you try using an absolute path like /*.sh since the absolute path / represents your checked out github workspace
—
Reply to this email directly, view it on GitHub <#64 (comment)> , or unsubscribe <https://github.com/notifications/unsubscribe-auth/AG4PYEMKS3FKNFXML7NIWXDZSTNXTAVCNFSM6AAAAABM4KW46CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBSG4ZTGNRQHE> .
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
@arobthearab could you please post your logs formatted directly on the GitHub page instead of through the email client? It's quite hard to read and not very professional when shared that way. |
Requesting the logs in another format is fine but I suggest you keep the editorial comments to yourself. Broadcasting them in a public forum is ABSOLUTELY not professional. In summary, neither my firewall or my host are ever receiving the fifth connection for the specific files *.sh. I haven't run a pcap to see if I'm getting a half-open. But I can run between 2 and 6 rsync steps in other repositories without problems as long as the "path" is a directory - it's only when I try to sync specific files in the root of the repo that this occurs, and I have tried: /*.sh |
If you're benefiting from open-source software for free in a commercial setting (which seems evident from your email signature), it's reasonable to put in some effort. I couldn't replicate the error either, so it's likely an issue with your system. I recommend closing this issue, @Burnett01 |
Both your response and downvoting are more evidence of unprofessional conduct. Since you are offering open source software for all use cases, and since it is failing in this use case, the problem is NOT with "my system," but with your software, since a manual rsync from a remote host yields correct results. It is fair enough to say "we can't replicate this and will park the issue" - that would be the professional thing to do - it is another thing to rationalize and self-justify as you have done here. As someone who has been writing software which I have made freely available for over 40 years, I don't have much tolerance for your attitude. |
Hey @arobthearab, It’s unfortunate that you’ve chosen to bring the discussion to this level. While feedback is certainly welcome, the tone and manner in which you’re expressing your concerns are far from the constructive collaboration that is so vital in the open-source community. Your expectation that we can instantly replicate and resolve every potential issue shows a misunderstanding of how complex software projects and their maintenance work. What’s particularly frustrating is that while you expect help, the information you’ve provided is neither structured nor helpful. Instead of clear and precise information, you’ve sent us disorganized logs that are nearly impossible to sift through. I understand that you’re feeling frustrated, but that doesn’t justify your aggressive accusations and personal attacks. If you’ve been developing software for over 40 years, you should know that respectful communication is key, especially when you’re relying on others for assistance. I would therefore ask that in the future, you communicate in a more factual and constructive manner if you’re genuinely interested in finding a solution. This will make collaboration much smoother, and we can focus on solving the actual issue together. Thank you. |
Hello guys, @nils-kt I don't think it's unprofessional posting the logs here, unless they contain sensitive information, but so far I didn't see this :) Let's get back to the root cause of the issue - the rsync connection not being established. As you mentioned @arobthearab, |
To the level which _I_ brought it? Editorialization about“ professional“ came from you.
Also do not project: I have not demanded anything from you, I have posted a problem, responded to request for information, and have spent many hours of my own time trying to debug this. You can certainly choose to ignore it entirely, or you can choose to act on the information, or you can park the issue until more details are available.
I agree with the other contributor that we ought not be arguing with one another so for my part I will stick with the facts going forward.
…Sent from my iPhone
On Aug 22, 2024, at 13:17, Steven Agyekum ***@***.***> wrote:
Hello guys,
please do not fight :)
We are all developers trying to help one another ❤️
@nils-kt I don't think it's unprofessional posting the logs here, unless they contain sensitive information, but so far I didn't see this :)
While I agree that it's hard to read the logs.
--------------------------------
Let's get back to the root cause of the issue - the rsync connection not being established.
As you mentioned @arobthearab,
the connection is not being made which may be indeed a connection issue from the action runner on Github. Can you try changing the remote path to use the same as for the working ones.
Let's try that.
—
Reply to this email directly, view it on GitHub <#64 (comment)> , or unsubscribe <https://github.com/notifications/unsubscribe-auth/AG4PYEK3U533W4ACQZPAITLZSYMIZAVCNFSM6AAAAABM4KW46CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBVGI3DGMBTGA> .
You are receiving this because you were mentioned. <https://github.com/notifications/beacon/AG4PYEIV22D2K5XIRKL5NR3ZSYMIZA5CNFSM6AAAAABM4KW46CWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTUJM6C3M.gif> Message ID: ***@***.***>
|
Steve, for my part I apologize.
I understand you to be asking me to set the target path to one of the target paths that worked in the previous syncs—is that correct?
|
Hey @arobthearab , no need to apologize :) Yes that is correct. Let's try it with a remote path from a working one. Greetings Steve |
I tried remote_paths as follows: In each case the rsync step times out. So I moved the install.sh script to a specific install directory - same result (rsync times out). I then duplicated a previous rsync (the third step in my action) including path, remote_path, and options, and it still hangs and times out. I then commented out the third step so that the original fifth step (which was still a duplicate of the third step) is now the fourth step - SUCCESSFUL EXECUTION Finally, I restored the final (now fourth) step with path=install/install.sh and remote_path=${{vars.TARGET}} - SUCCESSFUL EXECUTION It appears that the fifth rsync step fails in my action no matter how it is formatted. I don't know if this is a networking limitation in the runner container. I verified that from an AWS EC2 instance (NOT a self-hosted runner, but simply running manual rsync commands) that I can establish more than four connections to my target server. I went through the GitHub public documentation on GitHub-hosted runners and can't find any evidence of such a limit. |
PS - This also explains an earlier issue I had with appleboy/[email protected] (which I initially tried because I was only copying a specific file). It failed in the same way. So I guess this is not a problem with rsync-deployments but with the GitHub-managed runner networking. |
Hello @arobthearab I will try to test this type of scenario (5x rsync steps) and will report back. It could be a Github limitation as you mentioned. If I have more information I will report back. Best greetings |
Actual Behavior
Rsync action fails when attempting to use a path of "*.sh"
Expected Behavior
Rsync would treat the path as it would be treated in any rsync command, in this case to synchronize all shell scripts in the root directory of the repository.
Details
I have five rsync steps in my GitHub action, four of which work without a hitch, and are of this general form:
but the fifth attempts to copy a pattern from the base directory of the repository:
The result of this operation is:
All the other successful steps use the same parameters.
Since all the other paths are relative I assume that "*.sh" would be the correct path specification to match all shell files in the root directory of the repository.
Based on logs at the receiving end, the first four rsyncs connect and work as expected, but the fifth to copy *.sh does not appear to connect at all.
The text was updated successfully, but these errors were encountered: