كيفية تشغيل مشروع java على عداء shell عند الدفع إلى مستودع GitLab

اسمي إيفان سيدورينكو ، أنا مهندس اختبار في التصميم الرقمي. كانت مهمتي هي تنفيذ عملية إطلاق autotests المكتوبة بلغة Java Selenium.

أنا جديد على CI / CD ، لذلك واجهت الكثير من المشاكل. لم أجد تعليمات مفصلة على الإنترنت لهذه المهمة ، لذلك ، بعد أن اكتشفتها بمساعدة مطورينا ، قررت أن أكتب دليلًا للوافدين الجدد كما فعلت.

لقد وصفت بالتفصيل جميع الخطوات اللازمة من أجل تكوين CI / CD باستخدام GitLab ، على سبيل المثال ، تشغيل برنامج HelloWorld بسيط مكتوب باستخدام Java.



يجب تشغيل الاختبارات التلقائية في كل مرة يدفع فيها المطور التغييرات إلى مستودع GitLab. تتوافق هذه المهمة مع أحد مبادئ CI / CD - إطلاق الاختبارات التلقائية في كل مرحلة من مراحل تطوير المنتج. لن أصف مفهوم CI / CD الكامل في هذا الدليل - من السهل العثور على هذه المعلومات على الإنترنت.

ولكن ما لا يمكن العثور عليه هو كيفية تكوين CI / CD باستخدام GitLab للمبتدئين ، مع وصف لجميع الخطوات اللازمة. هذا سوف يناقش أدناه.

1. تثبيت Git والوصول إلى مستودع GitLab


لقد نشرت كل ما هو ضروري لبدء المشروع على جهاز بعيد ، ولكن لأن الغرض من هذا الدليل هو التعرف على أساسيات نشر CI / CD ، سنعمل على الجهاز المحلي.

انتقل إلى GitLab في صفحة المشاريع ، في النافذة التي تظهر ، انقر فوق زر مشروع جديد


عيّن اسم المشروع ، واضبط القيمة الخاصة في حقل مشروع الرؤية وانقر على زر إنشاء مشروع أخضر.



تهانينا ، تم إنشاء المشروع في GitLab.



نحتاج الآن إلى نشر المستودع المحلي الذي سنقوم من خلاله بدفع التغييرات إلى GitLab. للقيام بذلك ، يجب عليك أولاً تثبيت Git ، أثناء التثبيت ، يمكنك تحديد جميع القيم الافتراضية. إذا لم تكن هناك تجربة مع git وتثبيته ، فنوصيك بالتعرف على هذه الدورة على www.youtube.com .

الآن تحتاج إلى تكوين متغيرات بيئة Git user.name و user.email. نأخذ القيم من صفحة GitLab -> Project / Details (نحصل على هذه الصفحة بمجرد إنشاء المشروع).

git config --global user.name "user name" git config --global user.email "email@examle.com" 

افتح Git Bash ، للقيام بذلك ، انقر فوق أي مكان على سطح المكتب وحدد Git Bash هنا. الآن ندخل هذين الأمرين بالتتابع.

بعد ذلك ، تحتاج إلى إنشاء مستودع محلي ، حيث سنضغط على جميع التغييرات في GitLab. للقيام بذلك ، قم بإنشاء مجلد على الجهاز المحلي ، انتقل إليه ، افتح Git Bash وقم بتنفيذ هذه الأوامر بالتسلسل (وهي متوفرة أيضًا في صفحة GitLab -> Project / Details).

git init
git remote add origin
git init
git remote add origin
هنا تحديد المسار لمشروعك

الآن تمت إضافة مستودعنا البعيد. ولكن قبل البدء في دفع التغييرات إلى مستودع GitLab ، تحتاج إلى تكوين مفاتيح SSH.

2. تكوين مفاتيح SSH


مفاتيح SSH مطلوبة لنقل البيانات بشكل آمن من المستودعات عن بعد إلى مستودع git الرئيسي ، عبر بروتوكول SSH. إنشاء زوج المفاتيح.

افتح Git Bash وأدخل:

 ssh-keygen -o -t rsa -b 4096 -C email@example.com 

بدلاً من email@example.com نستبدل بريدك الإلكتروني.

بعد ذلك ، تلقينا رسالة حيث سيتم تخزين المفاتيح. نحن هنا فقط اضغط Enter. سيتم حفظ المفاتيح في مجلد النموذج:

 C:\Users\User_name\.ssh 

بعد اختيار مجلد ، سيُطلب منا إدخال كلمة مرور للمفاتيح ، يمكنك تخطي هذه الخطوة عن طريق الضغط على مفتاح Enter مرتين.

أنت الآن بحاجة إلى إضافة المفتاح العام إلى حساب GitLab الخاص بك. انتقل إلى المجلد .ssh وافتح ملف معرف id _rsa.pub باستخدام المفكرة. انسخ محتويات الملف وانتقل إلى GitLab. تحتاج هنا إلى الانتقال إلى إعدادات المستخدم (انقر فوق الزر في الجزء العلوي الأيمن وحدد الإعدادات).



انتقل إلى قسم مفاتيح SSH.

