smudge filter lfs failed
Summary
gitlab-runner arch=amd64 os=windows pid=38676 revision=1564076b version=12.4.0 does have the problem that it is not able to pull a project with LFS content and it is also not able to skip it.
Please help me somehow. I will go insane with that. I searched the whole web for solutions. I already know that the GIT_LFS_SKIP_SMUDGE consideration was fixed in earlier versions but somehow it does not work. It does not matter if I use GIT_LFS_SKIP_SMUDGE: "1" or GIT_LFS_SKIP_SMUDGE: 1 . It will have the same behaviour.
I also set following in the globals of the running machine sadly without effect
git config filter.lfs.process = "git-lfs filter-process --skip git config filter.lfs.smudge = "git-lfs smudge --skip %f
I upgraded today to 12.4 the problem also exists in 12.3
Steps to reproduce
Load up an LFS file to a project and try a pipeline on it.
.gitlab-ci.yml
variables:
GIT_LFS_SKIP_SMUDGE: "1"
GIT_SUBMODULE_STRATEGY: recursive
stages:
- Pull
- Test
- Build
- Deploy
GIT-Pull:
before_script:
- Write-Host 'Start Pulling LFS files...'
script:
- git-lfs install
- git-lfs pull
stage: Pull
tags:
- Unity
Unit-Test:
before_script:
- Write-Host 'Start Unit-Tests...'
- $PROJECTLOCATION = Get-Location
- $PROJECTVERISONFILEPATH = Get-ChildItem -Path (Get-Location) -Filter ProjectVersion.txt -Recurse -ErrorAction SilentlyContinue -Force | %{$_.FullName}
- $PROJECTVERISONFILECONTENT = Get-Content -Path $PROJECTVERISONFILEPATH
- $UNITY_PROJECT_VERSION = $PROJECTVERISONFILECONTENT.split(":")[1] -replace " ", ""
- Write-Host $UNITY_PROJECT_VERSION
script:
- Invoke-Expression '&C:\"Program Files"\Unity\Hub\Editor\$UNITY_PROJECT_VERSION\Editor\Unity.exe -batchmode -branch $CI_COMMIT_REF_NAME -projectPath $PROJECTLOCATION -runEditorTests -logFile $PROJECTLOCATION\UnityConsoleLog.txt -editorTestsResultFile ./unit-Tests.xml -ErrorAction Stop | Out-Null' -ErrorAction Stop
- Write-Host $LASTEXITCODE
- if($LASTEXITCODE -ne 0) { $Host.SetShouldExit($LASTEXITCODE)}
after_script:
- $FullPathNameUnitTestXML = Get-ChildItem -Path (Get-Location) -Filter unit-Tests.xml -Recurse -ErrorAction SilentlyContinue -Force | %{$_.FullName}
- $FullPathNameUnitTestHTMLViewer = Get-ChildItem -Path (Get-Location) -Filter UnityUnitTestViewer.html -Recurse -ErrorAction SilentlyContinue -Force | %{$_.FullName}
- Copy-Item $FullPathNameUnitTestHTMLViewer -Destination "./TestResults.html"
- $XMLTestContent = Get-Content -Path $FullPathNameUnitTestXML
- $XMLTestContent = ($XMLTestContent -split "(\r*\n){2,}") -replace '\r*\n', ''
- (Get-Content ./TestResults.html).replace('###UNITY_UNITTEST_XML_TO_REPLACE###', $XMLTestContent) | Set-Content ./TestResults.html
stage: Test
artifacts:
name: "Unit-Test Results"
when: always
paths:
- ./TestResults.html
- ./unityConsoleLog.txt
tags:
- Unity
Unity-Build:
before_script:
- Write-Host 'Building...'
- $PROJECTLOCATION = Get-Location
- $PROJECTVERISONFILEPATH = Get-ChildItem -Path (Get-Location) -Filter ProjectVersion.txt -Recurse -ErrorAction SilentlyContinue -Force | %{$_.FullName}
- $PROJECTVERISONFILECONTENT = Get-Content -Path $PROJECTVERISONFILEPATH
- $UNITY_PROJECT_VERSION = $PROJECTVERISONFILECONTENT.split(":")[1] -replace " ", ""
- Write-Host $UNITY_PROJECT_VERSION
script:
- Invoke-Expression '&C:\"Program Files"\Unity\Hub\Editor\$UNITY_PROJECT_VERSION\Editor\Unity.exe -batchmode -branch $CI_COMMIT_REF_NAME -projectPath $PROJECTLOCATION -nographics -logFile $PROJECTLOCATION\UnityConsoleLog.txt -executeMethod CICD_UnityGitlab.CIBuilder.Build -ErrorAction Stop | Out-Null' -ErrorAction Stop
- Write-Host $LASTEXITCODE
- if($LASTEXITCODE -ne 0) { $Host.SetShouldExit($LASTEXITCODE)}
artifacts:
name: "Build"
paths:
- ./Releases
- ./unityConsoleLog.txt
stage: Build
tags:
- Unity
Deployment:
before_script:
- Write-Host 'Deploying...'
- $PROJECTLOCATION = Get-Location
- $PROJECTVERISONFILEPATH = Get-ChildItem -Path (Get-Location) -Filter ProjectVersion.txt -Recurse -ErrorAction SilentlyContinue -Force | %{$_.FullName}
- $PROJECTVERISONFILECONTENT = Get-Content -Path $PROJECTVERISONFILEPATH
- $UNITY_PROJECT_VERSION = $PROJECTVERISONFILECONTENT.split(":")[1] -replace " ", ""
- Write-Host $UNITY_PROJECT_VERSION
script:
- Invoke-Expression '&C:\"Program Files"\Unity\Hub\Editor\$UNITY_PROJECT_VERSION\Editor\Unity.exe -batchmode -branch $CI_COMMIT_REF_NAME -projectPath $PROJECTLOCATION -nographics -executeMethod -logFile $PROJECTLOCATION\UnityConsoleLog.txt CICD_UnityGitlab.CDDeployer.Deploy -ErrorAction Stop | Out-Null' -ErrorAction Stop
- Write-Host $LASTEXITCODE
- if($LASTEXITCODE -ne 0) { $Host.SetShouldExit($LASTEXITCODE)}
artifacts:
name: "DeploymentLog"
paths:
- ./unityConsoleLog.txt
stage: Deploy
tags:
- Unity
Actual behavior
Pipeline fails on LFS-Files
Expected behavior
There shouldn't be any issues with LFS-Files But there are issues and GIT_LFS_SKIP_SMUDGE: "1" should be considered at least so that lfs handling can be overridden
Relevant logs and/or screenshots
job log
Running with gitlab-runner 12.4.0 (1564076b)
on MWS2016034564(PIXYZ) 4c3837a7
Using Shell executor...
Running on MWS2016034564...
Fetching changes...
Initialized empty Git repository in E:/GitLab-Runner/builds/4c3837a7/0/cgi/Unity/ConfigurationSystem/.git/
Created fresh repository.
From https://mm-gitlab-cgi.meyle-mueller.de/cgi/Unity/ConfigurationSystem
* [new branch] develop -> origin/develop
.
.
.
.
Checking out bbe35f97 as develop...
error: external filter 'git-lfs filter-process' failed
fatal: Assets/AddressableAssetsData/WebGL/addressables_content_state.bin: smudge filter lfs failed
ERROR: Job failed: exit status 1
Environment description
gitlab runner is used with shell execution No multi-runner
config.toml
is empty
config.toml contents
Used GitLab Runner version
Version: 12.4.0
Git revision: 1564076b
Git branch: 12-4-stable
GO version: go1.10.8
Built: 2019-10-21T14:37:13+0000
OS/Arch: windows/amd64
-->