Comment définir une politique de rétention S3 avec Terraform ?

cschneider 14/05/2026
RÉSOLU
cschneider
Auteur Actif
Avatar de cschneider
cschneider
Auteur Actif

Salut à tous, j'essaie de configurer un bucket S3 pour qu'il supprime automatiquement les objets après 30 jours via Terraform, mais je galère avec la structure du bloc lifecycle_rule. Quelqu'un aurait un exemple propre ?

14/05/2026 à 22:58

4 commentaires

bneveu
Membre
Avatar de bneveu
bneveu
Membre

C'est un classique. Il faut bien imbriquer le bloc expiration dans lifecycle_rule. Voici ce qui fonctionne pour moi :

resource "aws_s3_bucket_lifecycle_configuration" "example" {
  bucket = aws_s3_bucket.my_bucket.id
  rule {
    id = "log-retention"
    status = "Enabled"
    expiration {
      days = 30
    }
  }
}
15/05/2026 à 14:14
cschneider
Auteur Actif
Avatar de cschneider
cschneider
Auteur Actif

Ah super, je n'utilisais pas la ressource aws_s3_bucket_lifecycle_configuration, je restais sur l'ancien bloc intégré au bucket. C'est pour ça que ça ne passait pas.

16/05/2026 à 10:54
bneveu
Membre
Avatar de bneveu
bneveu
Membre

Exact, AWS a séparé cette config dans une ressource dédiée depuis la v4 du provider. C'est beaucoup plus modulaire comme ça.

17/05/2026 à 06:42
cschneider
Auteur Actif
Avatar de cschneider
cschneider
Auteur Actif

J'ai testé et terraform plan est clean maintenant. Merci pour l'aide, ça m'évite de stocker des logs inutiles pendant des années !

18/05/2026 à 02:15

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire
An Error Occurred: Internal Server Error

Oops! An Error Occurred

The server returned a "500 Internal Server Error".

Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused.