Continuous Integration / Continuous Delivery (CI/CD) with Python Training Course
Continuous Integration and Continuous Delivery (CI/CD) refers to a software development methodology that enables more frequent application development and deployment through smaller, incremental updates. This approach facilitates the seamless integration of code changes alongside automated processes for building, testing, and deploying applications.
This instructor-led live training, available either online or at your premises, is designed for developers and DevOps engineers aiming to create automation pipelines leveraging CI/CD practices with Python.
Upon completion of this training, participants will be able to:
- Configure the required development environment to begin constructing CI/CD pipelines with Python.
- Create automated pipelines for testing and distributing Python packages via Travis-CI.
- Automate the deployment of containerized applications using Docker and Heroku.
Course Format
- Interactive lectures and discussions.
- Extensive exercises and practical application.
- Hands-on implementation within a live lab environment.
Customization Options
If you require a tailored version of this course (for example, alternative tools to Heroku or Travis-CI), please get in touch with us to make arrangements.
This course is available as onsite live training in Kenya or online live training.Course Outline
Introduction
- Overview of CI/CD core concepts and benefits.
- Understanding CI services (Travis-CI, CircleCI, Semaphore, etc.).
Preparing the Development Environment
- Setting up Github repositories.
- Integrating Travis-CI with Github.
Building a Python Package
- Creating application logic.
- Packaging the code locally.
Automating Package Deployment
- Adding the PyPI token to Travis-CI.
- Creating and defining the CI/CD pipeline.
- Activating dependencies.
- Running and testing the code.
- Publishing the Python package.
Deploying Containerized Applications
- Creating a Python web app.
- Containerizing the application.
- Deploying the application with Docker.
- Automating deployment with Heroku.
Troubleshooting
Summary and Conclusion
Requirements
- Proficiency with Git or GitHub.
- Prior experience in Python programming.
Target Audience
- Software Developers.
- DevOps Engineers.
Need help picking the right course?
southafrica@nobleprog.co.za or +27 (0)10 005 5793
Continuous Integration / Continuous Delivery (CI/CD) with Python Training Course - Enquiry
Testimonials (3)
Engaging, and hands on practise.
Balavignesh Elumalai - Scottish Power
Course - SonarQube for DevOps
Trainer has in depth experince and well narreated in deed. The depth of the knowledge and the passion for teaching is highly appriciated.
Anup Kumar - SMR Automotive Mirrors Stuttgart
Course - Jenkins 2: Building CI/CD Pipelines
The instructor. I understood what he was teaching which was surprising given my lack of knowledge. If he could teach me, he can teach anyone!!!!
April - OIT
Course - Test Automation with Selenium and Jenkins
Related Courses
Agile Software Testing with Continuous Integration
28 HoursAgile Software Testing encompasses a set of testing practices that deliver timely and ongoing feedback on software quality issues, adhering to the principles of agile development.
Continuous Integration (CI) involves all team members merging their code changes multiple times throughout the day.
Argo CD
7 HoursThis instructor-led, live training in Kenya (online or onsite) is aimed at system administrators and developers who wish to use Argo CD to automate the deployment and lifecycle management of applications.
By the end of this training, participants will be able to automate, monitor, audit, and roll back their Kubernetes systems using Argo CD.
CI/CD with Bitbucket Pipelines
14 HoursThis instructor-led, live training in Kenya (online or onsite) is aimed at developers who wish to build, test, deploy and monitor containerized software to the cloud, without having to provision or manage infrastructure.
By the end of this training, participants will be able to:
- Understand and apply a configuration-as-code approach to setting up infrastructure.
- Create custom configured Docker containers for deploying software applications to the cloud.
- Deploy software to multiple environments.
- Monitor deployments via the Bitbucket Pipelines Deployment Dashboard.
Continuous Integration for JavaScript
14 HoursContinuous Integration (CI) is a development practice wherein developers merge changes in their code as often as possible in order to detect and locate errors quickly.
In this instructor-led, live training, participants will learn the basics of Continuous Integration for JavaScript as they step through setting up a Continuous Integration process for a JavaScript project.
By the end of this training, participants will be able to:
- Understand the fundamentals of Continuous Integration
- Build their own Continuous Integration system for their JavaScript projects
Audience
- Developers
- IT Professionals
- DevOps Engineers
- Business Managers
Format of the course
- Part lecture, part discussion, exercises and heavy hands-on practice
Continuous Integration (CI) for Java
14 HoursThis instructor-led, live training in Kenya (online or onsite) is aimed at developers who wish to learn and apply the basics of Continuous Integration for Java.
By the end of this training, participants will be able to:
- Learn and understand CI for a Java project.
- Build a CI system for Java.
Jenkins: Continuous Integration for Agile Development
14 HoursThis instructor-led, live training covers the concepts, tools, and techniques necessary to implement continuous integration for your software projects in an Agile environment. Participants will undertake a series of hands-on exercises throughout the course to apply their knowledge in real-world situations. Interaction between the instructor and participants is encouraged. Real-world cases are discussed, and specific issues and questions are addressed and resolved in class.
Jenkins 2: Building CI/CD Pipelines
14 HoursThis instructor-led, live training in Kenya (online or onsite) is designed for engineers aiming to use Jenkins 2 to build pipelines that automate the process of moving applications from development to production.
By the conclusion of this training, participants will be able to:
- Install and configure Jenkins 2.
- Adopt a script-based approach to automate every step of the software deployment process.
- Automatically generate application builds when software is committed to a version control system.
- Automatically initiate the compilation, testing, and packaging of software applications.
- Quickly respond to notifications and reports when issues arise.
- Install additional plugins to extend Jenkins functionality.
Jenkins Advanced
14 HoursThis instructor-led, live training in Kenya (online or on-site) covers advanced Jenkins configurations, security, and scaling techniques, and is aimed at DevOps engineers and software architects who wish to gain expertise in customizing Jenkins for complex software projects.
By the end of this training, participants will be able to:
- Optimize Jenkins for enterprise-level software projects.
- Implement advanced security measures.
- Build complex and scalable pipelines.
- Troubleshoot and maintain Jenkins installations effectively.
Jenkins for .Net Continuous Integration (CI)
14 HoursOnce developers have finished writing code, they typically integrate it into an application, copy the application to a folder, run the installer, and then initialize it to verify that it functions as expected. This manual method does not scale well, is tedious, highly prone to errors, and lacks a mechanism for tracking changes throughout the process.
A more effective approach is to automate this workflow using Continuous Integration (CI). Continuous Integration encompasses the processes, tools, and infrastructure required to automate the building, deployment, and testing of software applications.
In this instructor-led live training, available either onsite or remotely, participants will learn how to transform a traditional, manual (or semi-manual) software deployment approach into an agile Continuous Integration (CI) model using Jenkins. Participants will engage in a series of hands-on, live-lab exercises throughout the course, applying their newly acquired knowledge to various software development and deployment challenges at every stage. Interaction between the instructor and participants is encouraged. Real-world scenarios are discussed, and specific issues and questions are addressed and resolved during the training. The course is particularly focused on .NET application development.
By the conclusion of this training, participants will be able to:
- Install and configure Jenkins for .NET application development
- Use Jenkins to automate the process of checking in and merging .NET source code into a code repository
- Use Jenkins to automate the process of downloading, compiling, and deploying an application to a release server
- Integrate Jenkins with other software development tools, such as issue trackers
Audience
- .NET developers
- Build engineers
- QA engineers
- Project managers
- Release managers
- DevOps engineers
Format of the Course
- A blend of lectures, discussions, exercises, and extensive hands-on practice
Note
- To request customized training for this course, please contact us to make arrangements.
Jenkins Fundamentals
14 HoursThis instructor-led, live training in Kenya (online or onsite) delves into the fundamental concepts and usage of Jenkins. It is designed for software developers and DevOps engineers who want to configure Jenkins, create and manage jobs, and automate essential parts of the software development process.
By the end of this training, participants will be able to:
- Understand the principles of continuous integration and continuous delivery (CI/CD).
- Install and configure Jenkins for software automation.
- Create and manage Jenkins jobs for building and testing applications.
- Set up and customize automated pipelines for software deployment.
Building CI/CD Pipelines with Jenkins X
21 HoursThis instructor-led live training in Kenya (online or onsite) is aimed at engineers who wish to use Jenkins X to create automated, cloud-ready CI/CD pipelines on Kubernetes.
By the end of this training, participants will be able to:
- Install and configure Jenkins X.
- Code resilient CI/CD pipelines using a versatile DSL (Domain Specific Language).
- Create CI/CD pipelines that leverage popular technologies such as GitHub, Kubernetes and Docker containers.
- Combine Jenkins X with other popular tools such as Helm, Prow, and Skaffold.
- Deploy applications to any environment, whether in the cloud or on-premises.
Test Automation with Selenium and Jenkins
21 HoursThis course offers comprehensive training on managing testing initiatives through the Selenium test suite and implementing continuous testing practices with Jenkins.
Intended Audience:
- Software test engineers
- Software developers engaged in agile development
- Release managers
- QA engineers
Upon completion of the Selenium training, delegates will be able to:
- Effectively utilize the Selenium test suite in real-world projects
- Conduct cross-browser testing using Selenium
- Distribute tests efficiently via Selenium Grid
- Execute regression Selenium tests within Jenkins
- Prepare test reports and periodic reports using Jenkins
SonarQube for DevOps
14 HoursThis instructor-led live training in Kenya (online or onsite) is designed for DevOps engineers and developers who wish to use SonarQube to perform code reviews fully integrated into development toolchains, such as Jenkins, GitHub, and Azure DevOps.
By the end of this training, participants will be able to:
- Set up the required development environment to begin running automated code reviews.
- Integrate SonarQube with continuous integration tools, such as Jenkins and Azure DevOps.
- Run continuous code inspections to eliminate bugs and security vulnerabilities.
- Collect and analyse data to drive improvements in code cleanup, maintenance, and security.
SonarQube for Secure SDLC and Azure DevOps
21 HoursSonarQube is a platform designed for the continuous inspection of code quality and security, leveraging static analysis and developer-focused reporting.
This instructor-led live training, available online or onsite, targets intermediate-level developers, DevOps engineers, and security practitioners aiming to implement static code analysis, integrate SonarQube into Azure DevOps pipelines, and reinforce secure development practices.
Upon completion of this training, participants will be able to:
- Describe the SonarQube architecture, core features, and security-focused rulesets.
- Configure SonarScanner alongside common build tools like Maven, Gradle, and Ant.
- Integrate SonarQube into Azure DevOps pipelines and import Azure Repos for continuous analysis.
- Define and tune analysis parameters, add custom rules via the SonarQube API, and interpret security reports.
- Apply improvements to secure development methodologies and map responsibilities within the CI/CD process.
- Conduct hands-on analyses across sample repositories (Java + Quarkus and Angular) and resolve identified issues.
Format of the Course
- Interactive lecture and discussion.
- Guided, practical hands-on labs with real repositories.
- Live configuration, testing, and troubleshooting in an Azure DevOps + SonarQube environment.
Course Customization Options
- To request a customized version of this training (different language stacks, deeper DevOps integration, or expanded labs), please contact us to arrange.