GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - stephrobert/python-training: Une formation Python pour les Admin Sys

BranchesTags
Open more actions menu

Latest commit

 

History

19 Commits
19 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
00-formation-base
00-formation-base
 
 
01-automatisation
01-automatisation
 
 
.gitignore
.gitignore
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
contributing.md
contributing.md
 
 

Repository files navigation

Python SysAdmin Training

Bienvenue dans ce projet Python SysAdmin Training !

Ce dépôt propose un parcours progressif et pratique pour apprendre Python à travers des cas concrets d’administration système. Pas de théorie abstraite ici : chaque TP vous met dans la peau d’un admin qui cherche à automatiser une tâche fastidieuse, surveiller un système, appeler une API ou générer un rapport.

C’est un guide pour monter en compétences par la pratique, avec des exemples issus du quotidien des administrateurs systèmes.


🎯 Objectifs

  • 🐍 Apprendre les bases du langage Python dans un contexte sysadmin.
  • ⚙️ Automatiser des tâches à faible valeur ajoutée (nettoyage de fichiers, surveillance, backup…).
  • 📈 Écrire des scripts robustes, testables et réutilisables.
  • 🌐 Interagir avec des APIs, manipuler des fichiers de configuration (YAML, JSON), gérer des processus à distance.
  • 🧪 Tester automatiquement vos scripts avec pytest et testinfra.

📚 Structure du Projet

Le projet est composé de deux parties :

  1. formation-base : Concepts fondamentaux de Python.
  2. automatisation : Exercices pratiques pour appliquer ces concepts dans un contexte d’administration système.

Formation de base

TP Disponibles :

  • 00-Intro-Python — Introduction à Python, syntaxe de base, variables, types de données.
  • 01-Structures-Collections — Structures de contrôle (if/else, boucles) et collections (listes, tuples, dictionnaires).
  • 02-Fonctions — Création de fonctions, paramètres, valeurs par défaut, lambdas, récursion.

Automatisation

TP Disponibles :

  • 01-Nmap — Utilisation de Nmap pour scanner des réseaux.

Idées de TP :

  • 02-Backup — Script de sauvegarde de fichiers.
  • 03-Log-Parser — Analyse de fichiers log pour extraire des informations pertinentes.
  • 04-API-Client — Client pour interagir avec une API REST (par exemple, récupérer des données météo).
  • ...

🔧 Prérequis

  • Un environnement Linux ou Incus (containers LXD-compatible avec systemd).
  • Python 3.10 ou supérieur.
  • Les outils suivants installés :
pipx install pytest
pipx inject pytest pytest-testinfra

Une configuration Incus est recommandée pour certains TP. Voir ci-dessous.


Installation d'Incus (facultatif mais recommandé)

Pour isoler proprement chaque TP dans un conteneur Linux, tu peux utiliser Incus. Cf. guide complet d’installation ici : https://www.stephane-robert.info/docs/homelab/incus/


🚀 Démarrage rapide

  1. Cloner le dépôt :
git clone https://github.com/stephrobert/python-training.git
cd python-sysadmin-training
  1. Choisissez un TP et suivez les consignes dans le fichier README.md du dossier correspondant.
  2. Les tests se lancent avec :
pytest tests/

Certains TP peuvent inclure des fichiers de simulation (log.txt, users.csv, etc.) dans un dossier data/.


🔄 Mise à jour du dépôt

Je continuerai à enrichir ce dépôt avec de nouveaux TP, inspirés de cas réels, et des corrections issues des retours de la communauté.

git pull origin main

🤝 Contribuer

Vous avez une idée de TP ? Un script utile à partager ? Une amélioration à proposer ?

  1. Ouvrez une issue pour discuter du sujet.
  2. Proposez une pull request avec un nouveau dossier TP complet : README.md, main.py, tests/, data/.

☕ Me soutenir

Si ce travail vous aide ou vous inspire, vous pouvez me soutenir ici :

Ko-fi


📄 Licence

  • Auteur : Stéphane Robert (2025)
  • Licence : Creative Commons BY-SA 4.0

About

Une formation Python pour les Admin Sys

blog.stephane-robert.info/docs/developper/programmation/python/

Topics

formationlearningpythonpython3

Resources

Readme
CC-BY-SA-4.0 license

Contributing

Contributing
Activity

Stars

45 stars

Watchers

1 watching

Forks

14 forks
Report repository

Releases

Sponsor this project

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.