"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > samwise-CLI: أداة تعقب التبعية لوحدة Terraform مفتوحة المصدر

samwise-CLI: أداة تعقب التبعية لوحدة Terraform مفتوحة المصدر

تم النشر بتاريخ 2024-11-07
تصفح:327

Terraform

Terraform هي أداة للبنية التحتية كرمز (IaC) مكتوبة بلغة تكوين Hashicorp (HCL). تفترض هذه المقالة أن القارئ قد عمل مع Terraform وفهم كيفية عمل الوحدات.

كل شخص يقوم بالبرمجة في Terraform إما قام بإنشاء وحدات خاصة به، أو على الأقل استخدم وحدات شخص آخر.

وحدات Terraform

الوحدات عبارة عن حاويات لموارد متعددة يتم استخدامها معًا. تتكون الوحدة من مجموعة من ملفات .tf و/أو .tf.json محفوظة معًا في دليل.

الوحدات هي الطريقة الرئيسية لحزم وإعادة استخدام تكوينات الموارد مع Terraform.

يمكن نشر الوحدات في سجلات مثل تسجيل Terraform أو GitLab. يمكن أيضًا تقديم الوحدات من مستودعات Git من خلال توفير عناوين URL لـ HTTPS أو SSH. يمكن إصدار هذه أيضًا. على سبيل المثال،

module "consul" {
  source = "github.com/hashicorp/example"
}

الإصدار:

module "consul" {
  source = "github.com/hashicorp/example?ref=1.2.6"
}

تحدي

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

حل

تقديم samwise-cli، وهي أداة للمساعدة في تتبع تبعيات Terraform/OpenTofu الخاصة بمستودعك. يبحث في مستودعك عن استخدامات الوحدات وينشئ تقريرًا عن الوحدات التي تحتوي على تحديثات متاحة بالإضافة إلى جميع الإصدارات الأكثر تقدمًا من الإصدار المستخدم حاليًا.

samwise-CLI: The Open Source Terraform module dependency tracker

في الوقت الحالي، يوجد أمر واحد فقط، ولكن نأمل أن يكون هناك المزيد قريبًا مع تطوير الأداة.

الريبو العشوائي في الوقت الحاضر

samwise-CLI: The Open Source Terraform module dependency tracker دارث تك / samwise-cli

تطبيق CLI لمرافقتك في رحلة وحدة terraform الخاصة بك ومشاركة عبء تحديثات تبعية الوحدة، تمامًا كما ساعد أحد الهوبيت الشجعان Frodo في حمله :)

ساموايز

تطبيق CLI لمرافقتك في رحلة وحدة terraform الخاصة بك ومشاركة عبء تحديثات تبعية الوحدة، تمامًا كما ساعد أحد الهوبيت الشجعان Frodo في حمل مهمته :)

samwise-CLI: The Open Source Terraform module dependency tracker

%,( "' /%% / Cccc' (cause I couldn't find good enough Samwise Gamgee ASCII art) Frodo by Shanaka Dias">
                       \ : /
                    '-: __ :-'
                    -:  )(_ :--
                    -' |r-_i'-
            ,sSSSSs,   (2-,7
            sS';:'`Ss   )-j
           ;K e (e s7  /  (
            S, ''  SJ (  ;/
            sL_~~_;(S_)  _7
|,          'J)_.-' />'-' `Z
j J         /-;-A'-'|'--'-j\
 L L        )  |/   :    /  \
  \ \       | | |    '._.'|  L
   \ \      | | |       | \  J
    \ \    _/ | |       |  ',|
     \ L.,' | | |       |   |/
    _;-r-<_. __. _ l- l>…
عرض على جيثب

checkForUpdates

samwise-CLI: The Open Source Terraform module dependency tracker

لكي يتم تشغيل هذا حيث تستخدم الوحدات مستودعات GitHub الخاصة، يجب تمرير ملف التكوين .samwise.yaml كوسيطة أو يجب أن يكون موجودًا في الدليل الرئيسي للمستخدم.

.samwise.yaml التنسيق:

github_key:
github_username:

حاليًا يتم دعم مصادقة GitHub HTTPS فقط ولكن سيتم دعم مصادقة SSH قريبًا.

نتيجة

تنسيق CSV
samwise-CLI: The Open Source Terraform module dependency tracker

تنسيق JSON
samwise-CLI: The Open Source Terraform module dependency tracker

القيود (أو وصفها بشكل أفضل على أنها ميزات يجب إضافتها)

  • مصادقة SSH لاسترداد مصادر الوحدة
  • وحدة تتبع تسجيل Hashicorp (لديهم واجهة برمجة تطبيقات لسرد الإصدارات هنا

السياق للاسم

أنا أحب سيد الخواتم :)

بيان الافراج تم إعادة إنتاج هذه المقالة على: https://dev.to/thundersparkf/samwise-cli-the-open-source-terraform-module-dependency-tracker-3b1e?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3