1. Key CI/CD/Jenkins Concepts |
18% |
Continuous Delivery/Continuous Integration Concepts
- Define continuous integration, continuous delivery, continuous deployment
- Difference between CI and CD
- Stages of CI and CD
- Continuous delivery versus continuous deployment
Jobs
- What are jobs in Jenkins?
- Types of jobs
- Scope of jobs
Builds
- What are builds in Jenkins?
- What are build steps, triggers, artifacts, and repositories?
- Build tools configuration
Source
- What are source code management systems and how are they used?
- Cloud-based SCMs
- Jenkins changelogs
- Incremental updates v clean check out
- Checking in code
- Infrastructure-as-Code
- Branch and Merge Strategies
Testing
- Benefits of testing with Jenkins
- Define unit test, smoke test, acceptance test, automated verification/functional tests
Notifications
- Types of notifications in Jenkins
- Importance of notifications
Distributed Builds
- What are distributed builds?
- Functions of masters and agents
Plugins
- What are plugins?
- What is the plugin manager?
Jenkins Rest API
- How to interact with it
- Why use it?
Security
- Authentication versus authorization
- Matrix security
- Definition of auditing, credentials, and other key security concepts
Fingerprints
- What are fingerprints?
- How do fingerprints work?
Artifacts
- How to use artifacts in Jenkins
- Storing artifacts
- Using 3rd party tools
- How to use 3rd party tools
Installation Wizard
- What is the Jenkins Installation Wizard?
- How to use the Wizard?
- Which configurations are covered by the Installation Wizard?
|
2. Jenkins usage (features and functionality) |
23% |
Jobs
- Organizing jobs in Jenkins
- Parameterized jobs
- Usage of Freestyle/Pipeline/Matrix jobs
Builds
- Setting up build steps and triggers
- Configuring build tools
- Running scripts as part of build steps
Source Code Management
- Polling source code management
- Creating hooks
- Including version control tags and version information
Testing
- Testing for code coverage
- Test reports in Jenkins
- Displaying test results
- Integrating with test automation tools
- Breaking builds
Notifications
- Setup and usage
- Email notifications, instant messaging
- Alarming on notifications
Distributed Builds
- Setting up and running builds in parallel
- Setting up and using SSH agents, JNLP agents, cloud agents
- Monitoring nodes
Plugins
- Setting up and using Plugin Manager
- Finding and configuring required plugins
CI/CD
- Using Pipeline (formerly known as “Workflow”)
- Integrating automated deployment
- Release management process
- Pipeline stage behavior
Jenkins Rest API
- Using REST API to trigger jobs remotely, access job status, create/delete jobs
Security
- Setting up and using security realms
- User database, project security, Matrix security
- Setting up and using auditing
- Setting up and using credentials
Fingerprints
- Fingerprinting jobs shared or copied between jobs
Artifacts
- Copying artifacts
- Using artifacts in Jenkins
- Artifact retention policy
|
3. Building Continuous Delivery (CD) Pipelines |
16% |
Pipeline Concepts
- Value stream mapping for CD pipelines
- Why create a pipeline?
- Gates within a CD pipeline
- How to protect centralized pipelines when multiple groups use same tools
- Definition of binary reuse, automated deployment, multiple environments
- Elements of your ideal CI/CD pipeline - tools
- Key concepts in building scripts (including security/password, environment information, etc.)
Upstream and downstream
- Triggering jobs from other jobs
- Setting up the Parameterized Trigger plugin
- Upstream/downstreamjobs
Triggering
- Triggering Jenkins on code changes
- Difference between push and pull
- When to use push vs. pull
Pipeline (formerly known as “Workflow”)
- Benefits of Pipeline vs linked jobs
- Functionalities offered by Pipeline
- How to use Pipeline
- Pipeline stage view
Folders
- How to control access to items in Jenkins with folders
- Referencing jobs in folders
Parameters
- Setting up test automation in Jenkins against an uploaded executable
- Passing parameters between jobs
- Identifying parameters and how to use them: file parameter, string parameter
- Jenkins CLI parameters
Promotions
- Promotion of a job
- Why promote jobs?
- How to use the Promoted Builds plugin
Notifications
- How to radiate information on CD pipelines to teams
Pipeline Multibranch and Repository Scanning
- Usage of Multibranch jobs
- Scanning GitHub and BitBucket Organization
- ScanningbasicSCMrepositories
Pipeline Global Libraries
- How to share code across Pipelines
- Usages of the Shared Libraries
- Interaction with Folders and Repository scanning
- Security and Groovy sandbox
|
4. CD-as-Code Best Practices |
10% |
• Distributed builds architecture
• Fungible (replaceable) agents
• Master-agent connectors and protocol
• Tool installations on agents
• Cloud agents
• Traceability
• High availability |
5. CloudBees Jenkins Platform |
33% |
Reference architecture
Role-based Access Control (RBAC)
Folders Plus
Templates
Setting up High Availability (HA)
CloudBees Jenkins Operations Center (CJOC)
- Shared clouds
- Cloud configurations
- Shared agents
Analytics
Cluster Operations
Pipeline Checkpoints
Custom Update Center
CloudBees Assurance Program (CAP)
CAP Collection (plugin envelope)
Installation Wizard |