Retour catalogue
Junior~10 hingestionsoftware engineering dataops

Ta première ingestion AWS, en local

AWS en local. Terraform, S3, Lambda, DynamoDB. Tu apprends cloud sans donner ta CB.

Contexte

Tu veux mettre AWS sur ton CV mais tu n'as pas envie de payer 50 € de tests cette semaine. LocalStack reproduit S3, Lambda, DynamoDB et IAM en local, et c'est suffisant pour apprendre 90 % de ce que les boîtes te demandent.

Scénario : transporteur, Sobral, dépose des CSV de tournées dans un bucket S3. Lambda Python doit déclencher sur chaque dépôt, parser fichier, déposer lignes valides dans DynamoDB, et envoyer lignes corrompues dans un bucket de quarantaine. Tout déployé en Terraform, en respectant un principe de IAM least privilege.

Tu sors avec un projet Terraform propre, un handler Lambda idempotent, et expérience concrète de ce qui change (et ne change pas) quand tu passes de LocalStack au vrai AWS.

Architecture

Stack et flow du projet

Loading diagram…

Ce que tu vas livrer

  • Dossier `terraform/` avec provider, S3 bucket, Lambda function, DynamoDB table, IAM role
  • Handler `src/lambda_handler.py` qui traite chaque event S3 et écrit en DynamoDB
  • Fichier `README.fr.md` qui documente les différences entre LocalStack et le vrai AWS

Ce que CI vérifie

  • `terraform apply` réussit contre LocalStack (idempotent,un second apply ne change rien)
  • Après dépôt de la fixture, DynamoDB contient 1 198 lignes (1 200 − 2 malformées)
  • Les 2 lignes malformées sont en quarantaine dans bon bucket
  • Rôle IAM ne contient pas `Action: "*"` ni `Resource: "*"` (least privilege statique)
  • README liste au moins 2 limitations connues de LocalStack vs vrai AWS

Prérequis

  • Python intermédiaire (boto3, gestion d'erreurs)
  • Notion de IAM (rôles, policies, principal/action/resource)
  • Idéalement : un peu de Terraform,sinon on part du basique

Comment ça marche

  1. 01

    Tu cliques « Commencer »

    On forke template sur ton compte GitHub. Aucune install locale, aucun Docker à débugger.

  2. 02

    Tu codes dans GitHub Codespaces

    VS Code dans ton navigateur, prêt à l'emploi : DBs locales, dépendances Python, tout dans devcontainer. 60h/mois gratuits chez GitHub.

  3. 03

    Tu pushes, CI te répond

    GitHub Actions exécute rubrique. Vert = validé. Rouge = chaque check échoué te dit ce qui manque, en français.

Information précontractuelle

  • Vendeur : Merta
  • Prix : 29 € TTC, franchise de TVA
  • Livraison : numérique, immédiate après paiement
  • Droit de rétractation : exclu après début d'exécution, voir case à cocher
  • Paiement sécurisé via Stripe

Achat soumis aux CGV.