TaskAddParameter interface
ستقوم الدفعة بإعادة محاولة المهام عند تشغيل عملية استرداد على عقدة. تتضمن أمثلة عمليات الاسترداد (على سبيل المثال لا الحصر) عند إعادة تشغيل عقدة غير صحية أو اختفاء عقدة حساب بسبب فشل المضيف. عمليات إعادة المحاولة بسبب عمليات الاسترداد مستقلة عن ولا يتم حسابها مقابل maxTaskRetryCount. حتى إذا كان maxTaskRetryCount هو 0، فقد تحدث إعادة محاولة داخلية بسبب عملية استرداد. ولهذا السبب، يجب أن تكون كافة المهام غير فعالة. وهذا يعني أن المهام تحتاج إلى التسامح مع المقاطعة وإعادة التشغيل دون التسبب في أي تلف أو بيانات مكررة. أفضل ممارسة للمهام طويلة الأمد هي استخدام شكل من أشكال نقاط التفتيش.
الخصائص
| affinity |
تلميح محلي يمكن استخدامه بواسطة خدمة Batch لتحديد عقدة حساب لبدء المهمة الجديدة. |
| application |
قائمة بالحزم التي ستنشرها خدمة Batch إلى عقدة الحساب قبل تشغيل سطر الأوامر. يتم تنزيل حزم التطبيقات ونشرها في دليل مشترك، وليس دليل عمل المهمة. لذلك، إذا كانت الحزمة المشار إليها موجودة بالفعل على العقدة، وكانت محدثة، فلن تتم إعادة تنزيلها؛ يتم استخدام النسخة الموجودة على عقدة الحساب. إذا تعذر تثبيت حزمة مرجعية، على سبيل المثال بسبب حذف الحزمة أو فشل التنزيل، تفشل المهمة. |
| authentication |
إعدادات الرمز المميز للمصادقة التي يمكن للمهمة استخدامها لتنفيذ عمليات خدمة الدفعات. إذا تم تعيين هذه الخاصية، توفر خدمة Batch للمهمة رمزا مميزا للمصادقة يمكن استخدامه لمصادقة عمليات خدمة Batch دون الحاجة إلى مفتاح الوصول إلى الحساب. يتم توفير الرمز المميز عبر متغير البيئة AZ_BATCH_AUTHENTICATION_TOKEN. تعتمد العمليات التي يمكن للمهمة تنفيذها باستخدام الرمز المميز على الإعدادات. على سبيل المثال، يمكن لمهمة طلب أذونات الوظيفة لإضافة مهام أخرى إلى المهمة، أو التحقق من حالة الوظيفة أو المهام الأخرى ضمن المهمة. |
| command |
سطر الأوامر للمهمة. بالنسبة للمهام متعددة المثيلات، يتم تنفيذ سطر الأوامر كمهمة أساسية، بعد انتهاء المهمة الأساسية وجميع المهام الفرعية من تنفيذ سطر أوامر التنسيق. لا يعمل سطر الأوامر تحت 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). |
| constraints | قيود التنفيذ التي تنطبق على هذه المهمة. إذا لم تحدد القيود، فإن maxTaskRetryCount هو maxTaskRetryCount المحدد للوظيفة، وmaxWallClockTime لانهائي، ووقت الاستبقاء هو 7 أيام. |
| container |
إعدادات الحاوية التي يتم تشغيل المهمة ضمنها. إذا كان التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة تكوين الحاوية، يجب تعيين هذا أيضا. إذا لم يكن التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة تكوين الحاوية، يجب عدم تعيين هذا. عند تحديد ذلك، يتم تعيين جميع الدلائل بشكل متكرر أسفل AZ_BATCH_NODE_ROOT_DIR (جذر دلائل Azure Batch على العقدة) في الحاوية، ويتم تعيين كافة متغيرات بيئة المهمة في الحاوية، ويتم تنفيذ سطر أوامر المهمة في الحاوية. قد لا تنعكس الملفات التي يتم إنتاجها في الحاوية خارج AZ_BATCH_NODE_ROOT_DIR على القرص المضيف، ما يعني أن واجهات برمجة تطبيقات ملف Batch لن تتمكن من الوصول إلى هذه الملفات. |
| depends |
المهام التي تعتمد عليها هذه المهمة. لن تتم جدولة هذه المهمة حتى تكتمل كافة المهام التي تعتمد عليها بنجاح. إذا فشلت أي من هذه المهام واستنفاد عدد مرات إعادة المحاولة الخاصة بها، فلن تتم جدولة هذه المهمة أبدا. إذا لم يكن للوظيفة استخدامات تم تعيينها إلى true، وكان هذا العنصر موجودا، يفشل الطلب مع رمز الخطأ TaskDependenciesNotSpecifiedOnJob. |
| display |
اسم عرض للمهمة. لا يجب أن يكون اسم العرض فريدا ويمكن أن يحتوي على أي أحرف Unicode يصل طولها إلى 1024 كحد أقصى. |
| environment |
قائمة بإعدادات متغير البيئة للمهمة. |
| exit |
كيف يجب أن تستجيب خدمة Batch عند اكتمال المهمة. |
| id | سلسلة تعرف المهمة بشكل فريد داخل المهمة. يمكن أن يحتوي المعرف على أي تركيبة من الأحرف الأبجدية الرقمية بما في ذلك الواصلات والتسطير السفلي، ولا يمكن أن يحتوي على أكثر من 64 حرفا. المعرف هو الحفاظ على حالة الأحرف وغير حساس لحالة الأحرف (أي، قد لا يكون لديك معرفان داخل الوظيفة يختلفان فقط حسب الحالة). |
| multi |
كائن يشير إلى أن المهمة مهمة متعددة المثيلات، ويحتوي على معلومات حول كيفية تشغيل المهمة متعددة المثيلات. |
| output |
قائمة بالملفات التي ستقوم خدمة Batch بتحميلها من عقدة الحساب بعد تشغيل سطر الأوامر. بالنسبة للمهام متعددة المثيلات، سيتم تحميل الملفات فقط من عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها. |
| required |
عدد فتحات الجدولة التي تتطلب المهمة تشغيلها. الإعداد الافتراضي هو 1. يمكن جدولة المهمة فقط للتشغيل على عقدة حساب إذا كانت العقدة تحتوي على فتحات جدولة مجانية كافية متوفرة. بالنسبة للمهام متعددة المثيلات، يجب أن يكون هذا 1. |
| resource |
قائمة بالملفات التي ستقوم خدمة Batch بتنزيلها إلى عقدة الحساب قبل تشغيل سطر الأوامر. بالنسبة للمهام متعددة المثيلات، سيتم تنزيل ملفات الموارد فقط إلى عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها. يوجد حد أقصى لحجم قائمة ملفات الموارد. عند تجاوز الحد الأقصى للحجم، سيفشل الطلب وسيكون رمز خطأ الاستجابة RequestEntityTooLarge. إذا حدث ذلك، يجب تصغير حجم مجموعة ResourceFiles. يمكن تحقيق ذلك باستخدام ملفات .zip أو حزم التطبيقات أو حاويات Docker. |
| user |
هوية المستخدم التي يتم تشغيل المهمة بموجبها. إذا تم حذفها، يتم تشغيل المهمة كمستخدم غير إداري فريد للمهمة. |
تفاصيل الخاصية
affinityInfo
تلميح محلي يمكن استخدامه بواسطة خدمة Batch لتحديد عقدة حساب لبدء المهمة الجديدة.
affinityInfo?: AffinityInformation
قيمة الخاصية
applicationPackageReferences
قائمة بالحزم التي ستنشرها خدمة Batch إلى عقدة الحساب قبل تشغيل سطر الأوامر. يتم تنزيل حزم التطبيقات ونشرها في دليل مشترك، وليس دليل عمل المهمة. لذلك، إذا كانت الحزمة المشار إليها موجودة بالفعل على العقدة، وكانت محدثة، فلن تتم إعادة تنزيلها؛ يتم استخدام النسخة الموجودة على عقدة الحساب. إذا تعذر تثبيت حزمة مرجعية، على سبيل المثال بسبب حذف الحزمة أو فشل التنزيل، تفشل المهمة.
applicationPackageReferences?: ApplicationPackageReference[]
قيمة الخاصية
authenticationTokenSettings
إعدادات الرمز المميز للمصادقة التي يمكن للمهمة استخدامها لتنفيذ عمليات خدمة الدفعات. إذا تم تعيين هذه الخاصية، توفر خدمة Batch للمهمة رمزا مميزا للمصادقة يمكن استخدامه لمصادقة عمليات خدمة Batch دون الحاجة إلى مفتاح الوصول إلى الحساب. يتم توفير الرمز المميز عبر متغير البيئة AZ_BATCH_AUTHENTICATION_TOKEN. تعتمد العمليات التي يمكن للمهمة تنفيذها باستخدام الرمز المميز على الإعدادات. على سبيل المثال، يمكن لمهمة طلب أذونات الوظيفة لإضافة مهام أخرى إلى المهمة، أو التحقق من حالة الوظيفة أو المهام الأخرى ضمن المهمة.
authenticationTokenSettings?: AuthenticationTokenSettings
قيمة الخاصية
commandLine
سطر الأوامر للمهمة. بالنسبة للمهام متعددة المثيلات، يتم تنفيذ سطر الأوامر كمهمة أساسية، بعد انتهاء المهمة الأساسية وجميع المهام الفرعية من تنفيذ سطر أوامر التنسيق. لا يعمل سطر الأوامر تحت 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).
commandLine: string
قيمة الخاصية
string
constraints
قيود التنفيذ التي تنطبق على هذه المهمة. إذا لم تحدد القيود، فإن maxTaskRetryCount هو maxTaskRetryCount المحدد للوظيفة، وmaxWallClockTime لانهائي، ووقت الاستبقاء هو 7 أيام.
constraints?: TaskConstraints
قيمة الخاصية
containerSettings
إعدادات الحاوية التي يتم تشغيل المهمة ضمنها. إذا كان التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة تكوين الحاوية، يجب تعيين هذا أيضا. إذا لم يكن التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة تكوين الحاوية، يجب عدم تعيين هذا. عند تحديد ذلك، يتم تعيين جميع الدلائل بشكل متكرر أسفل AZ_BATCH_NODE_ROOT_DIR (جذر دلائل Azure Batch على العقدة) في الحاوية، ويتم تعيين كافة متغيرات بيئة المهمة في الحاوية، ويتم تنفيذ سطر أوامر المهمة في الحاوية. قد لا تنعكس الملفات التي يتم إنتاجها في الحاوية خارج AZ_BATCH_NODE_ROOT_DIR على القرص المضيف، ما يعني أن واجهات برمجة تطبيقات ملف Batch لن تتمكن من الوصول إلى هذه الملفات.
containerSettings?: TaskContainerSettings
قيمة الخاصية
dependsOn
المهام التي تعتمد عليها هذه المهمة. لن تتم جدولة هذه المهمة حتى تكتمل كافة المهام التي تعتمد عليها بنجاح. إذا فشلت أي من هذه المهام واستنفاد عدد مرات إعادة المحاولة الخاصة بها، فلن تتم جدولة هذه المهمة أبدا. إذا لم يكن للوظيفة استخدامات تم تعيينها إلى true، وكان هذا العنصر موجودا، يفشل الطلب مع رمز الخطأ TaskDependenciesNotSpecifiedOnJob.
dependsOn?: TaskDependencies
قيمة الخاصية
displayName
اسم عرض للمهمة. لا يجب أن يكون اسم العرض فريدا ويمكن أن يحتوي على أي أحرف Unicode يصل طولها إلى 1024 كحد أقصى.
displayName?: string
قيمة الخاصية
string
environmentSettings
قائمة بإعدادات متغير البيئة للمهمة.
environmentSettings?: EnvironmentSetting[]
قيمة الخاصية
exitConditions
كيف يجب أن تستجيب خدمة Batch عند اكتمال المهمة.
exitConditions?: ExitConditions
قيمة الخاصية
id
سلسلة تعرف المهمة بشكل فريد داخل المهمة. يمكن أن يحتوي المعرف على أي تركيبة من الأحرف الأبجدية الرقمية بما في ذلك الواصلات والتسطير السفلي، ولا يمكن أن يحتوي على أكثر من 64 حرفا. المعرف هو الحفاظ على حالة الأحرف وغير حساس لحالة الأحرف (أي، قد لا يكون لديك معرفان داخل الوظيفة يختلفان فقط حسب الحالة).
id: string
قيمة الخاصية
string
multiInstanceSettings
كائن يشير إلى أن المهمة مهمة متعددة المثيلات، ويحتوي على معلومات حول كيفية تشغيل المهمة متعددة المثيلات.
multiInstanceSettings?: MultiInstanceSettings
قيمة الخاصية
outputFiles
قائمة بالملفات التي ستقوم خدمة Batch بتحميلها من عقدة الحساب بعد تشغيل سطر الأوامر. بالنسبة للمهام متعددة المثيلات، سيتم تحميل الملفات فقط من عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها.
outputFiles?: OutputFile[]
قيمة الخاصية
requiredSlots
عدد فتحات الجدولة التي تتطلب المهمة تشغيلها. الإعداد الافتراضي هو 1. يمكن جدولة المهمة فقط للتشغيل على عقدة حساب إذا كانت العقدة تحتوي على فتحات جدولة مجانية كافية متوفرة. بالنسبة للمهام متعددة المثيلات، يجب أن يكون هذا 1.
requiredSlots?: number
قيمة الخاصية
number
resourceFiles
قائمة بالملفات التي ستقوم خدمة Batch بتنزيلها إلى عقدة الحساب قبل تشغيل سطر الأوامر. بالنسبة للمهام متعددة المثيلات، سيتم تنزيل ملفات الموارد فقط إلى عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها. يوجد حد أقصى لحجم قائمة ملفات الموارد. عند تجاوز الحد الأقصى للحجم، سيفشل الطلب وسيكون رمز خطأ الاستجابة RequestEntityTooLarge. إذا حدث ذلك، يجب تصغير حجم مجموعة ResourceFiles. يمكن تحقيق ذلك باستخدام ملفات .zip أو حزم التطبيقات أو حاويات Docker.
resourceFiles?: ResourceFile[]
قيمة الخاصية
userIdentity
هوية المستخدم التي يتم تشغيل المهمة بموجبها. إذا تم حذفها، يتم تشغيل المهمة كمستخدم غير إداري فريد للمهمة.
userIdentity?: UserIdentity