📖 Scenario: You are setting up Jenkins to access a private Git repository securely. Jenkins needs credentials to clone the repository during builds.
🎯 Goal: Learn how to create and use credentials in Jenkins for Git access.
📋 What You'll Learn
Create a Jenkins credentials entry with a username and password
Store the credentials ID in a variable
Use the credentials ID in a Jenkins pipeline script to clone a Git repository
Print the credentials ID to verify it is set correctly
💡 Why This Matters
🌍 Real World
Jenkins needs credentials to securely access private Git repositories during automated builds.
💼 Career
Knowing how to manage and use credentials in Jenkins is essential for DevOps engineers to automate CI/CD pipelines safely.
Progress0 / 4 steps
1
Create Jenkins credentials dictionary
Create a dictionary called git_credentials with keys username and password having values gituser and gitpass123 respectively.
Jenkins
Hint
Use a Python dictionary with exact keys and values as shown.
2
Add credentials ID variable
Create a variable called credentials_id and set it to the string git-cred-01.
Jenkins
Hint
Assign the exact string to the variable credentials_id.
3
Use credentials ID in Jenkins pipeline snippet
Write a Jenkins pipeline snippet line that uses credentials_id to clone a Git repository from https://github.com/example/repo.git using the git step with credentialsId set to credentials_id.
Jenkins
Hint
Use the Jenkins git step syntax with the exact URL and credentialsId variable.
4
Print the credentials ID
Write a print statement to display the value of credentials_id.
Jenkins
Hint
Use print(credentials_id) to show the credentials ID.
Practice
(1/5)
1. What is the main purpose of adding credentials in Jenkins for Git access?
easy
A. To create new Git repositories automatically
B. To speed up the Jenkins build process
C. To enable Jenkins to run on multiple nodes
D. To allow Jenkins to securely access private Git repositories
Solution
Step 1: Understand Jenkins and Git integration
Jenkins needs credentials to authenticate and access private Git repositories securely.
Step 2: Identify the purpose of credentials
Credentials store authentication details like username/password or SSH keys for Git access.
Final Answer:
To allow Jenkins to securely access private Git repositories -> Option D
Quick Check:
Credentials = Secure Git access [OK]
Hint: Credentials = secure login for Jenkins to Git [OK]
Common Mistakes:
Thinking credentials speed up builds
Confusing credentials with Jenkins nodes
Assuming credentials create repos
2. Which Jenkins menu path do you use to add Git credentials?
easy
A. Manage Jenkins > Configure System
B. Manage Jenkins > Manage Credentials
C. New Item > Pipeline
D. Build History > Credentials
Solution
Step 1: Locate where Jenkins stores credentials
Jenkins stores credentials under 'Manage Credentials' accessible from 'Manage Jenkins'.
Step 2: Confirm the correct menu path
The correct path to add or manage Git credentials is 'Manage Jenkins > Manage Credentials'.
Final Answer:
Manage Jenkins > Manage Credentials -> Option B
Quick Check:
Manage Credentials = Add Git credentials [OK]
Hint: Add credentials under Manage Jenkins > Manage Credentials [OK]
Common Mistakes:
Choosing Configure System instead of Manage Credentials
Selecting New Item which creates jobs
Looking in Build History which shows past builds
3. Given this Jenkins pipeline snippet, what does credentials('git-cred-id') represent?
A. The Jenkins credential ID used for Git authentication
B. The Jenkins agent label
C. The branch name to checkout
D. The ID of the Git repository
Solution
Step 1: Understand the credentialsId parameter
In the git step, credentialsId specifies which Jenkins stored credential to use for authentication.
Step 2: Identify what 'git-cred-id' means
'git-cred-id' is the ID of the credential Jenkins uses to access the Git repo securely.
Final Answer:
The Jenkins credential ID used for Git authentication -> Option A
Quick Check:
credentialsId = Jenkins Git credential ID [OK]
Hint: credentialsId links Jenkins to stored Git credentials [OK]
Common Mistakes:
Confusing credentialsId with repo URL
Thinking it is branch name
Assuming it is agent label
4. You added Git credentials in Jenkins but your pipeline fails with authentication errors. What is the most likely cause?
medium
A. The Jenkins agent is offline
B. The Git repository URL is public and does not require credentials
C. The credential ID used in the pipeline does not match the stored credential ID
D. The pipeline syntax is missing the agent any line
Solution
Step 1: Check the error cause
Authentication errors usually mean Jenkins cannot find or use the correct credentials.
Step 2: Verify credential ID usage
If the pipeline uses a credential ID that does not match any stored credential, authentication fails.
Final Answer:
The credential ID used in the pipeline does not match the stored credential ID -> Option C
Quick Check:
Credential ID mismatch = auth error [OK]
Hint: Match pipeline credentialId exactly with stored ID [OK]
Common Mistakes:
Ignoring credential ID mismatch
Blaming public repo for auth errors
Assuming agent offline causes auth errors
Missing agent line causes auth errors
5. You want to use SSH keys stored as Jenkins credentials to access a private Git repo in a pipeline. Which credential type should you add in Jenkins to support this?
hard
A. SSH Username with private key
B. Secret text
C. Username with password
D. Certificate
Solution
Step 1: Identify credential types for Git SSH access
SSH access requires a private key and username, so Jenkins must store these as credentials.
Step 2: Choose the correct Jenkins credential type
Jenkins provides 'SSH Username with private key' to store SSH keys for Git authentication.
Final Answer:
SSH Username with private key -> Option A
Quick Check:
SSH keys = SSH Username with private key [OK]
Hint: Use SSH Username with private key for Git SSH access [OK]
Common Mistakes:
Using username/password for SSH key access
Choosing secret text which is for tokens
Selecting certificate which is for SSL
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.