SamKirkland / FTP-Deploy-Action

Deploys a GitHub project to a FTP server using GitHub actions
MIT License
3.89k stars 375 forks source link

Github action with lfs:true causes uploading all the files by git-ftp #114

Closed alex-one-v closed 1 year ago

alex-one-v commented 4 years ago

Bug Description When I've tired to use the FTP-Deploy-Action with enabled LFS support (by adding lfs: true in the yaml config) git ftp started uploading all the files instead of the new commit only. During the upload process I've got the following error:

git-lfs filter-process: 1: git-lfs filter-process: git-lfs: not found
 fatal: the remote end hung up unexpectedly

And also

Unknown SHA1 object, could not determine changed files, taking all files.

Without enabling LFS the FTP-Deploy-Action works OK, and no other issues appeared.

Note: changing fetch-depth: 2 to fetch-depth: 0 not helps. Both errors are still presented. The LFS error is sightly changed

  git-lfs filter-process: 1: git-lfs filter-process: git-lfs: not found
  error: packet write with format failed
  error: Could not write client identification
  error: initialization for subprocess 'git-lfs filter-process' failed
  fatal: Dynamic-depth-v1.0.pdf: clean filter 'lfs' failed

My Action Config

# This is a basic workflow to help you get started with Actions

name: CI

# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
  # This workflow contains a single job called "build"
  build:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest

    # Steps represent a sequence of tasks that will be executed as part of the job
    steps:

    - uses: actions/checkout@v2.1.0
      with:
        lfs: true
        fetch-depth: 2
    - name: git-ftp push
      uses: SamKirkland/FTP-Deploy-Action@3.1.1
      with:
        ftp-server: "ftp://myFTPserver/"
        ftp-username: ${{ secrets.FTP_USER }}
        ftp-password: ${{ secrets.FTP_PASSWORD }}

My Action Log

Current runner version: '2.273.5'
Operating System
  Ubuntu
  18.04.5
  LTS
Virtual Environment
  Environment: ubuntu-18.04
  Version: 20201015.1
  Included Software: https://github.com/actions/virtual-environments/blob/ubuntu18/20201015.1/images/linux/Ubuntu1804-README.md
