TaskAddParameter الفصل
مهمة Azure Batch لإضافتها.
ستقوم الدفعة بإعادة محاولة المهام عند تشغيل عملية استرداد على عقدة. تتضمن أمثلة عمليات الاسترداد (على سبيل المثال لا الحصر) عند إعادة تشغيل عقدة غير صحية أو اختفاء عقدة حساب بسبب فشل المضيف. عمليات إعادة المحاولة بسبب عمليات الاسترداد مستقلة عن و لا يتم حسابها مقابل maxTaskRetryCount. حتى إذا كان maxTaskRetryCount هو 0، فقد تحدث إعادة محاولة داخلية بسبب عملية استرداد. لهذا السبب، يجب أن تكون جميع المهام غير فعالة. وهذا يعني أن المهام تحتاج إلى تحمل المقاطعة وإعادة التشغيل دون التسبب في أي تلف أو تكرار البيانات. أفضل ممارسة للمهام طويلة الأمد هي استخدام شكل من أشكال نقاط التحقق.
يجب ملء جميع المعلمات المطلوبة لإرسالها إلى Azure.
- توريث
-
TaskAddParameter
الدالمنشئ
TaskAddParameter(*, id: str, command_line: str, display_name: str = None, container_settings=None, exit_conditions=None, resource_files=None, output_files=None, environment_settings=None, affinity_info=None, constraints=None, required_slots: int = None, user_identity=None, multi_instance_settings=None, depends_on=None, application_package_references=None, authentication_token_settings=None, **kwargs)
المعلمات
- id
- str
مطلوب يمكن أن يحتوي المعرف على أي مجموعة من الأحرف الأبجدية الرقمية بما في ذلك الواصلات والتسطير السفلي، ولا يمكن أن يحتوي على أكثر من 64 حرفا. المعرف هو الحفاظ على حالة الأحرف وغير حساس لحالة الأحرف (أي، قد لا يكون لديك معرفان داخل الوظيفة يختلفان فقط حسب الحالة).
- display_name
- str
لا يجب أن يكون اسم العرض فريدا ويمكن أن يحتوي على أي أحرف Unicode يصل طولها إلى 1024 كحد أقصى.
- command_line
- str
مطلوب بالنسبة للمهام متعددة المثيلات، يتم تنفيذ سطر الأوامر كمهمة أساسية، بعد انتهاء المهمة الأساسية وجميع المهام الفرعية من تنفيذ سطر أوامر التنسيق. لا يعمل سطر الأوامر ضمن shell، وبالتالي لا يمكنه الاستفادة من ميزات shell مثل توسيع متغير البيئة. إذا كنت ترغب في الاستفادة من هذه الميزات، يجب استدعاء shell في سطر الأوامر، على سبيل المثال باستخدام "cmd /c MyCommand" في Windows أو "/bin/sh -c MyCommand" في Linux. إذا كان سطر الأوامر يشير إلى مسارات الملفات، فيجب أن يستخدم مسارا نسبيا (بالنسبة إلى دليل عمل المهمة)، أو استخدام متغير البيئة المقدم من Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).
- container_settings
- TaskContainerSettings
إعدادات الحاوية التي يتم تشغيل المهمة بموجبها. إذا كان التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة containerConfiguration، فيجب تعيين هذا أيضا. إذا لم يكن التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة تكوين الحاوية، فيجب عدم تعيين هذا. عند تحديد ذلك، يتم تعيين جميع الدلائل بشكل متكرر أسفل AZ_BATCH_NODE_ROOT_DIR (جذر دلائل Azure Batch على العقدة) في الحاوية، ويتم تعيين جميع متغيرات بيئة المهمة في الحاوية، ويتم تنفيذ سطر أوامر المهمة في الحاوية. قد لا تنعكس الملفات المنتجة في الحاوية خارج AZ_BATCH_NODE_ROOT_DIR على القرص المضيف، ما يعني أن واجهات برمجة تطبيقات ملف Batch لن تتمكن من الوصول إلى هذه الملفات.
- resource_files
- list[ResourceFile]
بالنسبة للمهام متعددة المثيلات، سيتم تنزيل ملفات الموارد فقط إلى عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها. يوجد حد أقصى لحجم قائمة ملفات الموارد. عند تجاوز الحد الأقصى للحجم، سيفشل الطلب وسيكون رمز خطأ الاستجابة RequestEntityTooLarge. إذا حدث ذلك، يجب تقليل حجم مجموعة ResourceFiles. يمكن تحقيق ذلك باستخدام ملفات .zip أو حزم التطبيقات أو حاويات Docker.
- output_files
- list[OutputFile]
بالنسبة للمهام متعددة المثيلات، سيتم تحميل الملفات فقط من عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها.
- environment_settings
- list[EnvironmentSetting]
- affinity_info
- AffinityInformation
تلميح محلي يمكن استخدامه بواسطة خدمة Batch لتحديد عقدة حساب لبدء المهمة الجديدة عليها.
- constraints
- TaskConstraints
قيود التنفيذ التي تنطبق على هذه المهمة. إذا لم تحدد القيود، فإن maxTaskRetryCount هو maxTaskRetryCount المحدد للوظيفة، وmaxWallClockTime لا نهائي، ووقت الاستبقاء هو 7 أيام.
- required_slots
- int
عدد فتحات الجدولة التي تتطلب المهمة تشغيلها. الإعداد الافتراضي هو 1. يمكن جدولة المهمة فقط للتشغيل على عقدة حساب إذا كانت العقدة تحتوي على فتحات جدولة مجانية كافية متوفرة. بالنسبة للمهام متعددة المثيلات، يجب أن يكون هذا 1.
- user_identity
- UserIdentity
هوية المستخدم التي يتم تشغيل المهمة بموجبها. إذا تم حذفها، يتم تشغيل المهمة كمستخدم غير إداري فريد للمهمة.
- multi_instance_settings
- MultiInstanceSettings
عنصر يشير إلى أن المهمة مهمة متعددة المثيلات، ويحتوي على معلومات حول كيفية تشغيل المهمة متعددة المثيلات.
- depends_on
- TaskDependencies
المهام التي تعتمد عليها هذه المهمة. لن تتم جدولة هذه المهمة حتى تكتمل جميع المهام التي تعتمد عليها بنجاح. إذا فشلت أي من هذه المهام واستنفدت عدد مرات إعادة المحاولة الخاصة بها، فلن تتم جدولة هذه المهمة أبدا. إذا لم تكن الوظيفة تحتوي على usesTaskDependencies معينة إلى true، وكان هذا العنصر موجودا، يفشل الطلب مع رمز الخطأ TaskDependenciesNotSpecifiedOnJob.
- application_package_references
- list[ApplicationPackageReference]
يتم تنزيل حزم التطبيقات وتوزيعها في دليل مشترك، وليس دليل عمل المهمة. لذلك، إذا كانت الحزمة المشار إليها موجودة بالفعل على العقدة، وكانت محدثة، فلن تتم إعادة تنزيلها؛ يتم استخدام النسخة الموجودة على عقدة الحساب. إذا تعذر تثبيت حزمة مرجعية، على سبيل المثال بسبب حذف الحزمة أو بسبب فشل التنزيل، تفشل المهمة.
- authentication_token_settings
- AuthenticationTokenSettings
إعدادات رمز المصادقة المميز الذي يمكن للمهمة استخدامه لتنفيذ عمليات خدمة Batch. إذا تم تعيين هذه الخاصية، توفر خدمة Batch للمهمة رمزا مميزا للمصادقة يمكن استخدامه لمصادقة عمليات خدمة Batch دون الحاجة إلى مفتاح وصول إلى الحساب. يتم توفير الرمز المميز عبر متغير البيئة AZ_BATCH_AUTHENTICATION_TOKEN. تعتمد العمليات التي يمكن للمهمة تنفيذها باستخدام الرمز المميز على الإعدادات. على سبيل المثال، يمكن للمهمة طلب أذونات الوظيفة لإضافة مهام أخرى إلى المهمة، أو التحقق من حالة الوظيفة أو المهام الأخرى ضمن المهمة.
الأساليب
as_dict |
إرجاع إملاء يمكن أن يكون JSONify باستخدام json.dump. قد يستخدم الاستخدام المتقدم رد اتصال كمعلمة اختياريا: المفتاح هو اسم السمة المستخدم في Python. Attr_desc هو إملاء لبيانات التعريف. يحتوي حاليا على "type" بنوع msrest و"key" مع المفتاح المشفرة RestAPI. القيمة هي القيمة الحالية في هذا الكائن. سيتم استخدام السلسلة التي تم إرجاعها لتسلسل المفتاح. إذا كان نوع الإرجاع عبارة عن قائمة، يعتبر ذلك إملاءا للنتيجة الهرمية. راجع الأمثلة الثلاثة في هذا الملف:
إذا كنت تريد تسلسل XML، يمكنك تمرير kwargs is_xml=True. |
deserialize |
تحليل سلسلة باستخدام بناء جملة RestAPI وإرجاع نموذج. |
enable_additional_properties_sending | |
from_dict |
تحليل إملاء باستخدام مستخرج مفتاح معين يرجع نموذجا. بشكل افتراضي، ضع في اعتبارك مستخرجات المفاتيح (rest_key_case_insensitive_extractor attribute_key_case_insensitive_extractor last_rest_key_case_insensitive_extractor) |
is_xml_model | |
serialize |
إرجاع JSON الذي سيتم إرساله إلى azure من هذا النموذج. هذا اسم مستعار as_dict (full_restapi_key_transformer، keep_readonly=خطأ). إذا كنت تريد تسلسل XML، يمكنك تمرير kwargs is_xml=True. |
validate |
تحقق من صحة هذا النموذج بشكل متكرر وأعد قائمة ValidationError. |
as_dict
إرجاع إملاء يمكن أن يكون JSONify باستخدام json.dump.
قد يستخدم الاستخدام المتقدم رد اتصال كمعلمة اختياريا:
المفتاح هو اسم السمة المستخدم في Python. Attr_desc هو إملاء لبيانات التعريف. يحتوي حاليا على "type" بنوع msrest و"key" مع المفتاح المشفرة RestAPI. القيمة هي القيمة الحالية في هذا الكائن.
سيتم استخدام السلسلة التي تم إرجاعها لتسلسل المفتاح. إذا كان نوع الإرجاع عبارة عن قائمة، يعتبر ذلك إملاءا للنتيجة الهرمية.
راجع الأمثلة الثلاثة في هذا الملف:
attribute_transformer
full_restapi_key_transformer
last_restapi_key_transformer
إذا كنت تريد تسلسل XML، يمكنك تمرير kwargs is_xml=True.
as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)
المعلمات
- key_transformer
- <xref:function>
دالة محول مفاتيح.
- keep_readonly
المرتجعات
كائن متوافق مع JSON لل dict
نوع الإرجاع
deserialize
تحليل سلسلة باستخدام بناء جملة RestAPI وإرجاع نموذج.
deserialize(data, content_type=None)
المعلمات
المرتجعات
مثيل لهذا النموذج
استثناءات
enable_additional_properties_sending
enable_additional_properties_sending()
from_dict
تحليل إملاء باستخدام مستخرج مفتاح معين يرجع نموذجا.
بشكل افتراضي، ضع في اعتبارك مستخرجات المفاتيح (rest_key_case_insensitive_extractor attribute_key_case_insensitive_extractor last_rest_key_case_insensitive_extractor)
from_dict(data, key_extractors=None, content_type=None)
المعلمات
- key_extractors
المرتجعات
مثيل لهذا النموذج
استثناءات
is_xml_model
is_xml_model()
serialize
إرجاع JSON الذي سيتم إرساله إلى azure من هذا النموذج.
هذا اسم مستعار as_dict (full_restapi_key_transformer، keep_readonly=خطأ).
إذا كنت تريد تسلسل XML، يمكنك تمرير kwargs is_xml=True.
serialize(keep_readonly=False, **kwargs)
المعلمات
المرتجعات
كائن متوافق مع JSON لل dict
نوع الإرجاع
validate
تحقق من صحة هذا النموذج بشكل متكرر وأعد قائمة ValidationError.
validate()
المرتجعات
قائمة بخطأ التحقق من الصحة
نوع الإرجاع
Azure SDK for Python