Creating a Personal Access Token
Last updated
Last updated
When a User is connecting to iCR using a standard browser, they first login to their Cloud-Based Version Control System (VCS). GitHub, GitLab and BitBucket are currently supported. Once logged into the VCS, a token, created by the VCS, is saved in the browser and then shared with iCR which can then access the User’s repositories.
When operating within a CI/CD framework, a similar token needs to be provided so that iCR is authorized to access that User’s repository. GitHub and GitLab use a Personal Access Token (PAT) to accomplish this while BitBucket employs an App Password.
We’ll use GitHub to show how this is done for our example. Creating a token for GitLab and the Bitbucket App Password are documented separately.
As described in the Private Platform User Guide, login to GitHub and go to Settings->Developer Settings where you will see these options. In this case, we will select
Clicking on that brings you to the page where existing tokens are displayed, and new ones can be generated:
Note that the text on this page clearly states that tokens are used to access the GitHub API which is what iCR uses to retrieve repository and branch information. To create a new token, click on Generate new token. That brings you to following page.
You may name the token anything you like to remind you what it is being used for. You can set a finite expiration date or make it last forever. In our example, we limited it to 90 days.
Setting the scope is important to enable iCR to be able to fetch the required contents of your repositories. Select both the repo (which is automatically selected by default) and workflow options.
Scrolling down the page further, select the notifications option as well to make sure that events from GitHub will be issued.
Finally, click on Generate Token to create the new personal access token.
A new token has been created. This value needs to be copied and saved as future views of this page will not reveal the token again. So, record it now as it is needed for Field 2 in the Jenkins configuration form as defined earlier.