Prepare workflow directory
Prepare all required actions
Getting action download info
Download action repository 'actions/checkout@v2.1.0'
Download action repository 'SamKirkland/FTP-Deploy-Action@3.1.1'
34s
Build container for action use: '/home/runner/work/_actions/SamKirkland/FTP-Deploy-Action/3.1.1/Dockerfile'.
  /usr/bin/docker build -t 1e5c35:3655de99283e4809bb9153daba1703c1 -f "/home/runner/work/_actions/SamKirkland/FTP-Deploy-Action/3.1.1/Dockerfile" "/home/runner/work/_actions/SamKirkland/FTP-Deploy-Action/3.1.1"
  Sending build context to Docker daemon  348.2kB

  Step 1/10 : FROM debian:stable-slim
  stable-slim: Pulling from library/debian
  58db8e8debc5: Pulling fs layer
  58db8e8debc5: Verifying Checksum
  58db8e8debc5: Download complete
  58db8e8debc5: Pull complete
  Digest: sha256:b488c06160cb6b7b0fc33081de1001c194ebcd9a7fff9dfff27381cd350dcbe8
  Status: Downloaded newer image for debian:stable-slim
   ---> c1657e9a6927
  Step 2/10 : LABEL repository="https://github.com/SamKirkland/FTP-Deploy-Action"
   ---> Running in c1d89fef4fac
  Removing intermediate container c1d89fef4fac
   ---> 1b9b565e2d65
  Step 3/10 : LABEL maintainer="Sam Kirkland <FTP-Deploy-Action@samkirkland.com>"
   ---> Running in 30957ded8e16
  Removing intermediate container 30957ded8e16
   ---> d79c86280c31
  Step 4/10 : RUN apt-get update
   ---> Running in 61fbef048284
  Get:1 http://deb.debian.org/debian stable InRelease [121 kB]
  Get:2 http://security.debian.org/debian-security stable/updates InRelease [65.4 kB]
  Get:3 http://deb.debian.org/debian stable-updates InRelease [51.9 kB]
  Get:4 http://security.debian.org/debian-security stable/updates/main amd64 Packages [243 kB]
  Get:5 http://deb.debian.org/debian stable/main amd64 Packages [7906 kB]
  Get:6 http://deb.debian.org/debian stable-updates/main amd64 Packages [7856 B]
  Fetched 8396 kB in 2s (4310 kB/s)
  Reading package lists...
  Removing intermediate container 61fbef048284
   ---> 9cd9162f3caf
  Step 5/10 : RUN apt-get install -y git
   ---> Running in 68d13162e0df
  Reading package lists...
  Building dependency tree...
  Reading state information...
  The following additional packages will be installed:
    ca-certificates git-man krb5-locales less libbsd0 libcurl3-gnutls libedit2
    liberror-perl libexpat1 libgdbm-compat4 libgdbm6 libgssapi-krb5-2
    libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2
    libldap-common libnghttp2-14 libpcre2-8-0 libperl5.28 libpsl5 librtmp1
    libsasl2-2 libsasl2-modules libsasl2-modules-db libssh2-1 libssl1.1 libx11-6
    libx11-data libxau6 libxcb1 libxdmcp6 libxext6 libxmuu1 netbase
    openssh-client openssl patch perl perl-modules-5.28 publicsuffix xauth
  Suggested packages:
    gettext-base git-daemon-run | git-daemon-sysvinit git-doc git-el git-email
    git-gui gitk gitweb git-cvs git-mediawiki git-svn gdbm-l10n krb5-doc
    krb5-user sensible-utils libsasl2-modules-gssapi-mit
    | libsasl2-modules-gssapi-heimdal libsasl2-modules-ldap libsasl2-modules-otp
    libsasl2-modules-sql keychain libpam-ssh monkeysphere ssh-askpass ed
    diffutils-doc perl-doc libterm-readline-gnu-perl
    | libterm-readline-perl-perl make libb-debug-perl liblocale-codes-perl
  The following NEW packages will be installed:
    ca-certificates git git-man krb5-locales less libbsd0 libcurl3-gnutls
    libedit2 liberror-perl libexpat1 libgdbm-compat4 libgdbm6 libgssapi-krb5-2
    libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2
    libldap-common libnghttp2-14 libpcre2-8-0 libperl5.28 libpsl5 librtmp1
    libsasl2-2 libsasl2-modules libsasl2-modules-db libssh2-1 libssl1.1 libx11-6
    libx11-data libxau6 libxcb1 libxdmcp6 libxext6 libxmuu1 netbase
    openssh-client openssl patch perl perl-modules-5.28 publicsuffix xauth
  0 upgraded, 44 newly installed, 0 to remove and 1 not upgraded.
  Need to get 22.0 MB of archives.
  After this operation, 106 MB of additional disk space will be used.
  Get:1 http://deb.debian.org/debian stable/main amd64 perl-modules-5.28 all 5.28.1-6+deb10u1 [2873 kB]
  Get:2 http://deb.debian.org/debian stable/main amd64 libgdbm6 amd64 1.18.1-4 [64.7 kB]
  Get:3 http://deb.debian.org/debian stable/main amd64 libgdbm-compat4 amd64 1.18.1-4 [44.1 kB]
  Get:4 http://deb.debian.org/debian stable/main amd64 libperl5.28 amd64 5.28.1-6+deb10u1 [3894 kB]
  Get:5 http://deb.debian.org/debian stable/main amd64 perl amd64 5.28.1-6+deb10u1 [204 kB]
  Get:6 http://deb.debian.org/debian stable/main amd64 less amd64 487-0.1+b1 [129 kB]
  Get:7 http://deb.debian.org/debian stable/main amd64 netbase all 5.6 [19.4 kB]
  Get:8 http://deb.debian.org/debian stable/main amd64 krb5-locales all 1.17-3 [95.4 kB]
  Get:9 http://deb.debian.org/debian stable/main amd64 libbsd0 amd64 0.9.1-2 [99.5 kB]
  Get:10 http://deb.debian.org/debian stable/main amd64 libedit2 amd64 3.1-20181209-1 [94.0 kB]
  Get:11 http://deb.debian.org/debian stable/main amd64 libkeyutils1 amd64 1.6-6 [15.0 kB]
  Get:12 http://deb.debian.org/debian stable/main amd64 libkrb5support0 amd64 1.17-3 [65.6 kB]
  Get:13 http://deb.debian.org/debian stable/main amd64 libk5crypto3 amd64 1.17-3 [121 kB]
  Get:14 http://deb.debian.org/debian stable/main amd64 libssl1.1 amd64 1.1.1d-0+deb10u3 [1538 kB]
  Get:15 http://deb.debian.org/debian stable/main amd64 libkrb5-3 amd64 1.17-3 [370 kB]
  Get:16 http://deb.debian.org/debian stable/main amd64 libgssapi-krb5-2 amd64 1.17-3 [158 kB]
  Get:17 http://deb.debian.org/debian stable/main amd64 openssh-client amd64 1:7.9p1-10+deb10u2 [782 kB]
  Get:18 http://deb.debian.org/debian stable/main amd64 openssl amd64 1.1.1d-0+deb10u3 [844 kB]
  Get:19 http://deb.debian.org/debian stable-updates/main amd64 ca-certificates all 20200601~deb10u1 [158 kB]
  Get:20 http://deb.debian.org/debian stable/main amd64 libsasl2-modules-db amd64 2.1.27+dfsg-1+deb10u1 [69.1 kB]
  Get:21 http://deb.debian.org/debian stable/main amd64 libsasl2-2 amd64 2.1.27+dfsg-1+deb10u1 [106 kB]
  Get:22 http://deb.debian.org/debian stable/main amd64 libldap-common all 2.4.47+dfsg-3+deb10u2 [89.7 kB]
  Get:23 http://deb.debian.org/debian stable/main amd64 libldap-2.4-2 amd64 2.4.47+dfsg-3+deb10u2 [224 kB]
  Get:24 http://deb.debian.org/debian stable/main amd64 libnghttp2-14 amd64 1.36.0-2+deb10u1 [85.0 kB]
  Get:25 http://deb.debian.org/debian stable/main amd64 libpsl5 amd64 0.20.2-2 [53.7 kB]
  Get:26 http://deb.debian.org/debian stable/main amd64 librtmp1 amd64 2.4+20151223.gitfa8646d.1-2 [60.5 kB]
  Get:27 http://deb.debian.org/debian stable/main amd64 libssh2-1 amd64 1.8.0-2.1 [140 kB]
  Get:28 http://deb.debian.org/debian stable/main amd64 libcurl3-gnutls amd64 7.64.0-4+deb10u1 [330 kB]
  Get:29 http://deb.debian.org/debian stable/main amd64 libexpat1 amd64 2.2.6-2+deb10u1 [106 kB]
  Get:30 http://deb.debian.org/debian stable/main amd64 libpcre2-8-0 amd64 10.32-5 [213 kB]
  Get:31 http://deb.debian.org/debian stable/main amd64 liberror-perl all 0.17027-2 [30.9 kB]
  Get:32 http://deb.debian.org/debian stable/main amd64 git-man all 1:2.20.1-2+deb10u3 [1620 kB]
  Get:33 http://deb.debian.org/debian stable/main amd64 git amd64 1:2.20.1-2+deb10u3 [5633 kB]
  Get:34 http://deb.debian.org/debian stable/main amd64 libsasl2-modules amd64 2.1.27+dfsg-1+deb10u1 [104 kB]
  Get:35 http://deb.debian.org/debian stable/main amd64 libxau6 amd64 1:1.0.8-1+b2 [19.9 kB]
  Get:36 http://deb.debian.org/debian stable/main amd64 libxdmcp6 amd64 1:1.1.2-3 [26.3 kB]
  Get:37 http://deb.debian.org/debian stable/main amd64 libxcb1 amd64 1.13.1-2 [137 kB]
  Get:38 http://deb.debian.org/debian stable/main amd64 libx11-data all 2:1.6.7-1+deb10u1 [294 kB]
  Get:39 http://deb.debian.org/debian stable/main amd64 libx11-6 amd64 2:1.6.7-1+deb10u1 [757 kB]
  Get:40 http://deb.debian.org/debian stable/main amd64 libxext6 amd64 2:1.3.3-1+b2 [52.5 kB]
  Get:41 http://deb.debian.org/debian stable/main amd64 libxmuu1 amd64 2:1.1.2-2+b3 [23.9 kB]
  Get:42 http://deb.debian.org/debian stable/main amd64 patch amd64 2.7.6-3+deb10u1 [126 kB]
  Get:43 http://deb.debian.org/debian stable/main amd64 publicsuffix all 20190415.1030-1 [116 kB]
  Get:44 http://deb.debian.org/debian stable/main amd64 xauth amd64 1:1.0.10-1 [40.3 kB]
  debconf: delaying package configuration, since apt-utils is not installed
  Fetched 22.0 MB in 1s (26.8 MB/s)
  Selecting previously unselected package perl-modules-5.28.
  (Reading database ... 
  (Reading database ... 5%

  (Reading database ... 100%
  (Reading database ... 6460 files and directories currently installed.)
  Preparing to unpack .../00-perl-modules-5.28_5.28.1-6+deb10u1_all.deb ...
  Unpacking perl-modules-5.28 (5.28.1-6+deb10u1) ...
  Selecting previously unselected package libgdbm6:amd64.
  Preparing to unpack .../01-libgdbm6_1.18.1-4_amd64.deb ...
  Unpacking libgdbm6:amd64 (1.18.1-4) ...
  Selecting previously unselected package libgdbm-compat4:amd64.
  Preparing to unpack .../02-libgdbm-compat4_1.18.1-4_amd64.deb ...
  Unpacking libgdbm-compat4:amd64 (1.18.1-4) ...
  Selecting previously unselected package libperl5.28:amd64.
  Preparing to unpack .../03-libperl5.28_5.28.1-6+deb10u1_amd64.deb ...
  Unpacking libperl5.28:amd64 (5.28.1-6+deb10u1) ...
  Selecting previously unselected package perl.
  Preparing to unpack .../04-perl_5.28.1-6+deb10u1_amd64.deb ...
  Unpacking perl (5.28.1-6+deb10u1) ...
  Selecting previously unselected package less.
  Preparing to unpack .../05-less_487-0.1+b1_amd64.deb ...
  Unpacking less (487-0.1+b1) ...
  Selecting previously unselected package netbase.
  Preparing to unpack .../06-netbase_5.6_all.deb ...
  Unpacking netbase (5.6) ...
  Selecting previously unselected package krb5-locales.
  Preparing to unpack .../07-krb5-locales_1.17-3_all.deb ...
  Unpacking krb5-locales (1.17-3) ...
  Selecting previously unselected package libbsd0:amd64.
  Preparing to unpack .../08-libbsd0_0.9.1-2_amd64.deb ...
  Unpacking libbsd0:amd64 (0.9.1-2) ...
  Selecting previously unselected package libedit2:amd64.
  Preparing to unpack .../09-libedit2_3.1-20181209-1_amd64.deb ...
  Unpacking libedit2:amd64 (3.1-20181209-1) ...
  Selecting previously unselected package libkeyutils1:amd64.
  Preparing to unpack .../10-libkeyutils1_1.6-6_amd64.deb ...
  Unpacking libkeyutils1:amd64 (1.6-6) ...
  Selecting previously unselected package libkrb5support0:amd64.
  Preparing to unpack .../11-libkrb5support0_1.17-3_amd64.deb ...
  Unpacking libkrb5support0:amd64 (1.17-3) ...
  Selecting previously unselected package libk5crypto3:amd64.
  Preparing to unpack .../12-libk5crypto3_1.17-3_amd64.deb ...
  Unpacking libk5crypto3:amd64 (1.17-3) ...
  Selecting previously unselected package libssl1.1:amd64.
  Preparing to unpack .../13-libssl1.1_1.1.1d-0+deb10u3_amd64.deb ...
  Unpacking libssl1.1:amd64 (1.1.1d-0+deb10u3) ...
  Selecting previously unselected package libkrb5-3:amd64.
  Preparing to unpack .../14-libkrb5-3_1.17-3_amd64.deb ...
  Unpacking libkrb5-3:amd64 (1.17-3) ...
  Selecting previously unselected package libgssapi-krb5-2:amd64.
  Preparing to unpack .../15-libgssapi-krb5-2_1.17-3_amd64.deb ...
  Unpacking libgssapi-krb5-2:amd64 (1.17-3) ...
  Selecting previously unselected package openssh-client.
  Preparing to unpack .../16-openssh-client_1%3a7.9p1-10+deb10u2_amd64.deb ...
  Unpacking openssh-client (1:7.9p1-10+deb10u2) ...
  Selecting previously unselected package openssl.
  Preparing to unpack .../17-openssl_1.1.1d-0+deb10u3_amd64.deb ...
  Unpacking openssl (1.1.1d-0+deb10u3) ...
  Selecting previously unselected package ca-certificates.
  Preparing to unpack .../18-ca-certificates_20200601~deb10u1_all.deb ...
  Unpacking ca-certificates (20200601~deb10u1) ...
  Selecting previously unselected package libsasl2-modules-db:amd64.
  Preparing to unpack .../19-libsasl2-modules-db_2.1.27+dfsg-1+deb10u1_amd64.deb ...
  Unpacking libsasl2-modules-db:amd64 (2.1.27+dfsg-1+deb10u1) ...
  Selecting previously unselected package libsasl2-2:amd64.
  Preparing to unpack .../20-libsasl2-2_2.1.27+dfsg-1+deb10u1_amd64.deb ...
  Unpacking libsasl2-2:amd64 (2.1.27+dfsg-1+deb10u1) ...
  Selecting previously unselected package libldap-common.
  Preparing to unpack .../21-libldap-common_2.4.47+dfsg-3+deb10u2_all.deb ...
  Unpacking libldap-common (2.4.47+dfsg-3+deb10u2) ...
  Selecting previously unselected package libldap-2.4-2:amd64.
  Preparing to unpack .../22-libldap-2.4-2_2.4.47+dfsg-3+deb10u2_amd64.deb ...
  Unpacking libldap-2.4-2:amd64 (2.4.47+dfsg-3+deb10u2) ...
  Selecting previously unselected package libnghttp2-14:amd64.
  Preparing to unpack .../23-libnghttp2-14_1.36.0-2+deb10u1_amd64.deb ...
  Unpacking libnghttp2-14:amd64 (1.36.0-2+deb10u1) ...
  Selecting previously unselected package libpsl5:amd64.
  Preparing to unpack .../24-libpsl5_0.20.2-2_amd64.deb ...
  Unpacking libpsl5:amd64 (0.20.2-2) ...
  Selecting previously unselected package librtmp1:amd64.
  Preparing to unpack .../25-librtmp1_2.4+20151223.gitfa8646d.1-2_amd64.deb ...
  Unpacking librtmp1:amd64 (2.4+20151223.gitfa8646d.1-2) ...
  Selecting previously unselected package libssh2-1:amd64.
  Preparing to unpack .../26-libssh2-1_1.8.0-2.1_amd64.deb ...
  Unpacking libssh2-1:amd64 (1.8.0-2.1) ...
  Selecting previously unselected package libcurl3-gnutls:amd64.
  Preparing to unpack .../27-libcurl3-gnutls_7.64.0-4+deb10u1_amd64.deb ...
  Unpacking libcurl3-gnutls:amd64 (7.64.0-4+deb10u1) ...
  Selecting previously unselected package libexpat1:amd64.
  Preparing to unpack .../28-libexpat1_2.2.6-2+deb10u1_amd64.deb ...
  Unpacking libexpat1:amd64 (2.2.6-2+deb10u1) ...
  Selecting previously unselected package libpcre2-8-0:amd64.
  Preparing to unpack .../29-libpcre2-8-0_10.32-5_amd64.deb ...
  Unpacking libpcre2-8-0:amd64 (10.32-5) ...
  Selecting previously unselected package liberror-perl.
  Preparing to unpack .../30-liberror-perl_0.17027-2_all.deb ...
  Unpacking liberror-perl (0.17027-2) ...
  Selecting previously unselected package git-man.
  Preparing to unpack .../31-git-man_1%3a2.20.1-2+deb10u3_all.deb ...
  Unpacking git-man (1:2.20.1-2+deb10u3) ...
  Selecting previously unselected package git.
  Preparing to unpack .../32-git_1%3a2.20.1-2+deb10u3_amd64.deb ...
  Unpacking git (1:2.20.1-2+deb10u3) ...
  Selecting previously unselected package libsasl2-modules:amd64.
  Preparing to unpack .../33-libsasl2-modules_2.1.27+dfsg-1+deb10u1_amd64.deb ...
  Unpacking libsasl2-modules:amd64 (2.1.27+dfsg-1+deb10u1) ...
  Selecting previously unselected package libxau6:amd64.
  Preparing to unpack .../34-libxau6_1%3a1.0.8-1+b2_amd64.deb ...
  Unpacking libxau6:amd64 (1:1.0.8-1+b2) ...
  Selecting previously unselected package libxdmcp6:amd64.
  Preparing to unpack .../35-libxdmcp6_1%3a1.1.2-3_amd64.deb ...
  Unpacking libxdmcp6:amd64 (1:1.1.2-3) ...
  Selecting previously unselected package libxcb1:amd64.
  Preparing to unpack .../36-libxcb1_1.13.1-2_amd64.deb ...
  Unpacking libxcb1:amd64 (1.13.1-2) ...
  Selecting previously unselected package libx11-data.
  Preparing to unpack .../37-libx11-data_2%3a1.6.7-1+deb10u1_all.deb ...
  Unpacking libx11-data (2:1.6.7-1+deb10u1) ...
  Selecting previously unselected package libx11-6:amd64.
  Preparing to unpack .../38-libx11-6_2%3a1.6.7-1+deb10u1_amd64.deb ...
  Unpacking libx11-6:amd64 (2:1.6.7-1+deb10u1) ...
  Selecting previously unselected package libxext6:amd64.
  Preparing to unpack .../39-libxext6_2%3a1.3.3-1+b2_amd64.deb ...
  Unpacking libxext6:amd64 (2:1.3.3-1+b2) ...
  Selecting previously unselected package libxmuu1:amd64.
  Preparing to unpack .../40-libxmuu1_2%3a1.1.2-2+b3_amd64.deb ...
  Unpacking libxmuu1:amd64 (2:1.1.2-2+b3) ...
  Selecting previously unselected package patch.
  Preparing to unpack .../41-patch_2.7.6-3+deb10u1_amd64.deb ...
  Unpacking patch (2.7.6-3+deb10u1) ...
  Selecting previously unselected package publicsuffix.
  Preparing to unpack .../42-publicsuffix_20190415.1030-1_all.deb ...
  Unpacking publicsuffix (20190415.1030-1) ...
  Selecting previously unselected package xauth.
  Preparing to unpack .../43-xauth_1%3a1.0.10-1_amd64.deb ...
  Unpacking xauth (1:1.0.10-1) ...
  Setting up perl-modules-5.28 (5.28.1-6+deb10u1) ...
  Setting up libexpat1:amd64 (2.2.6-2+deb10u1) ...
  Setting up libxau6:amd64 (1:1.0.8-1+b2) ...
  Setting up libkeyutils1:amd64 (1.6-6) ...
  Setting up libpsl5:amd64 (0.20.2-2) ...
  Setting up libssl1.1:amd64 (1.1.1d-0+deb10u3) ...
  debconf: unable to initialize frontend: Dialog
  debconf: (TERM is not set, so the dialog frontend is not usable.)
  debconf: falling back to frontend: Readline
  Setting up libsasl2-modules:amd64 (2.1.27+dfsg-1+deb10u1) ...
  Setting up libnghttp2-14:amd64 (1.36.0-2+deb10u1) ...
  Setting up less (487-0.1+b1) ...
  debconf: unable to initialize frontend: Dialog
  debconf: (TERM is not set, so the dialog frontend is not usable.)
  debconf: falling back to frontend: Readline
  Setting up krb5-locales (1.17-3) ...
  Setting up libldap-common (2.4.47+dfsg-3+deb10u2) ...
  Setting up libkrb5support0:amd64 (1.17-3) ...
  Setting up libsasl2-modules-db:amd64 (2.1.27+dfsg-1+deb10u1) ...
  Setting up libx11-data (2:1.6.7-1+deb10u1) ...
  Setting up librtmp1:amd64 (2.4+20151223.gitfa8646d.1-2) ...
  Setting up patch (2.7.6-3+deb10u1) ...
  Setting up libpcre2-8-0:amd64 (10.32-5) ...
  Setting up libk5crypto3:amd64 (1.17-3) ...
  Setting up libsasl2-2:amd64 (2.1.27+dfsg-1+deb10u1) ...
  Setting up git-man (1:2.20.1-2+deb10u3) ...
  Setting up libssh2-1:amd64 (1.8.0-2.1) ...
  Setting up netbase (5.6) ...
  Setting up libkrb5-3:amd64 (1.17-3) ...
  Setting up openssl (1.1.1d-0+deb10u3) ...
  Setting up libbsd0:amd64 (0.9.1-2) ...
  Setting up publicsuffix (20190415.1030-1) ...
  Setting up libgdbm6:amd64 (1.18.1-4) ...
  Setting up libxdmcp6:amd64 (1:1.1.2-3) ...
  Setting up libxcb1:amd64 (1.13.1-2) ...
  Setting up libedit2:amd64 (3.1-20181209-1) ...
  Setting up libldap-2.4-2:amd64 (2.4.47+dfsg-3+deb10u2) ...
  Setting up ca-certificates (20200601~deb10u1) ...
  debconf: unable to initialize frontend: Dialog
  debconf: (TERM is not set, so the dialog frontend is not usable.)
  debconf: falling back to frontend: Readline
  Updating certificates in /etc/ssl/certs...
  126 added, 0 removed; done.
  Setting up libgssapi-krb5-2:amd64 (1.17-3) ...
  Setting up libgdbm-compat4:amd64 (1.18.1-4) ...
  Setting up libperl5.28:amd64 (5.28.1-6+deb10u1) ...
  Setting up libx11-6:amd64 (2:1.6.7-1+deb10u1) ...
  Setting up libxmuu1:amd64 (2:1.1.2-2+b3) ...
  Setting up openssh-client (1:7.9p1-10+deb10u2) ...
  Setting up libxext6:amd64 (2:1.3.3-1+b2) ...
  Setting up libcurl3-gnutls:amd64 (7.64.0-4+deb10u1) ...
  Setting up perl (5.28.1-6+deb10u1) ...
  Setting up xauth (1:1.0.10-1) ...
  Setting up liberror-perl (0.17027-2) ...
  Setting up git (1:2.20.1-2+deb10u3) ...
  Processing triggers for libc-bin (2.28-10) ...
  Processing triggers for ca-certificates (20200601~deb10u1) ...
  Updating certificates in /etc/ssl/certs...
  0 added, 0 removed; done.
  Running hooks in /etc/ca-certificates/update.d...
  done.
  Removing intermediate container 68d13162e0df
   ---> 2bc0cac93622
  Step 6/10 : RUN apt-get install -y git-ftp
   ---> Running in ba4401c3cca8
  Reading package lists...
  Building dependency tree...
  Reading state information...
  The following additional packages will be installed:
    curl libcurl4
  The following NEW packages will be installed:
    curl git-ftp libcurl4
  0 upgraded, 3 newly installed, 0 to remove and 1 not upgraded.
  Need to get 623 kB of archives.
  After this operation, 1199 kB of additional disk space will be used.
  Get:1 http://deb.debian.org/debian stable/main amd64 libcurl4 amd64 7.64.0-4+deb10u1 [331 kB]
  Get:2 http://deb.debian.org/debian stable/main amd64 curl amd64 7.64.0-4+deb10u1 [264 kB]
  Get:3 http://deb.debian.org/debian stable/main amd64 git-ftp all 1.5.1+dfsg-1 [26.7 kB]
  debconf: delaying package configuration, since apt-utils is not installed
  Fetched 623 kB in 0s (2303 kB/s)
  Selecting previously unselected package libcurl4:amd64.
  (Reading database ... 
  (Reading database ... 5%

  (Reading database ... 100%
  (Reading database ... 10247 files and directories currently installed.)
  Preparing to unpack .../libcurl4_7.64.0-4+deb10u1_amd64.deb ...
  Unpacking libcurl4:amd64 (7.64.0-4+deb10u1) ...
  Selecting previously unselected package curl.
  Preparing to unpack .../curl_7.64.0-4+deb10u1_amd64.deb ...
  Unpacking curl (7.64.0-4+deb10u1) ...
  Selecting previously unselected package git-ftp.
  Preparing to unpack .../git-ftp_1.5.1+dfsg-1_all.deb ...
  Unpacking git-ftp (1.5.1+dfsg-1) ...
  Setting up libcurl4:amd64 (7.64.0-4+deb10u1) ...
  Setting up curl (7.64.0-4+deb10u1) ...
  Setting up git-ftp (1.5.1+dfsg-1) ...
  Processing triggers for libc-bin (2.28-10) ...
  Removing intermediate container ba4401c3cca8
   ---> 6f20d5d79cf8
  Step 7/10 : RUN apt-get install -y nodejs
   ---> Running in b1c12b845344
  Reading package lists...
  Building dependency tree...
  Reading state information...
  The following additional packages will be installed:
    libatomic1 libbrotli1 libc-ares2 libicu63 libnode64 libuv1 nodejs-doc
  Suggested packages:
    npm
  The following NEW packages will be installed:
    libatomic1 libbrotli1 libc-ares2 libicu63 libnode64 libuv1 nodejs nodejs-doc
  0 upgraded, 8 newly installed, 0 to remove and 1 not upgraded.
  Need to get 15.5 MB of archives.
  After this operation, 64.3 MB of additional disk space will be used.
  Get:1 http://deb.debian.org/debian stable/main amd64 libatomic1 amd64 8.3.0-6 [9032 B]
  Get:2 http://deb.debian.org/debian stable/main amd64 libbrotli1 amd64 1.0.7-2 [270 kB]
  Get:3 http://deb.debian.org/debian stable/main amd64 libc-ares2 amd64 1.14.0-1 [85.8 kB]
  Get:4 http://deb.debian.org/debian stable/main amd64 libicu63 amd64 63.1-6+deb10u1 [8300 kB]
  Get:5 http://deb.debian.org/debian stable/main amd64 libuv1 amd64 1.24.1-1 [110 kB]
  Get:6 http://deb.debian.org/debian stable/main amd64 libnode64 amd64 10.21.0~dfsg-1~deb10u1 [5629 kB]
  Get:7 http://deb.debian.org/debian stable/main amd64 nodejs amd64 10.21.0~dfsg-1~deb10u1 [87.0 kB]
  Get:8 http://deb.debian.org/debian stable/main amd64 nodejs-doc all 10.21.0~dfsg-1~deb10u1 [973 kB]
  debconf: delaying package configuration, since apt-utils is not installed
  Fetched 15.5 MB in 1s (26.8 MB/s)
  Selecting previously unselected package libatomic1:amd64.
  (Reading database ... 
  (Reading database ... 5%

  (Reading database ... 100%
  (Reading database ... 10272 files and directories currently installed.)
  Preparing to unpack .../0-libatomic1_8.3.0-6_amd64.deb ...
  Unpacking libatomic1:amd64 (8.3.0-6) ...
  Selecting previously unselected package libbrotli1:amd64.
  Preparing to unpack .../1-libbrotli1_1.0.7-2_amd64.deb ...
  Unpacking libbrotli1:amd64 (1.0.7-2) ...
  Selecting previously unselected package libc-ares2:amd64.
  Preparing to unpack .../2-libc-ares2_1.14.0-1_amd64.deb ...
  Unpacking libc-ares2:amd64 (1.14.0-1) ...
  Selecting previously unselected package libicu63:amd64.
  Preparing to unpack .../3-libicu63_63.1-6+deb10u1_amd64.deb ...
  Unpacking libicu63:amd64 (63.1-6+deb10u1) ...
  Selecting previously unselected package libuv1:amd64.
  Preparing to unpack .../4-libuv1_1.24.1-1_amd64.deb ...
  Unpacking libuv1:amd64 (1.24.1-1) ...
  Selecting previously unselected package libnode64:amd64.
  Preparing to unpack .../5-libnode64_10.21.0~dfsg-1~deb10u1_amd64.deb ...
  Unpacking libnode64:amd64 (10.21.0~dfsg-1~deb10u1) ...
  Selecting previously unselected package nodejs.
  Preparing to unpack .../6-nodejs_10.21.0~dfsg-1~deb10u1_amd64.deb ...
  Unpacking nodejs (10.21.0~dfsg-1~deb10u1) ...
  Selecting previously unselected package nodejs-doc.
  Preparing to unpack .../7-nodejs-doc_10.21.0~dfsg-1~deb10u1_all.deb ...
  Unpacking nodejs-doc (10.21.0~dfsg-1~deb10u1) ...
  Setting up libbrotli1:amd64 (1.0.7-2) ...
  Setting up libc-ares2:amd64 (1.14.0-1) ...
  Setting up libicu63:amd64 (63.1-6+deb10u1) ...
  Setting up libuv1:amd64 (1.24.1-1) ...
  Setting up libatomic1:amd64 (8.3.0-6) ...
  Setting up nodejs-doc (10.21.0~dfsg-1~deb10u1) ...
  Setting up libnode64:amd64 (10.21.0~dfsg-1~deb10u1) ...
  Setting up nodejs (10.21.0~dfsg-1~deb10u1) ...
  update-alternatives: using /usr/bin/nodejs to provide /usr/bin/js (js) in auto mode
  update-alternatives: warning: skip creation of /usr/share/man/man1/js.1.gz because associated file /usr/share/man/man1/nodejs.1.gz (of link group js) doesn't exist
  Processing triggers for libc-bin (2.28-10) ...
  Removing intermediate container b1c12b845344
   ---> a795e58d6c71
  Step 8/10 : COPY dist/index.js /deploy.js
   ---> d59ca3a08fa7
  Step 9/10 : RUN chmod +x deploy.js
   ---> Running in b3cecdeed7c9
  Removing intermediate container b3cecdeed7c9
   ---> f2fc7b24d4b1
  Step 10/10 : ENTRYPOINT ["node", "../../deploy.js"]
   ---> Running in dfb4837709b0
  Removing intermediate container dfb4837709b0
   ---> 60d1afd2765c
  Successfully built 60d1afd2765c
  Successfully tagged 1e5c35:3655de99283e4809bb9153daba1703c1
2s
Run actions/checkout@v2.1.0
Syncing repository: test
Getting Git version info
Deleting the contents of '/home/runner/work/test/test'
Initializing the repository
Disabling automatic garbage collection
Setting up auth
/usr/bin/git lfs install --local
Updated git hooks.
Git LFS initialized.
Fetching the repository
Determining the checkout info
Fetching LFS objects
Checking out the ref
/usr/bin/git log -1
commit 646b4ccace51b46df49ee1fd9e4484b01330ad5e
Date:   Wed Oct 28 18:43:20 2020 +0400

    - remove git lfs pull
    - new PDF
7s
Run SamKirkland/FTP-Deploy-Action@3.1.1
/usr/bin/docker run --name e5c353655de99283e4809bb9153daba1703c1_62e894 --label 1e5c35 --workdir /github/workspace --rm -e INPUT_FTP-SERVER -e INPUT_FTP-USERNAME -e INPUT_FTP-PASSWORD -e INPUT_LOCAL-DIR -e INPUT_GIT-FTP-ARGS -e HOME -e GITHUB_JOB -e GITHUB_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_REPOSITORY_OWNER -e GITHUB_RUN_ID -e GITHUB_RUN_NUMBER -e GITHUB_RETENTION_DAYS -e GITHUB_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_WORKSPACE -e GITHUB_ACTION -e GITHUB_EVENT_PATH -e GITHUB_PATH -e GITHUB_ENV -e RUNNER_OS -e RUNNER_TOOL_CACHE -e RUNNER_TEMP -e RUNNER_WORKSPACE -e ACTIONS_RUNTIME_URL -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_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/lfs-ftp-test/lfs-ftp-test":"/github/workspace" 1e5c35:3655de99283e4809bb9153daba1703c1
Uploading files
  /usr/bin/git ftp push --force --auto-init --verbose --syncroot=./ --user=*** --passwd=***  ftp://***/test/
  Wed Oct 28 15:00:52 UTC 2020: git-ftp version 1.5.1 running on Linux d1c059671835 5.4.0-1031-azure #32~18.04.1-Ubuntu SMP Tue Oct 6 10:03:22 UTC 2020 x86_64 GNU/Linux
  Wed Oct 28 15:00:52 UTC 2020: Forced mode enabled.
  Wed Oct 28 15:00:52 UTC 2020: Auto init if needed.
  Wed Oct 28 15:00:52 UTC 2020: Using syncroot ./ if exists.
  git-lfs filter-process: 1: git-lfs filter-process: git-lfs: not found
  fatal: the remote end hung up unexpectedly
  Wed Oct 28 15:00:52 UTC 2020: Host is '***:21'.
  Wed Oct 28 15:00:52 UTC 2020: User is '***'.
  Wed Oct 28 15:00:52 UTC 2020: Password is set.
  Wed Oct 28 15:00:52 UTC 2020: CACert is ''.
  Wed Oct 28 15:00:52 UTC 2020: Insecure is '0'.
  Wed Oct 28 15:00:52 UTC 2020: Proxy is ''.
  Wed Oct 28 15:00:52 UTC 2020: Path is '***/test/'.
  Wed Oct 28 15:00:52 UTC 2020: Syncroot is './'.
  Wed Oct 28 15:00:52 UTC 2020: The remote sha1 is saved in file '.git-ftp.log'.
  Wed Oct 28 15:00:52 UTC 2020: Check if curl is functional.
  Wed Oct 28 15:00:52 UTC 2020: Retrieving last commit from *****/test/.
  #=#=#                                                                         
  ##O#- #                                                                       
  ##O=#  #                                                                      
  #=#=-#  #                                                                     

  ######################################################################## 100.0%
  Wed Oct 28 15:00:53 UTC 2020: Unknown SHA1 object, could not determine changed files, taking all files.
  Wed Oct 28 15:00:53 UTC 2020: Having files to sync.
  Wed Oct 28 15:00:53 UTC 2020: 7 files to sync:
  Wed Oct 28 15:00:53 UTC 2020: [1 of 7] Buffered for upload '.gitattributes'.
  Wed Oct 28 15:00:53 UTC 2020: [2 of 7] Buffered for upload '.github/workflows/main.yml'.
  Wed Oct 28 15:00:53 UTC 2020: [3 of 7] Buffered for upload 'Dynamic-depth-v1.0.pdf'.
  Wed Oct 28 15:00:53 UTC 2020: [4 of 7] Buffered for upload 'Eraser Documentation.pdf'.
  Wed Oct 28 15:00:53 UTC 2020: [5 of 7] Buffered for upload 'espresso-cheat-sheet-2.1.0.pdf'.
  Wed Oct 28 15:00:53 UTC 2020: [6 of 7] Buffered for upload 'example_012.pdf'.
  Wed Oct 28 15:00:53 UTC 2020: [7 of 7] Buffered for upload 'xmltutorial.pdf'.
  Wed Oct 28 15:00:53 UTC 2020: Uploading ...
  #=#=#                                                                         

  ######################################################################## 100.0%
  Wed Oct 28 15:00:57 UTC 2020: Uploading commit log to *********/test/.git-ftp.log.
  #=#=#                                                                         
  ##O#- #                                                                       
  ##O=#  #                                                                      
  #=#=-#  #                                                                     
  -#O#- #   #                                                                   
  Wed Oct 28 15:00:58 UTC 2020: Last deployment changed from 646b4ccace51b46df49ee1fd9e4484b01330ad5e to 646b4ccace51b46df49ee1fd9e4484b01330ad5e.
βœ… Deploy Complete
0s
Post job cleanup.
/usr/bin/git version
git version 2.28.0
/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
/usr/bin/git submodule foreach --recursive git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :
/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
http.https://github.com/.extraheader
/usr/bin/git config --local --unset-all http.https://github.com/.extraheader
/usr/bin/git submodule foreach --recursive git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :
SamKirkland commented 4 years ago

Hello!

Did sudo apt install git-lfs resolve the problem?

If not can you please try lfs with the v4 beta?

on: push
name: πŸš€ Deploy website on push
jobs:
  web-deploy:
    name: πŸŽ‰ Deploy
    runs-on: ubuntu-latest
    steps:
    - name: 🚚 Get latest code
      uses: actions/checkout@v2.3.2
      with:
        lfs: true

    - name: πŸ“‚ Sync files
      uses: SamKirkland/FTP-Deploy-Action@beta-v4
      with:
        server: myFTPserver.com
        username: ${{ secrets.FTP_USER }}
        password: ${{ secrets.FTP_PASSWORD }}
alex-one-v commented 4 years ago

Hi,

unfortunately sudo apt install git-lfs didn't help.

v4 beta works well, thanks you! However it seems it's not based on git-ftp any more. It doesn't update .git-ftp.log but uses new .ftp-deploy-sync-state.json file.

Unfortunately my deploy process is based on git-ftp, so probably I'll have to continue looking for solution for FTP-Deploy-Action@3.1.1 and LFS ...

Thanks for the help anyway!

davetapley commented 3 years ago

I just experienced this too, but it only started happening after a few commits, specifically:

  1. Added action: full upload βœ”οΈ
  2. Added single file: single file upload βœ”οΈ
  3. Renamed file: single file upload, single file delete βœ”οΈ
  4. Edited file: trigged full reupload ❓
  5. Edited file again: trigged full reupload ❓

Prior to commit 4 logs said:

  Thu Dec 31 21:10:06 UTC 2020: Using syncroot ./ if exists.
  Thu Dec 31 21:10:06 UTC 2020: Host is 'ftp.jefulleralerttest.com'.

After it changed to:

  Thu Dec 31 21:16:02 UTC 2020: Using syncroot ./ if exists.
  git-lfs filter-process: 1: git-lfs filter-process: git-lfs: not found
  fatal: the remote end hung up unexpectedly
  Thu Dec 31 21:16:02 UTC 2020: Host is 'ftp.jefulleralerttest.com'.

Two commits after adding action did make me πŸ‘€ at fetch-depth: 2, so I tried setting it to fetch-depth: 0 and that worked πŸŽ‰

TLDR: set fetch-depth: 0 in actions/checkout@v2 if using lfs: true

SamKirkland commented 1 year ago

Looks like this was an issue with v3 only, v4 appears to work in my tests