0

I've followed the solution provided by @biolauri in this post, in using GITHUB_ACCESS_TOKEN in Jenkins inside a docker container. Below is my stage code:

    stage('Push git tag') {
    agent { label 'docker' }
    steps {
        script {
            try {
                container = docker.build("git", "-f git.dockerfile .") 
                container.inside {
                    withCredentials([usernamePassword(
                        credentialsId: "<credential-name-stored-in-jenkins>", 
                        usernameVariable: "GITHUB_APP",
                        passwordVariable: "GITHUB_ACCESS_TOKEN")]) {
                        withEnv(["GITHUB_TOKEN=$GITHUB_ACCESS_TOKEN"]) {
                            sh "git tag ${version_g}"
                            sh "git push origin ${version_g}"
                        }
                    }
                }
            } catch (Exception e) {
                // sh "git tag -d ${version_g} || true"
                throw e
            }
        }
    }
}

But I am still getting this error:

fatal: could not read Username for 'https://github.com': No such device or address

What am I doing wrong here?

Just to make sure that I am getting the correct Github App ID, I actually echoed it and it is indeed the correct Github App ID. And I also echoed the generated GITHUB_ACCESS_TOKEN, and it indeed looks like a generated token. But the docker image built seems to be not recognizing the GITHUB_TOKEN environment variable set, to be able to do a git push

jaysonpryde
  • 2,733
  • 11
  • 44
  • 61

0 Answers0