I have an issue with git LFS use in Jenkins. What I am doing now is that
This can be done using the regular Git+Plugin for Jenkins (version 3.1.0 onwards).
If you are using Jenkins Pipelines (i.e. with a Jenkinsfile in the root of your repo), the key thing is to include the extension [$class: 'GitLFSPull']
in your checkout()
call. Here is an (edited) example taken from one of our repos:
checkout([ $class: 'GitSCM',
branches: [[name: 'refs/heads/'+env.BRANCH_NAME]],
doGenerateSubmoduleConfigurations: false,
extensions: [
[$class: 'GitLFSPull'],
[$class: 'CheckoutOption', timeout: 20],
[$class: 'CloneOption',
depth: 0,
noTags: false,
reference: '/other/optional/local/reference/clone',
shallow: false,
timeout: 120]
],
submoduleCfg: [],
userRemoteConfigs: [
[credentialsId: 'foobar',
url: 'https://github.com/foo/bar.git']
]
])
Using the Snippet Generator it is possible to generate this code, by selecting "Git LFS pull after checkout" from the "Additional Behaviours" menu. See screenshot here
This can be done with "Pre SCM BuildStep” Plugin.
Reference Link