INTRODUCTION ============ How to Understand the Devops? ============================= Devops is a process of automating continuous Integration, deployment, management and monitoring the feedback loops to maintain a reliable software application. ==> Reliable software application? ==================================== Software application with zero failures for a specified period in a specified environment. According to the customer view the application with good quality ==> reliable software application. Reliability of application is related to operations not on design patterns. ==> Devops ==> Development + Operations Which is transformative approach that enhances the collaboration and automation between the teams of developers, operations and IT. ==> The main objective of Devops is to simplify and fasten the CI/CD process while maintaining the stability and reliability of software application. ==> By implementing the culture of collaboration and automation, Devops breaks the work of application into small tasks and reduces the manual work. ================================================================= Why we use python for Devops? ============================= Guido Van Rossum Python was developed from different languages: C ==> functional approach C++ ==> Object Oriented approach Modula ==> Modular Approach Perl/Shell Script ==> Scripting OOPs (Object Oriented Programming System) Principles: Inheritance Polymorphism Encapsulation Abstraction Ex: Banking Application Money Transfer ==> Module-1 Loans ==> MOdule-2 Home Car Personal Gold etc. Credit cards ==> Module-3 Debit cards etc. ========================================================= How to use Python for Devops Process: ====================================== 1) Planning & Configuration Management ======================================= Python has very extensive library because of this, python allows IaC (Infrastructure as Code) and automating configuration tasks which specifies the planning and configuration management in Devops. 2) Development: =============== ==> Python is used in all kinds of applications development with the help of extensive python's library and frameworks (Django, Flask). ==> Python can help developers to interact with database and to perform the CRUD operation. ==> Python application can connect/interact with any Version Control System (VCS) like: Subversion, Git etc using a default module: GitAPI. ==> Python application can interact with OS to get resource related to application because of one module "OS". 3) Build & Test: ================ Build Automation Process ==> Selenium testing the system with different libraries like: PyTest, 4) Cloud Automation =================== ==> Developers have to interact with Cloud Service Providers like: AWS, Azure, GCP to create and modify cloud resources like: Launching Virtual Machines (VMs) Configuring the Networks and managing the cloud storage etc. in programmatically using Python. 5) Deployment: ============== Python integrates easily into CI/CD pipelines and perform: 1) Copying files 2) configuring the software etc. ==> Python Can utilize Cloud SDKs with BOTO3. ============================================================ How much python we need for Devops process: =========================================== Environment Setup. Python Basic Syntax Variables Datatypes Conditionals Loops Functions OOP Concepts Modules File Handling Exception Handling Regular Expressions BOTO3