J'ai un problème avec l'utilisation de git LFS dans Jenkins. Ce que je fais maintenant, c'est que
Nous avons utilisé le plugin git et le plugin git-client avec les versions 3.3.0 et 2.4.2 respectivement dans Jenkins.
Qu'est-ce qui se passe:
A.war -> a.jar (dont la taille d'origine est de 1234 ko mais qui arrive à 3 ko (qui est la taille du fichier de pointeur)
donc mes questions sont:
Cela peut être fait en utilisant le normal Git + Plugin pour Jenkins (à partir de la version 3.1.0).
Si vous utilisez Jenkins Pipelines (c'est-à-dire avec un fichier Jenkins à la racine de votre référentiel), l'essentiel est d'inclure l'extension [$class: 'GitLFSPull']
Dans votre appel checkout()
. Voici un exemple (édité) tiré de l'un de nos 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']
]
])
En utilisant le générateur d'extraits de code, il est possible de générer ce code, en sélectionnant "Git LFS pull after checkout" dans le menu "Additional Behaviors". Voir capture d'écran ici
Cela peut être fait avec le plugin "Pre SCM BuildStep".