Ted Smith opened issue #3: git LFS not working at Andrew Leech / gitlab-runner

Ted Smith
2019-03-07T17:59:16Z

Summary

Any repo with LFS tracked files causes the container to hangup

Steps to reproduce

Create a new repo with git lfs files:

git init

git lfs install

git lfs track "*.test"

git add .gitattribtues

git commit -m "first commit"

echo "fake file" > fake.test

git add fake.test

git commit -m "add lfs file"

add a .gitlab-yml to run the windows container

Actual behavior

on nxcdwin3 c4ed1aee
Using Docker executor with image conan/vs2017 ...
Using locally found image version due to if-not-present pull policy
Using docker image sha256:cf51c42bf852b8caad1a4a6e935b9a113a125b682ad9bc7163fd8d2554e2f991 for registry.gitlab.com/andrewleech/gitlab-runner/gitlab-runner-helper:win-x86_64-latest ...
Using locally found image version due to if-not-present pull policy
Using docker image sha256:792b420a63aa4147f543770552736cde55f92bf2816b05a04a05cfdf2aa85632 for conan/vs2017 ...
Running on RUNNER-C4ED1AEE via
NXCDWIN3...
10:19:47.150240 exec-cmd.c:236 trace: resolved executable dir: C:/Git/mingw64/bin
10:19:47.161375 git.c:415 trace: built-in: git config -f 'c:\gitlab\builds\software\third_party\lfs_test2.tmp\git-template/config' fetch.recurseSubmodules false
Cloning repository...
10:19:47.220158 exec-cmd.c:236 trace: resolved executable dir: C:/Git/mingw64/bin
10:19:47.221816 git.c:415 trace: built-in: git config --global http.postBuffer 1048576000
10:19:47.233843 exec-cmd.c:236 trace: resolved executable dir: C:/Git/mingw64/bin
10:19:47.239161 git.c:415 trace: built-in: git clone --no-checkout https://gitlab-ci-token:xxxxxxxxxxxxxxxxxxxx@gitlab.nxcsystems.com/software/third_party/lfs_test2.git c:/gitlab/builds/software/third_party/lfs_test2 --template 'c:\gitlab\builds\software\third_party\lfs_test2.tmp\git-template'
10:19:47.267805 run-command.c:637 trace: run_command: git remote-https origin https://gitlab-ci-token:xxxxxxxxxxxxxxxxxxxx@gitlab.nxcsystems.com/software/third_party/lfs_test2.git
Cloning into 'c:/gitlab/builds/software/third_party/lfs_test2'...
10:19:47.285771 exec-cmd.c:236 trace: resolved executable dir: C:/Git/mingw64/bin
10:19:47.287771 git.c:654 trace: exec: git-remote-https origin https://gitlab-ci-token:xxxxxxxxxxxxxxxxxxxx@gitlab.nxcsystems.com/software/third_party/lfs_test2.git
10:19:47.287771 run-command.c:637 trace: run_command: git-remote-https origin https://gitlab-ci-token:xxxxxxxxxxxxxxxxxxxx@gitlab.nxcsystems.com/software/third_party/lfs_test2.git
10:19:47.298775 exec-cmd.c:236 trace: resolved executable dir: C:/Git/mingw64/bin
10:19:47.421625 run-command.c:637 trace: run_command: git fetch-pack --stateless-rpc --stdin --lock-pack --thin --check-self-contained-and-connected --cloning --no-progress https://gitlab-ci-token:xxxxxxxxxxxxxxxxxxxx@gitlab.nxcsystems.com/software/third_party/lfs_test2.git/
10:19:47.442441 exec-cmd.c:236 trace: resolved executable dir: C:/Git/mingw64/bin
10:19:47.444442 git.c:415 trace: built-in: git fetch-pack --stateless-rpc --stdin --lock-pack --thin --check-self-contained-and-connected --cloning --no-progress https://gitlab-ci-token:xxxxxxxxxxxxxxxxxxxx@gitlab.nxcsystems.com/software/third_party/lfs_test2.git/
10:19:47.472191 run-command.c:637 trace: run_command: git unpack-objects -q --pack_header=2,9
10:19:47.485985 exec-cmd.c:236 trace: resolved executable dir: C:/Git/mingw64/bin
10:19:47.486989 git.c:415 trace: built-in: git unpack-objects -q --pack_header=2,9
10:19:47.500014 run-command.c:637 trace: run_command: git rev-list --objects --stdin --not --all --quiet
10:19:47.508326 exec-cmd.c:236 trace: resolved executable dir: C:/Git/mingw64/bin
10:19:47.510326 git.c:415 trace: built-in: git rev-list --objects --stdin --not --all --quiet
Checking out 085a3624 as master...
10:19:47.571942 exec-cmd.c:236 trace: resolved executable dir: C:/Git/mingw64/bin
10:19:47.577031 git.c:415 trace: built-in: git checkout -f 085a3624b06ffbcaa57703ba01c248ea2ad21deb
10:19:47.591062 run-command.c:637 trace: run_command: 'git-lfs filter-process'
10:19:47.599242 run-command.c:46 trace: run_command: running exit handler for pid 1480
fatal: The remote end hung up unexpectedly
ERROR: Job failed: exit code 128

Expected behavior

I don't expect the clone to fail - It seems wrong to see git-lfs filter-process being invoked. That will be automatic by the clone.

Relevant logs and/or screenshots

there is no build here. The clone is the issue.

Environment description

Using Docker executor with image conan/vs2017 ...

Using locally found image version due to if-not-present pull policy

Using docker image sha256:cf51c42bf852b8caad1a4a6e935b9a113a125b682ad9bc7163fd8d2554e2f991 for registry.gitlab.com/andrewleech/gitlab-runner/gitlab-runner-helper:win-x86_64-latest ...

Used GitLab Runner version

installed from https://notes.alelec.net/blog/post/andrew@alelec.net/Windows-Docker-Gitlab-CI-Runner-2

wget -UseBasicParsing https://gitlab.com/andrewleech/gitlab-runner/-/jobs/155104654/artifacts/raw/out/binaries/gitlab-runner-windows-amd64.exe -Outfile c:\windows\system32\gitlab-runner.exe