View Code? Open in Web Editor
NEW
This project forked from iam-veeramalla/python-for-devops
Learn Python from DevOps Engineer point of you.
License: MIT License
python-for-devops's Introduction
Python Zero to Hero for DevOps Engineers
Day 1: Introduction to Python, Installation, and Configuration
- Introduction to Python and its role in DevOps.
- Installing Python and setting up a development environment.
- Writing your first Python program.
Day 2: Working with Strings and Numbers
- String data type in Python.
- String manipulation and formatting.
- Regular expressions for text processing.
- Numeric data types in Python (int, float).
- Understanding variables in Python.
- Variable scope and lifetime.
- Variable naming conventions and best practices.
- Practice exercises and examples:
- Example: Using variables to store and manipulate configuration data in a DevOps context.
Day 4: Functions, Modules and Packages
- What are differences between function, modules and packages ?
- How to import a package ?
- What are Python workspaces ?
Day 5: Environment Variables and Command Line Arguments
- Reading and writing environment variables in Python.
- Using the os and dotenv modules.
- Securing sensitive information in environment variables.
- Handling command line arguments in Python.
- Practice exercises and examples:
- Example: Developing a Python script that accepts command line arguments to customize DevOps automation tasks.
- Introduction to operators in Python.
- Arithmetic, comparison, and logical operators.
- Bitwise and assignment operators.
- Practice exercises and examples:
- Example: Using operators to perform calculations and comparisons in a DevOps script.
Day 7: Conditional Handling using if, elif and else
- Conditional statements (if, elif, else).
- Practice exercises and examples:
- Example: Automating a server shutdown if it's running out of disk space.
Day 8: Working with Lists (Part 1)
- Understanding lists and list data structure.
- List manipulation and common list operations.
- Practice exercises and examples:
- Example: Writing a script to manage a list of user accounts in a DevOps environment.
- Loops in Python (for and while).
- Loop control statements (break, continue).
- Practice exercises and examples:
- Example: Automating a log file analysis with a loop to find errors.
Day 10: Working with Lists (Part 2)
- List comprehensions.
- Nested lists and advanced list operations.
- Practice exercises and examples:
- Example: Parsing a complex configuration file with nested lists.
Day 11: Working with Dictionaries and Sets
- Dictionaries and key-value pairs.
- Sets and set operations.
- Practice exercises and examples:
- Example: Managing a dictionary of server configurations and optimizing retrieval.
Day 12: Functions and Modules
- Introduction to functions in Python.
- Writing functions and function parameters.
- Return values and modular code.
- Practice exercises and examples:
- Example: Creating a function to automate server status checks.
Day 13: Functions and Modules (Part 2)
- Advanced function topics (recursion, lambda functions).
- Function libraries and built-in functions.
- Practice exercises and examples:
- Example: Developing a library of custom functions for DevOps automation.
Day 14: Python Libraries for DevOps (Part 1)
- Introduction to external libraries like Paramiko, Fabric, and Boto3.
- Automating SSH connections with Paramiko.
- Running commands on remote servers.
- Practice exercises and examples:
- Example: Using Paramiko to create a secure remote backup solution.
Day 15: Python Libraries for DevOps (Part 2)
- Using Fabric for remote task automation.
- AWS automation with Boto3.
- Managing EC2 instances, S3 buckets, and more.
- Practice exercises and examples:
- Example: Creating a Fabric script for deploying applications to remote servers.
Day 16: Working with RESTful APIs
- Introduction to RESTful APIs.
- Making HTTP requests using Python.
- Parsing JSON responses and error handling.
- Practice exercises and examples:
- Example: Developing a script to monitor RESTful API endpoints for your DevOps tools.
Day 17: Data Serialization and Configuration Files
- Serializing and deserializing data (JSON, YAML).
- Managing configuration data.
- DevOps use cases for configuration files.
- Practice exercises and examples:
- Example: Building a configuration manager to handle application settings in JSON format.
Day 18: Automation with Cron Jobs
- Scheduling automated tasks using cron.
- Creating Python scripts for scheduled automation.
- Handling periodic tasks and reports.
- Practice exercises and examples:
- Example: Using cron and Python to schedule regular backups of your data.
Day 19: Python Interview Questions & Answers