Run git lfs in a separate step. (#3)

Run git lfs in a separate step.

Jenkins is unable to load the credentials for the custom LFS endpoint. Command works locally but it's unable use the credential manager within Jenkins.
main
Brian Herrera 5 years ago committed by GitHub
parent 93d36ea73f
commit 3bf47dca9f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -271,7 +271,18 @@ def PullFilesFromGit(String filenamePath, String branchName, boolean failIfNotFo
}
}
def SetLfsCredentials(cmd, lbl = '') {
if (env.IS_UNIX) {
sh label: lbl,
script: cmd
} else {
bat label: lbl,
script: cmd
}
}
def CheckoutRepo(boolean disableSubmodules = false) {
palSh('git lfs uninstall', 'Git LFS Uninstall') // Prevent git from pulling lfs objects during checkout
if(fileExists('.git')) {
// If the repository after checkout is locked, likely we took a snapshot while git was running,
@ -318,6 +329,14 @@ def CheckoutRepo(boolean disableSubmodules = false) {
}
}
// Run lfs in a separate step. Jenkins is unable to load the credentials for the custom LFS endpoint
withCredentials([usernamePassword(credentialsId: "${env.GITHUB_USER}", passwordVariable: 'accesstoken', usernameVariable: 'username')]) {
SetLfsCredentials("git config -f .lfsconfig lfs.url https://${username}:${accesstoken}@${env.LFS_URL}", 'Set credentials')
}
palSh('git lfs install', 'Git LFS Install')
palSh('git lfs pull', 'Git LFS Pull')
}
// CHANGE_ID is used by some scripts to identify uniquely the current change (usually metric jobs)
palSh('git rev-parse HEAD > commitid', 'Getting commit id')
env.CHANGE_ID = readFile file: 'commitid'

Loading…
Cancel
Save