Automatiser le Tagging AWS ECR avec Python et Boto3

Un tagging correct des ressources AWS est essentiel pour une gestion efficace des ressources, la repartition des couts et l'audit. Si vous avez de nombreux depots AWS Elastic Container Registry (ECR), le tagging manuel peut etre fastidieux et sujet aux erreurs. Cet article propose une solution simple et efficace : automatiser le tagging des depots ECR avec Python et le SDK AWS pour Python (Boto3).
Pourquoi Automatiser le Tagging ?
L'automatisation du tagging fait gagner du temps, assure la coherence et evite les erreurs couteuses. Les tags aident a suivre les ressources liees a des projets, environnements ou centres de couts specifiques.
Prerequis
- Python 3 installe
- AWS CLI installe et configure
- Librairie Boto3 installee (
pip install boto3) - Permissions IAM :
ecr:DescribeRepositoriesecr:ListTagsForResourceecr:TagResource
Tagger les Depots AWS ECR avec Python
Voici un script Python simple utilisant Boto3 pour ajouter des tags predefinis a tous vos depots ECR qui n'ont actuellement aucun tag.
Script Python
import boto3
AWS_REGION = ’eu-central-1’ # Remplacez par votre region
Definissez vos tags
TAGS_TO_APPLY = [
{‘Key’: ‘provisioned’, ‘Value’: ‘manual’},
{‘Key’: ’environment’, ‘Value’: ‘dev’},
{‘Key’: ‘project’, ‘Value’: ‘Project_Name’},
]
def tag_ecr_repositories():
ecr_client = boto3.client(’ecr’, region_name=AWS_REGION)
paginator = ecr_client.get_paginator('describe_repositories')
for page in paginator.paginate():
for repo in page['repositories']:
repo_arn = repo['repositoryArn']
repo_name = repo['repositoryName']
existing_tags = ecr_client.list_tags_for_resource(resourceArn=repo_arn).get('tags', [])
if not existing_tags:
print(f"Ajout de tags au depot '{repo_name}'")
ecr_client.tag_resource(resourceArn=repo_arn, tags=TAGS_TO_APPLY)
else:
print(f"Le depot '{repo_name}' a deja des tags. Ignore.")
if name == ‘main’:
tag_ecr_repositories()
Le script parcourt automatiquement vos depots ECR et ajoute des tags uniquement aux depots qui n'ont actuellement aucun tag.
Benefices
- Economise un temps administratif precieux.
- Assure la coherence dans votre environnement AWS.
- Reduit le risque d'erreur humaine.
Conclusion
Automatiser le tagging des ressources AWS est une pratique essentielle pour une gestion cloud efficace. Utiliser Python avec Boto3 simplifie considerablement cette tache, garantissant que vos ressources AWS restent organisees et facilement gerables.
Plus d'Ercan
Deux autres sites, même auteur, terrain différent.
IA, LLMs, agents, ML appliquée.
Notes de terrain sur les charges IA. Analyse des coûts Bedrock, patterns d'agents, compromis de stockage vectoriel, modes de défaillance en production.
Visiter ercan.ai →Le hub. À propos, conseil, contact.
Hub personnel pour les deux pistes d'écriture. Qui je suis, comment fonctionne le conseil, comment me joindre.
Visiter ercanermis.com →