جوابدہ میں GitHub ایکشن

Jwabd My Github Aykshn



Ansible ایک مقبول، مفت، اور اوپن سورس آٹومیشن ٹول ہے جو ہمیں DevOps کے کاموں کو خودکار کرنے کی اجازت دیتا ہے جیسے کہ کنفیگریشن مینجمنٹ، ایپ کی تعیناتی وغیرہ۔

GitHub ایکشنز کے ساتھ Ansible کا امتزاج ہمیں Ansible playbooks کے عمل کو خودکار کرنے کی اجازت دیتا ہے جب بھی کسی ریپوزٹری میں کوئی خاص واقعہ پیش آتا ہے، جیسے کہ مین برانچ کی طرف دھکیلنا۔







یہ ٹیوٹوریل آپ کو سکھاتا ہے کہ جوابی پلے بک چلانے کے لیے GitHub ایکشن کیسے ترتیب دیا جائے جو کوڈ کی تبدیلیوں کے جواب میں تعیناتی کو خودکار کرنے کے لیے مفید ہے۔



شرائط:

آگے بڑھنے سے پہلے، یقینی بنائیں کہ آپ کے پاس درج ذیل ہیں:



  • ایک GitHub اکاؤنٹ
  • ایک موجودہ GitHub ذخیرہ
  • جوابدہ پلے بکس کا بنیادی علم
  • ایک ٹارگٹ مشین جہاں جواب دینے والا کام چلا سکتا ہے۔ یقینی بنائیں کہ Ansible ان مشینوں سے GitHub رنر سے رابطہ کر سکتا ہے۔

مرحلہ 1: جوابدہ ماحول کو ترتیب دیں۔

GitHub ریپوزٹری میں جوابدہ پلے بک اور تمام متعلقہ فائلیں بنائیں اور اسٹور کریں۔ اس میں فائلیں شامل ہونی چاہئیں جیسے رول ٹیمپلیٹس، متغیرات وغیرہ۔





ایک مثال پلے بک مندرجہ ذیل ہے:

---
- نام: یقینی بنائیں کہ Nginx ویب سرورز پر انسٹال ہے۔
میزبان: ویب سرور
بن: ہاں
کام:
- نام: آپٹ کیشے کو اپ ڈیٹ کریں۔
مناسب:
update_cache: ہاں

- نام: Nginx انسٹال کریں۔
مناسب:
نام: nginx
حالت: موجود

اس بات کو یقینی بنائیں کہ آپ کے پاس انوینٹری فائل ہے جس میں جواب دینے والی ٹارگٹ مشینوں کی وضاحت کی گئی ہے۔



مرحلہ 2: گٹ ہب ریپوزٹری میں راز سیٹ اپ کریں۔

یہ دیکھتے ہوئے کہ پلے بک کو حساس معلومات کی ضرورت ہے جیسے SSH کیز یا پاس ورڈ، GitHub راز کو محفوظ طریقے سے ذخیرہ کرنے کا ایک طریقہ فراہم کرتا ہے:

اپنے GitHub ذخیرے پر جائیں۔

ترتیبات > راز اور متغیرات -> ایکشنز -> نیا ذخیرہ راز پر جائیں۔

مرحلہ 3: GitHub ایکشن ورک فلو بنائیں

ریپوزٹری میں، '.github/workflows' ڈائرکٹری بنائیں۔ اس ڈائرکٹری کے اندر، اپنے ورک فلو کے لیے ایک YAML فائل بنائیں۔

مندرجہ ذیل کام کے فلو کو شامل کریں:

نام: Ansible Playbook چلائیں۔
پر:
دھکا:
شاخیں:
--.ماسٹر n
نوکریاں:
تعینات کریں:
رنز آن: اوبنٹو تازہ ترین
اقدامات:
- نام: چیک آؤٹ کوڈ
استعمال کرتا ہے: actions/checkout@v2
- نام: SSH کلید ترتیب دینا
چلائیں: |
echo '${{ secrets.SSH_PRIVATE_KEY }}' > private_key.pem
chmod 600 private_key.pem
- نام: Ansible Playbook چلائیں۔
چلائیں: |
sudo apt اپ ڈیٹ
sudo apt install -y ansible
ansible-playbook -i hosts.ini my-playbook.yml --private-key=private_key.pem --user=${{ secrets.REMOTE_USER }}

مرحلہ 4: ورک فلو کو متحرک کریں۔

جب بھی آپ ماسٹر برانچ کی طرف دھکیلیں گے، GitHub خود بخود اس ورک فلو کو چلائے گا اور اس طرح پلے بک کو انجام دے گا۔

نتیجہ

اس کے لیے یہی ہے۔ ہم نے گیتھب ایکشنز کا استعمال کرتے ہوئے جوابی پلے بک چلانے کے طریقے کا احاطہ کیا۔