- name: Transfer JAR to Azure VM
uses: appleboy/[email protected]
with:
host: ${{ secrets.AZURE_VM_IP }}
username: ${{ secrets.AZURE_VM_USER }}
password: ${{ secrets.AZURE_VM_PASSWORD }}
source: FreeToGo-1.0.0.jar
target: C:/Users/${{ secrets.AZURE_VM_USER }}/Desktop/FreeToGo/Github
port: 22
timeout: 30s
debug: true
,但是,该动作失败了以下错误:
tar all files into `/tmp/210630603/HRFZPg9wLX.tar
$ tar -cf /tmp/210630603/HRFZPg9wLX.tar FreeToGo-1.0.0.jar
scp file to server.
create folder C:/Users/***/Desktop/FreeToGo/Github
drone-scp error: Process exited with status 1
drone-scp rollback: remove all target tmp file
remove file HRFZPg9wLX.tar
2025/01/22 18:38:42 Process exited with status 1
到目前为止,我尝试了什么:
允许Azure VM凭据(IP,用户名和密码)是正确的。 检查了工作区中是否存在Freetogo-1.0.0.jar文件。 设置调试:tule启用详细记录,但错误仍然不清楚。 问题:
在状态1错误中退出该过程的根本原因可能是什么? SCP是否需要在Azure VM上进行特定的权限或配置才能成功? 对解决和解决此问题进行故障排除和解决的任何见解或建议将不胜感激。
使用目标位置的UNIX式路径。
target: /c/Users/${{ secrets.AZURE_VM_USER }}/Desktop/FreeToGo/Github
avoid取决于SCP操作以创建目录,登录Azure VM并手动创建目标目录。检查SCP用户已为目录提供了权限。
mkdir C:\Users\${YOUR_USERNAME}\Desktop\FreeToGo\Github
azure文件共享 +azcopy
\
\ seccure ftp(sftp)使用另一个github动作。
- name: Transfer JAR to Azure VM
uses: appleboy/[email protected]
with:
host: ${{ secrets.AZURE_VM_IP }}
username: ${{ secrets.AZURE_VM_USER }}
password: ${{ secrets.AZURE_VM_PASSWORD }}
source: FreeToGo-1.0.0.jar
target: /c/Users/${{ secrets.AZURE_VM_USER }}/Desktop/FreeToGo/Github
port: 22
timeout: 30s
debug: true
即使凭据正确,SCP需要UNIX风格的SSH/SCP环境才能功能。 使用本地计算机使用SCP,以检查命令是否在GitHub Actions之外工作
scp -P 22 FreeToGo-1.0.0.jar <USERNAME>@<AZURE_VM_IP>:/c/Users/<USERNAME>/Desktop/FreeToGo/Github
如果失败,问题是服务器端(权限,SCP服务)。