أدخل المفتاح العمومي في حقل المفتاح وانقر فوق زر إضافة مفتاح .



أنت الآن بحاجة إلى حفظ المفتاح الخاص على الجهاز البعيد. للقيام بذلك ، قم بتنفيذ الأوامر:

 ssh-agent bash ssh-add ~/.ssh/key 

حيث key هو المفتاح الخاص الذي تم إنشاؤه (ملف يسمى "id_rsa")
ssh-agent هو برنامج لتخزين المفاتيح الخاصة المستخدمة للمصادقة مع المفاتيح العامة (في حالتنا ، هذا هو مفتاح RSA).

أنت الآن جاهز لدفع الملفات في GitLab. تحقق مما إذا كان كل شيء يعمل. انتقل إلى المستودع الذي تمت تهيئته مسبقًا. أضف ملف txt الفارغ إليه. بعد ذلك ، نقوم بتنفيذ هذه الأوامر بالتتابع في Git Bash.

 git add . git commit -m "Initial commit" git push -u origin master 

انتقل إلى GitLab في صفحة المشروع / التفاصيل وتحقق من أن كل شيء يسير على ما يرام.



3. إنشاء عداء GitLab (Shell)


لبدء المشروعات عند الضغط على gitlab ، نحتاج إلى نشر عداء. GitLab Runner هو وكيل لتشغيل الإرشادات من ملف .gitlab-ci.yml خاص. هناك عدة أنواع من المتسابقين. النظر في تثبيت وإطلاق واحدة من أبسط - عداء قذيفة.

يتيح لك تطبيق Shell-runner تشغيل المشروعات على الجهاز حيث تم تثبيت هذا الجهاز. النظر في تثبيت هذا عداء على الجهاز المحلي لدينا:

1. قم بإنشاء مجلد للعداء ، على سبيل المثال C: \ GitLab-Runner

2. قم بتنزيل العداء من الرابط:
https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-windows-386.exe
تسميته إلى gitlab-runner.exe.

3. قم بتشغيل PowerShell كمسؤول.

4. انتقل إلى مجلد لدينا:

 cd C:\GitLab-Runner 

5. أدخل الرابط إلى GitLab. في GitLab ، انتقل إلى الإعدادات-> CI / CD-> العدائين.



6. أدخل الرمز المميز:



7. أدخل وصفا للعداء.

8. أدخل علامات العداء.

9. اختيار نوع عداء - قذيفة.

10. تثبيت العداء:

 gitlab-runner install 

11. وتشغيل:

 gitlab-runner start 

للتحقق من بدء تشغيل العداء ، انتقل إلى GitLab -> الإعدادات -> CI / CD -> Runners. الدائرة الخضراء تعني أن العداء قيد التشغيل.



4. تحديد متغير البيئة


لتشغيل برنامج جافا الخاص بنا ، نحتاج إلى:

1. تثبيت جافا:
https://java.com/ru/download/

2. تثبيت jdk: https://www.oracle.com/technetwork/java/javase/downloads/index.html

3. تعيين متغيرات البيئة.

لتكوين متغيرات البيئة ، انتقل إلى:
جهاز الكمبيوتر الخاص بي -> خصائص -> إعدادات بيئة متقدمة -> متغيرات البيئة
هنا ، في قسم "متغيرات النظام" ، قم بإنشاء متغير JAVA_HOME ، في السطر "قيمة المتغير" ، اكتب المسار إلى jdk.



أضف هذه القيمة إلى متغير المسار. تحتاج أيضًا إلى التحقق من وجود مسار لجافا.



5. إنشاء المشروع وإطلاقه


لنقم بإنشاء مشروع جافا بسيط سينتج عنه "Hello World!" في وحدة التحكم. ضعه في مستودعنا المحلي. سيبدو شيء مثل هذا:



أنا هنا أنشأت ملف .gitlab-ci بملحق yml.

المحتوى .gitlab-ci.yml
 image: java:latest stages: - build - execute build: stage: build script: - cd C:\GitAuto\src - javac Main.java artifacts: tags: - first-runner execute: stage: execute script: - cd C:\GitAuto\src - java Main artifacts: tags: - first-runner 


هناك مرحلتان - بناء وتنفيذ. باستخدام الأمر javac ، نقوم بتجميع الكود المصدري ، وباستخدام الأمر java ، نقوم بتشغيله. في كل خطوة ، يجب أن نوضح بوضوح أي عداء سنستخدمه. سيتم تحديد العداء حسب قيمة علامته (يمكنك رؤيته في إعدادات العداء في GitLab).

بعد تعيين محتويات الملف ، انتقل إلى المستودع المحلي وافتح Git Bash. نبدأ في تنفيذ الأوامر بالتتابع:

 git add . git commit -m "Initial commit" git push -u origin master 

بدأت التغييرات ، الآن سوف نتحقق من أن برنامجنا قد اكتمل بنجاح. انتقل إلى GitLab -> CI / CD -> Jobs ، افتح الوظيفة الأخيرة:



البرنامج كامل ، أنت عظيم!

Source: https://habr.com/ru/post/ar464403/


All Articles