دليل الترحيل إلى البرامج النصية في سكور-8.1
يساعد هذا الدليل في تحويل المحولات الحالية إلى البرامج النصية الجديدة التي تم تقديمها في SKOOR-8.1
أنواع البرامج النصية
يتم دعم أنواع البرامج النصية التالية (Python، Talend، مخصص/Shell).
معلومات عامة
تنطبق هذه التغييرات/الملاحظات على جميع أنواع البرامج النصية.
يمكن حفظ متغيرات البيئة في ملف
.envالموجود في المجلد الجذر.لم يعد من الضروري تحميل ملف المصدر لبدء المهمة.
إذا تم تمرير ملف إلى البرنامج النصي، فسيتم تمريره كمتغير بيئة
SKOOR_SOURCE_FILE.
لا تزال نصوص Talend تتوقع وجود sourceFile كسمة، لذا لم يتم تغييرها.
# Replace source_file = getArg("sourceFile") with the following
#IN PYTHON
source_file = os.environ.get('SKOOR_SOURCE_FILE')
#IN SHELL
source_file="$SKOOR_SOURCE_FILE"
نصوص Python
بالنسبة لبرامج Python النصية، لم تعد هناك حاجة لتغليف ملف Python الرئيسي
main.pyببرنامج نصي shell باسم<converters_name>_run.sh.يجب أن تكون نقطة الدخول هي
main.pyويفضل أن تكون في المجلد الجذر.يجب تعريف التبعيات المطلوبة في ملف
pyproject.toml
يُستخدم Poetry لإدارة التبعيات.
لإضافة تبعيات جديدة إلى المشروع، قم بتضمين الحزمة المطلوبة باستخدام مواصفات التبعيات المدعومة من Poetry.
لا يتطابق اسم الحزمة المستوردة في برنامج Python النصي دائمًا مع اسم الحزمة المطلوب للتنزيل. على سبيل المثال، لا تعمل إضافة pyscopg2 إلى ملف pyproject.toml لأن اسم الحزمة الصحيح هو psycopg2-binary. استخدم PyPI للعثور على أسماء الحزم الصحيحة.
يمكن استخدام المثال التالي لإنشاء ملف pyproject.toml أولي
[tool.poetry] name = "PROJECT_NAME" version = "0.1.0" description = "" authors = ["SKOOR GmbH <info@skoor.com>"] package-mode = false [tool.poetry.dependencies] python = "^3.9" et-xmlfile= "^2.0.0" greenlet= "^3.1.1" numpy= "^2.0.2" openpyxl= "^3.1.5" pandas= "^2.2.3" psycopg2-binary= "^2.9.10" python-dateutil= "^2.9.0.post0" python-dotenv= "^1.0.1" pytz= "^2024.2" six= "^1.16.0" sqlalchemy= "^2.0.36" typing-extensions= "^4.12.2" tzdata= "^2024.2" requests= "^2.32.3" cachetools= "^5.5.0" jsonschema= "^4.23.0" multicorn= "^0.1.0" [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api"
محولات Talend
لا توجد حاجة لإجراء أي تغييرات في الترحيل على محولات Talend.