Packer: وظيفة git-hash لتسمية الملف الناتج

تم إنشاؤها على ١ ديسمبر ٢٠١٤  ·  3تعليقات  ·  مصدر: hashicorp/packer

أقوم حاليًا بتخصيص معالج post_processor الخاص بي مثل هذا:

"output": "boxes/rhel-server-6.5-x64-{{.Provider}}-{{.BuildName}}_{{timestamp}}.box"

سيكون من الجيد أن يكون لديك {{git_hash}} بدلاً من الطابع الزمني. إذا كانت هناك طريقة أخرى للقيام بذلك ، بخلاف استدعاء الوظيفة في Packer ، فأعتقد أنني لست على دراية كافية بكيفية القيام بذلك.

أرى أين يمكن القيام بذلك: packer / config_template.go.

اعتقدت أن معظم الناس سيجدون هذا مفيدًا.

على سبيل المثال: إذا أردنا معرفة التكوين الكامل لمكدس الدمى الخاص بنا ، فيجب أن نعرف أيضًا مربع التعبئة الذي تم بناء كل عقدة عليه ، والطابع الزمني لا يمنحنا ذلك. إنه لأمر جيد أن يكون لديك للتدقيق أو حتى أكثر استراتيجيات التعافي من الكوارث سيئة.

أفكار؟ البدائل؟

_تعديل_:

هناك أيضًا حالة استخدام أداة التجميع ضد شجرة بوابة قذرة ، حيث لن تكون التجزئة الناتجة دقيقة. ربما تريد أن تعيد تجزئة git "dirty_tree" في هذه الحالة ..

waiting-reply

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

جلالة الملك. أعتقد أن إضافة وظائف خاصة بـ git أمر صعب ، لأنه يفتح الباب أمام SCMs الأخرى التي قد لا نمتلك نفس المستوى من الخبرة بشأنها. هل هناك سبب يمنعك من استخدام user-var لهذا مثل:

packer -var "git_sha=`git rev-parse HEAD`"

ثم قم بتعريف المتغير:

{
  "variables": {
    "git_sha": "none"
  }
}

يقدم {{git_hash}} بعض الافتراضات ، أهمها - لقد قمت بتثبيت Git. لا أعتقد أن جميع مستخدمينا يستخدمون Git ، لذا قد يكون من الصعب العثور على UX الصحيح عندما لا يكون git مثبتًا (هل نخطئ ، نستبدل بسلسلة فارغة ، إلخ).

ال 3 كومينتر

جلالة الملك. أعتقد أن إضافة وظائف خاصة بـ git أمر صعب ، لأنه يفتح الباب أمام SCMs الأخرى التي قد لا نمتلك نفس المستوى من الخبرة بشأنها. هل هناك سبب يمنعك من استخدام user-var لهذا مثل:

packer -var "git_sha=`git rev-parse HEAD`"

ثم قم بتعريف المتغير:

{
  "variables": {
    "git_sha": "none"
  }
}

يقدم {{git_hash}} بعض الافتراضات ، أهمها - لقد قمت بتثبيت Git. لا أعتقد أن جميع مستخدمينا يستخدمون Git ، لذا قد يكون من الصعب العثور على UX الصحيح عندما لا يكون git مثبتًا (هل نخطئ ، نستبدل بسلسلة فارغة ، إلخ).

متفق عليه مع sethvargo

نصيحة صغيرة أخرى للأشخاص الذين يقرؤون هذا: قد ترغب في استخدام الوسيطة --short لتحليل rev:

packer -var "git_sha=`git rev-parse --short HEAD`"

للحصول على قيمة مثل 21feafa بدلاً من 21feafa9a86a45b3008d133f0803d2ac2087c63f .

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