Issue
I can ask this question in many ways, like How to configure Jenkins credentials with Github Personal Access Token How to clone Github repo in Jenkins using Github Personal Access Token
So this is the problem
The alternate solution that I am aware of
SSH
connectionusername
password
configuration in Jenkins. However, use of a password with the GitHub API is now deprecated.
But My question is how to setup Github connection with Jenkins using Personal Access Token
Solution
[UPDATE] The new solution proposed by git is
https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/
Which says:
Beginning August 13, 2021, we will no longer accept account passwords when authenticating Git operations and will require the use of token-based authentication, such as a personal access token (for developers) or an OAuth or GitHub App installation token (for integrators) for all authenticated Git operations on GitHub.com. You may also continue using SSH keys where you prefer.
What you need to do:
Basically, change the add URL as
https://<access token>@github.com/<userName>/<repository>.git
Something like this
https://<access token>@github.com/dupinder/NgnixDockerizedDevEnv.git
and set the credentials to none.
Thanks to @Gil Stal
[OLD Technique]
After many discussion on multiple threads from Stackoverflow
I found one thread that is useful.
Refer to this answer: https://stackoverflow.com/a/61104603/5108695
Basically
Personal access token
can be used as a password, as far as Jenkins
is concerned at least. I added new credentials to the credential manager.
Go to Jenkins
- Go to
credentials
>System
>Global credentials
>Add credentials
a page will open. - In Kind drop-down select Username and password.
- In User put a non-existing username like
jenkins-user
oruser
. - Add
Personal Access Token
in the password field
Now start configuring your project.
- source code management tab, select new configured credentials from Drop-down near credential Under Repository URL
So this is how we can configure or setup Authentication between Jenkins and Github using Personal Access Token
References:
Git Clone in Jenkins with Personal Access Token idles forever
Change jenkins pipeline to use github instead of gitlab
Answered By - Dupinder Singh