Terraform-provider-local: Autoriser la génération de fichiers locaux non exécutables

Créé le 17 août 2017  ·  4Commentaires  ·  Source: hashicorp/terraform-provider-local

Actuellement, ce fournisseur ne génère que des fichiers avec les autorisations 0777 .

Y a-t-il un moyen de paramétrer cela peut-être? Il semble un peu étrange de rendre les fichiers exécutables par défaut.

https://github.com/terraform-providers/terraform-provider-local/blob/8a97bc491e1e8a28197e40d40226d6748eb07ac6/local/resource_local_file.go#L71

enhancement

Commentaire le plus utile

@brett-richardson @apparentlymart a soumis une résolution possible pour cela avec #12. J'ai autorisé la configuration des autorisations de fichier au lieu d'un booléen exécutable. A laissé le comportement actuel intact.

Tous les 4 commentaires

Salut @brett-richardson !

À l'heure actuelle, les options pour cette ressource sont assez limitées pour rester simple. Pouvoir définir des autorisations semble raisonnable, et je suppose que nous ne l'avons pas fait simplement parce que cela introduit des considérations spécifiques à la plate-forme - Terraform s'exécute sous Windows et les autorisations ne fonctionnent pas de la même manière.

Peut-être pourrions-nous éviter cela en ne généralisant pas trop et en répondant directement à votre préoccupation ici, avec un nouvel attribut executable qui peut être défini sur false . Ce drapeau ne ferait probablement absolument rien sur Windows, puisque Windows ne fait pas une telle distinction de manière conventionnelle (ou plutôt, le fait via des conventions de nom de fichier), mais sur des systèmes de type POSIX, il pourrait définir uniquement des autorisations de lecture/écriture, plutôt que lecture/écriture /exécuter. (Il doit toujours respecter le umask actif du processus, donc en pratique, le fichier sur le disque ne sera généralement _pas_ accessible en écriture par tout le monde, même si le mode ici le suggère.)

Cela a du sens. Je verrai si je peux mettre en place un PR quand j'ai le temps.

@brett-richardson @apparentlymart a soumis une résolution possible pour cela avec #12. J'ai autorisé la configuration des autorisations de fichier au lieu d'un booléen exécutable. A laissé le comportement actuel intact.

Ceci est similaire à # 19, donc je vais donner la même suggestion.

Bien que nous n'ayons pas de fonctionnalité multiplateforme en place, j'ai utilisé la solution de contournement suivante...

resource "local_file" "foo" {
  content = "contents"
  filename = "foo.txt"
  provisioner "local-exec" {
    command = "chmod 644 foo.txt"
}

J'espère que ça aide!

Cette page vous a été utile?
0 / 5 - 0 notes