Terraform-provider-local: يجب أن يكون لمورد local_file أوضاع ، وليس تعيين بت قابل للتنفيذ افتراضيًا

تم إنشاؤها على ٧ نوفمبر ٢٠١٨  ·  8تعليقات  ·  مصدر: hashicorp/terraform-provider-local

_تم فتح هذا الإصدار في الأصل بواسطة kojiromike كـ hashicorp / terraform # 14768. تم ترحيله هنا كنتيجة لتقسيم الموفر . النص الأصلي للمشكلة أدناه.


نسخة Terraform

0.9.5

الموارد المتأثرة

  • ملف محلي

ملفات تكوين Terraform

resource "local_file" "foo" {
  content = "contents"
  filename = "foo.txt"
}

قناعتي هنا هي 0022

سلوك متوقع

يجب إنشاء ملف بالوضع -rw-r--r-- .

السلوك الفعلي

تم إنشاء ملف بالنمط -rwxr-xr-x .

آراء متواضعة

على الرغم من أنني أفضل خيار توفير وضع معين في تكوين tf ، أعتقد أن Terraform يجب أن يتراجع عن دعم السلوك القياسي لـ open ، مما قد يؤدي إلى أن الملف غير قابل للتنفيذ.

التعليق الأكثر فائدة

على الرغم من أنه ليس لدينا حل مناسب لذلك ، فأنا أستخدم الحل البديل التالي.

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

ليس الحل الأفضل ، ولكن الحيلة بالنسبة لي! آمل أن يساعد.

ال 8 كومينتر

أعتقد أن mode يجب أن يكون سمة. على سبيل المثال ، أستخدم مفتاحًا خاصًا ديناميكيًا تم إنشاؤه لمجموعة من المثيلات ولكني استخدم ملف loca_file لوضعه في المسار المحلي الخاص بي في حال احتجت إلى ssh واستكشاف الأخطاء وإصلاحها لاحقًا. ولكن في حالتي ، يجب أن يكون الملف .pem الذي تم إنشاؤه في وضع 600 ليتم استخدامه مع الأمر ssh -i <*.pem> <host> .

أوافق ، الحصول على هذه المشكلة عند حفظ الملفات التي تحتاج إلى أوضاع أقل تساهلاً.

على الرغم من أنه ليس لدينا حل مناسب لذلك ، فأنا أستخدم الحل البديل التالي.

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

ليس الحل الأفضل ، ولكن الحيلة بالنسبة لي! آمل أن يساعد.

rodrigocmn شكرًا لك على هذا الحل ، الذي يعمل بشكل رائع مع السيناريو الخاص بي!

على الرغم من أنه ليس لدينا حل مناسب لذلك ، فأنا أستخدم الحل البديل التالي.

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

ليس الحل الأفضل ، ولكن الحيلة بالنسبة لي! آمل أن يساعد.

خدعة جميلة جدا!

يتم دعم الأوضاع الآن (تم تنفيذها في طلب السحب رقم 30) ، استخدم الوسيطة file_permission التي تم إصدارها في v1.4.0 .

وهذا لا يعمل بالنسبة لي. عندما أقوم بإنشاء الملف المحلي الخاص بي ، قمت بتعيين هذه المعلمة file_permission = "0600" . ومع ذلك ، يتم إنشاء الملف مع 755.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات