FileTransform@2 - مهمة تحويل الملف v2

استخدم هذه المهمة لاستبدال الرموز المميزة بقيم متغيرة في ملفات تكوين XML أو JSON.

بناء الجملة

# File transform v2
# Replace tokens with variable values in XML or JSON configuration files.
- task: FileTransform@2
  inputs:
    folderPath: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
    #xmlTransformationRules: '-transform **\*.Release.config -xml **\*.config' # string. XML Transformation rules. Default: -transform **\*.Release.config -xml **\*.config.
  # Variable Substitution
    #jsonTargetFiles: # string. JSON target files. 
    #xmlTargetFiles: # string. XML target files.

الإدخالات

folderPath - الحزمة أو المجلد
string. مطلوب القيمة الافتراضية: $(System.DefaultWorkingDirectory)/**/*.zip.

مسار الملف إلى الحزمة أو مجلد.

المتغيرات هي الإنشاءوالإصدار. يتم دعم أحرف البدل.

على سبيل المثال، ⁧$(System.DefaultWorkingDirectory)/**/*.zip⁩. بالنسبة للمجلدات المضغوطة، يتم استخراج المحتويات إلى موقع TEMP والتحويلات المنفذة والنتائج المضغوطة في موقع البيانات الاصطناعية الأصلي.


xmlTransformationRules - قواعد تحويل XML
string. القيمة الافتراضية: -transform **\*.Release.config -xml **\*.config.

يوفر قائمة مفصولة بخطوط جديدة لقواعد ملف التحويل باستخدام بناء الجملة: -transform <pathToTransformFile> -xml <pathToSourceConfigurationFile>. مسار ملف النتيجة اختياري، وإذا لم يتم تحديده، فسيتم استبدال ملف التكوين المصدر بملف النتيجة المحول.


jsonTargetFiles - ملفات هدف JSON
string.

يوفر قائمة ملفات مفصولة بخط جديد لاستبدال قيم المتغير. سيتم توفير أسماء الملفات بالنسبة إلى المجلد الجذر.

على سبيل المثال، لاستبدال قيمة ConnectionString في العينة أدناه، تحتاج إلى تعريف متغير كما هو الحال Data.DefaultConnection.ConnectionString في البنية الأساسية لبرنامج ربط العمليات التجارية للبناء أو الإصدار (أو بيئة البنية الأساسية لبرنامج ربط العمليات التجارية للإصدار).

{
  "Data": {
    "DefaultConnection": {
      "ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
    }
  }
}

يتم تشغيل استبدال المتغير بعد تحويلات التكوين.

ملاحظة: يتم استخدام المتغيرات المخصصة المحددة في البنية الأساسية لبرنامج ربط العمليات التجارية للبناء/الإصدار فقط في الاستبدال. يتم استبعاد متغيرات البنية الأساسية لبرنامج ربط العمليات التجارية الافتراضية/المحددة من قبل النظام. إذا تم تعريف نفس المتغيرات في مسار الإصدار وفي المرحلة، فستحل متغيرات المرحلة محل متغيرات مسار الإصدار.


xmlTargetFiles - ملفات هدف XML
string.

يوفر قائمة ملفات مفصولة بخط جديد لاستبدال قيم المتغير. سيتم توفير أسماء الملفات بالنسبة إلى المجلد الجذر.

بالنسبة إلى XML، ستتم مطابقة المتغيرات المحددة في البنية الأساسية لبرنامج ربط العمليات التجارية للإنشاء أو الإصدار مع key الإدخالات أو name في appSettingsأقسام و applicationSettingsو connectionStrings لأي ملف تكوين و parameters.xml.

يتم تشغيل استبدال المتغير بعد تحويلات التكوين.

ملاحظة: يتم استخدام المتغيرات المخصصة المحددة في البنية الأساسية لبرنامج ربط العمليات التجارية للبناء/الإصدار فقط في الاستبدال. يتم استبعاد متغيرات البنية الأساسية لبرنامج ربط العمليات التجارية الافتراضية/المحددة من قبل النظام. إذا تم تعريف نفس المتغيرات في مسار الإصدار وفي المرحلة، فستحل متغيرات المرحلة محل متغيرات مسار الإصدار.


خيارات التحكم بالمهمة

تحتوي جميع المهام على خيارات التحكم بالإضافة إلى مدخلات المهام الخاصة بها. لمزيد من المعلومات، راجع خيارات التحكم وخصائص المهمة الشائعة.

متغيرات الإخراج

لا شيء

الملاحظات

