Duration 4 days – 28 hrs
Overview
This comprehensive training course covers the essential tools and practices for implementing DevOps, focusing on Bitbucket, Jenkins, SonarQube, JFrog, and Docker. Participants will learn how to integrate these tools into a cohesive DevOps pipeline to improve software development and deployment processes, ensuring faster delivery and higher quality of software products.
Objectives
- Understand the principles and practices of DevOps.
- Learn how to use Bitbucket for source code management.
- Implement continuous integration and continuous delivery (CI/CD) pipelines using Jenkins.
- Perform code quality analysis with SonarQube.
- Manage and distribute binaries using JFrog Artifactory.
- Containerize applications with Docker and manage container deployments.
Audience
- DevOps Engineers: Professionals responsible for implementing and managing the CI/CD pipelines and ensuring smooth and automated deployment processes.
- Software Developers: Developers who need to understand the DevOps processes and integrate their code seamlessly into the DevOps pipeline.
- System Administrators: Administrators who manage the infrastructure and require knowledge of automating deployments and managing environments.
- IT Managers: Managers overseeing the software development lifecycle who need to understand the tools and processes used in modern DevOps practices.
- Release Engineers: Specialists in managing software releases who need to ensure that code is built, tested, and deployed efficiently.
- Continuous Integration/Continuous Deployment (CI/CD) Specialists: Professionals focused on optimizing and managing the CI/CD processes within their organizations.
- Build and Release Engineers: Those responsible for building and releasing software in an efficient, automated manner.
- Quality Assurance (QA) Engineers: QA professionals who need to integrate automated testing into the CI/CD pipeline.
- Technical Leads and Architects: Leaders and architects who design and oversee the implementation of DevOps pipelines and workflows.
- Operations Engineers: Engineers focusing on maintaining and scaling the production environment in a DevOps context.
Pre-requisites
- Basic understanding of software development and operations.
- Familiarity with version control systems (e.g., Git).
- Basic knowledge of command-line interface (CLI) operations
Course Content
Day 1: Bitbucket and Git Mastery
Morning Session:
Introduction to DevOps and DevSecOps Concepts
- Overview of DevOps and its importance
- Introduction to DevSecOps and its practices
Git Commands Inside Out
- Basic Git commands: init, clone, add, commit, push, pull, fetch
- Advanced Git commands: rebase, merge, cherry-pick, bisect, stash
- Hands-on Lab: Practicing Git commands with real-world scenarios
Afternoon Session:
Bitbucket Fundamentals
- Setting up repositories
- Bitbucket interface overview
- Integrating Git with Bitbucket
Bitbucket Branches and Workflows
- Creating and managing branches
- Branching strategies (Git Flow, Feature Branching)
- Hands-on Lab: Implementing branching strategies in Bitbucket
Day 2: Advanced Bitbucket and SonarQube
Morning Session:
Advanced Bitbucket Features
- Pull requests and code reviews
- Setting up permissions and access control
- Integrating Bitbucket with CI/CD tools
Hands-on Lab: Advanced Bitbucket
- Creating pull requests and conducting code reviews
- Setting up and configuring Bitbucket integrations
Afternoon Session:
Introduction to SonarQube
- Overview of code quality and security analysis
- Setting up SonarQube
Using SonarQube with Bitbucket
- Integrating SonarQube with Bitbucket
- Analyzing code quality and security
Hands-on Lab: SonarQube
- Running SonarQube analysis on a sample project
- Configuring quality gates and interpreting results
Day 3: JFrog, Jenkins, and Docker
Morning Session:
Introduction to JFrog
- Overview of JFrog Artifactory
- Setting up and configuring JFrog
Using JFrog with Bitbucket and Jenkins
- Managing artifacts in JFrog
- Integrating JFrog with Bitbucket and Jenkins
Hands-on Lab: JFrog
- Deploying artifacts to JFrog from Jenkins
Afternoon Session:
Jenkins Pipeline Freestyle Projects
- Introduction to Jenkins and its architecture
- Setting up a Jenkins Freestyle project
Jenkins Pipeline Scripted Projects
- Writing Jenkins pipeline scripts (Groovy)
- Creating and managing Jenkinsfiles
Hands-on Lab: Jenkins Pipelines
- Creating and running both Freestyle and Scripted pipelines
Day 4: Advanced Jenkins, Docker, and COBOL Integration
Morning Session:
Dockerizing a Java Application
- Introduction to Docker and containerization
- Creating Dockerfiles for Java applications
Running Java Pipelines with Docker
- Integrating Docker with Jenkins pipelines
- Building and deploying Docker images
Hands-on Lab: Docker and Jenkins
- Dockerizing a sample Java application
- Creating and running Docker-based Jenkins pipelines
Afternoon Session:
COBOL Jenkins Pipelines
Overview of COBOL in modern CI/CD
- Setting up Jenkins pipelines for COBOL applications
Advanced DevSecOps Practices
- Implementing security in CI/CD pipelines
- Best practices for secure DevOps workflows
Hands-on Lab: COBOL and DevSecOps
- Creating Jenkins pipelines for COBOL
- Implementing DevSecOps practices in pipelines
Note: Each session will include a combination of lectures, demos, and hands-on lab exercises to ensure participants gain practical experience with the tools and concepts discussed.