appleboy / drone-scp

Copy files and artifacts via SSH using a binary, docker or Drone CI.
MIT License
142 stars 29 forks source link

Copying from linux to windows #111

Closed gilesbradshaw closed 1 year ago

gilesbradshaw commented 4 years ago

It's creating the directory but then exiting with 1 - I'm guessing that it's copying tared files and then can't untar

is it meant to work in this situation?

affinage-digital commented 4 years ago

same issue

tar all files into /tmp/998692313/UEZ9tPuEIK.tar scp file to server. create folder *** drone-scp error: Process exited with status 1 drone-scp rollback: remove all target tmp file remove file UEZ9tPuEIK.tar 2020/06/28 21:37:37 Process exited with status 1

how can i set target path to other disk? like "E:\projects\project\123"

when i run this script

_- name: executing remote ssh commands using ssh key uses: appleboy/ssh-action@master with: host: ${{ secrets.DEPLOY_HOST }} username: ${{ secrets.DEPLOY_USER }} key: ${{ secrets.DEPLOY_KEY }} port: ${{ secrets.DEPLOYPORT }} script: | whoami pwd

result will be out: Path
out: ----
out: C:\Users***
- what is root folder ***?

ThomasAunvik commented 3 years ago

@gilesbradshaw @affinage-digital Hey, the pull request above will fix this issue, but there is also a workaround to it.

Another workaround to these issues, are to change the default shell of OpenSSH to be a bash shell. By installing git, and use the git bash terminal as the default shell.

New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Users\user\AppData\Local\Programs\Git\bin\bash.exe" -PropertyType String -Force

https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_server_configuration

Originally posted by @ThomasAunvik in https://github.com/appleboy/drone-scp/pull/119#issuecomment-694683478

appleboy commented 1 year ago

Please try the following version

  build:
    name: Build
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@master
    - name: copy file via ssh password
-     uses: appleboy/scp-action@master
+     uses: appleboy/scp-action@7af00892de6f8397c5c3393cfb3b32ae7f91b94b
      with:
        host: ${{ secrets.HOST }}
        username: ${{ secrets.USERNAME }}
        password: ${{ secrets.PASSWORD }}
        port: ${{ secrets.PORT }}
        source: "tests/a.txt,tests/b.txt"
        target: "test"