Table of contents
- Day 1: Introduction to Python, Installation, and Configuration
- Day 2: Working with Strings and Numbers
- Day 3: Variables
- Day 4: Functions, Modules and Packages
- Day 5: Environment Variables and Command Line Arguments
- Day 6: Operators
- Day 7: Conditional Handling using if, elif and else
- Day 8: Working with Lists (Part 1)
- Day 9: Loops
- Day 10: Working with Lists (Part 2)
- Day 11: Working with Dictionaries and Sets
- Day 12: Functions and Modules
- Day 13: Functions and Modules (Part 2)
- Day 14: Python Libraries for DevOps (Part 1)
- Day 15: Python Libraries for DevOps (Part 2)
- Day 16: Working with RESTful APIs
- Day 17: Data Serialization and Configuration Files
- Day 18: Automation with Cron Jobs
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).
Day 3: Variables
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 functions, 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.
Day 6: Operators
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.
Day 9: Loops
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.