قائمة وحدة تحكم Python

تحياتي أيها الزملاء. اسمي رستم ، أعمل في شركة صغيرة تعمل في تطوير الويب وترويج مواقع الويب.

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

هذا ليس صعبًا بشكل عام ، ولكن غالبًا ما تنشأ مثل هذه المهام بشكل منتظم للغاية ، وتتطلب التكرار ، وتتحول إلى روتين.

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

قررت التنفيذ في بيثون منذ ذلك الحين خارج الصندوق ، يتم تثبيته على معظم توزيعات Linux ، ولن تحتاج إلى تثبيت حزم إضافية لاستخدامه.

اتضح شيئًا مناسبًا جدًا للاستنساخ باستخدام جيثب .

يتم تخزين جميع الإعدادات (أي العنصر الذي يجب إجراؤه) في ملف menu.yml.
تم تجهيز ملف الإعدادات المقدم كمثال في المستودع بجميع التعليقات الضرورية ، ولكن لجعل كل شيء أكثر وضوحًا ، هناك مثال عملي على github ( https://github.com/hrustbb2/env-example ).

مثال على ذلك هو تطبيق يتكون من ثلاث حاويات أرصفة (php و mysql و nginx) مع تكوينات منفصلة لبيئات التطوير والإنتاج واثنين من البرامج النصية للنشر المنفصلة في هذه البيئات.

لذا ، استنساخ ، تشغيل ./env وانظر قائمة من ثلاثة عناصر:

0. Exit
1. Develop
2. Production
Chose action: _

سنقوم بتوسيع تطبيقنا في وضع التطوير ، لهذا نختار البند 1 ، يفشل في القائمة الفرعية:

0. Exit
1. Build
2. Deploy and Up
3. Up
4. Stop
5. Remove
Chose action: _

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

في هذا المثال ، يقوم البرنامج النصي باستنساخ تطبيق بدء تشغيل Laravel في ./app ، وتثبيت حزم الملحن الضرورية ، وترحيل عمليات الترحيل ، وإنشاء ملف التكوين .env. يتم ذلك مرة واحدة فقط في البداية ، وبعد ذلك تبدأ البيئة عن طريق تحديد العنصر 3. يعمل البند 5 على حذف الحاويات التي تم إنشاؤها بعد أن أصبحت غير ضرورية ، على سبيل المثال ، عند اكتمال العمل في المشروع.

ربما هذا هو كل شيء ، افتح localhost الآن في المتصفح وتابع العمل.

في بعض الأحيان عند الإنتاج ، هناك حاجة لتشغيل بعض الأوامر تلقائيًا على التاج ، على سبيل المثال ، تحديث شهادات SSL والنسخ الاحتياطي وما إلى ذلك. في هذه الحالة ، قم بتشغيل ، على سبيل المثال ./env -e 1-2-3 ، حيث 1-2-3 هو المسار إلى الأمر المطلوب في القائمة.

لقد جلبت أنا وزملائي الكثير من الفوائد ، مما جعل عملهم أسهل قليلاً ، وآمل أن تكون الأداة مفيدة لك.

حظا موفقا للجميع.

All Articles