ما الجديد في الإصدار 2 من تحويل الملفات:

  • حقول مهام أكثر تحسينا تسمح للمستخدمين بتمكين أي/كل ميزات التحويل (XML) واستبدال المتغير (JSON وXML) في مثيل مهمة واحدة.
  • تفشل المهمة عند عدم تطبيق أي من التحويل/الاستبدال المكون أو عندما تكون المهمة غير عملية.

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

هام

هذه المهمة مخصصة لحزم الويب وتتطلب ملف حزمة ويب. لا يعمل على ملفات JSON المستقلة.

تحويلات الملفات

  • في الوقت الحالي، يتم دعم تحويلات الملفات لملفات XML فقط.
  • لتطبيق تحويل XML على ملفات التكوين (*.config) يجب تحديد قائمة مفصولة بخطوط جديدة لقواعد ملف التحويل باستخدام بناء الجملة:-t ransform <path to the transform file> -xml <path to the source file> -result <path to the result file>
  • تعد تحويلات الملفات مفيدة في العديد من السيناريوهات، خاصة عند التوزيع إلى خدمة تطبيق وتريد إضافة تكوينات أو إزالتها أو تعديلها لبيئات مختلفة (مثل Dev أو Test أو Prod) باتباع بناء جملة تحويلWeb.config القياسي.
  • يمكنك أيضا استخدام هذه الوظيفة لتحويل ملفات أخرى، بما في ذلك ملفات تكوين تطبيق وحدة التحكم أو خدمة Windows (على سبيل المثال، FabrikamService.exe.config).
  • يتم تشغيل تحويلات ملف التكوين قبل الاستبدالات المتغيرة.

الاستبدال المتغير

  • في الوقت الحالي يتم دعم تنسيقات ملفات XML وJSON فقط لاستبدال المتغير.
  • يتم تحديث الرموز المميزة المحددة في ملفات التكوين الهدف ثم استبدالها بقيم متغيرة.
  • يتم تشغيل الاستبدالات المتغيرة بعد تحويلات ملف التكوين.
  • يتم تطبيق استبدال المتغير لمفاتيح JSON المعرفة مسبقا فقط في التسلسل الهرمي للكائن. لا ينشئ مفاتيح جديدة.

ملاحظة

يتم استخدام المتغيرات المخصصة المحددة في البنية الأساسية لبرنامج ربط العمليات التجارية للإنشاء والإصدار فقط في الاستبدال. يتم استبعاد متغيرات البنية الأساسية لبرنامج ربط العمليات التجارية الافتراضية والنظام.

فيما يلي قائمة بالبادئات المستبعدة حاليا:

  • agent.
  • azure_http_user_agent
  • build.
  • common.
  • release.
  • system.
  • tf_

إذا تم تعريف نفس المتغيرات في كل من البنية الأساسية لبرنامج ربط العمليات التجارية للإصدار وفي مرحلة ما، تحل المتغيرات المعرفة بالمرحلة محل المتغيرات المعرفة بالبنية الأساسية لبرنامج ربط العمليات التجارية.

راجع أيضا: تحويلات الملفات ومرجع استبدال المتغير.

أمثلة

إذا كنت بحاجة إلى تحويل XML لتشغيله على جميع ملفات التكوين المسماة بنمط .Production.config، فيجب تحديد قاعدة التحويل على النحو التالي:

-transform **\*.Production.config -xml **\*.config

إذا كان لديك ملف تكوين يسمى استنادا إلى اسم المرحلة في البنية الأساسية لبرنامج ربط العمليات التجارية الخاصة بك، يمكنك استخدام:

-transform **\*.$(Release.EnvironmentName).config -xml **\*.config

لاستبدال متغيرات JSON المتداخلة أو الهرمية، حددها باستخدام تعبيرات JSONPath. على سبيل المثال، لاستبدال قيمة ConnectionString في العينة أدناه، يجب تعريف متغير كما هو الحال Data.DefaultConnection.ConnectionString في البنية الأساسية لبرنامج ربط العمليات التجارية للبناء أو الإصدار (أو في مرحلة داخل مسار الإصدار).

{
  "Data": {
    "DefaultConnection": {
      "ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
    }
  }
}

المتطلبات

المتطلب الوصف
أنواع البنية الأساسية لبرنامج ربط العمليات التجارية YAML، الإصدار الكلاسيكي، الإصدار الكلاسيكي
يعمل على Agent, DeploymentGroup
المطالب بلا
القدرات لا تفي هذه المهمة بأي طلبات للمهام اللاحقة في الوظيفة.
قيود الأوامر أي
متغيرات Settable أي
إصدار الوكيل جميع إصدارات العامل المدعومة.
فئة المهمة الأداة المساعدة

راجع أيضًا