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.
#enableXmlTransform: true # boolean. XML transformation. Default: true.
#xmlTransformationRules: '-transform **\*.Release.config -xml **\*.config' # string. Optional. Use when enableXmlTransform == true. XML Transformation rules. Default: -transform **\*.Release.config -xml **\*.config.
# Variable Substitution
#jsonTargetFiles: # string. JSON target files.
#xmlTargetFiles: # string. XML target files.
# 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.
المدخلات
string
. مطلوب. القيمة الافتراضية: $(System.DefaultWorkingDirectory)/**/*.zip
.
مسار الملف إلى الحزمة أو المجلد.
المتغيرات هي إنشاء وإصدار . يتم دعم أحرف البدل.
على سبيل المثال، $(System.DefaultWorkingDirectory)/**/*.zip
. بالنسبة للمجلدات المضغوطة، يتم استخراج المحتويات إلى موقع TEMP والتحويلات المنفذة والنتائج المضغوطة في موقع البيانات الاصطناعية الأصلي.
تحويل
boolean
. القيمة الافتراضية: true
.
سيتم تشغيل تحويلات التكوين قبل استبدال المتغير.
يتم دعم تحويلات XML للنظام الأساسي ل Windows فقط.
قواعد تحويل
string
. اختياري. استخدم عند enableXmlTransform == true
. القيمة الافتراضية: -transform **\*.Release.config -xml **\*.config
.
يوفر قائمة مفصولة بخطوط جديدة لقواعد ملف التحويل باستخدام بناء الجملة: -transform <pathToTransformFile> -xml <pathToSourceConfigurationFile>
. مسار ملف النتيجة اختياري، وإذا لم يتم تحديده، استبدال ملف التكوين المصدر بملف النتيجة المحول.
قواعد تحويل
string
. القيمة الافتراضية: -transform **\*.Release.config -xml **\*.config
.
يوفر قائمة مفصولة بخطوط جديدة لقواعد ملف التحويل باستخدام بناء الجملة: -transform <pathToTransformFile> -xml <pathToSourceConfigurationFile>
. مسار ملف النتيجة اختياري، وإذا لم يتم تحديده، استبدال ملف التكوين المصدر بملف النتيجة المحول.
ملفات هدف 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) في مثيل مهمة واحدة.
- تفشل المهمة عندما لا يتم تطبيق أي من التحويل/الاستبدال المكون أو عندما تكون المهمة no-op.
استخدم هذه المهمة لتطبيق تحويلات الملفات والاستبدالات المتغيرة على ملفات التكوين والمعلمات. للحصول على تفاصيل حول كيفية معالجة الترجمات، راجع تحويلات الملف ومرجع الاستبدال المتغير.
مهم
هذه المهمة مخصصة لحزم الويب وتتطلب ملف حزمة ويب. لا يعمل على ملفات JSON المستقلة.
تحويلات الملفات
- في الوقت الحالي، يتم دعم تحويلات الملفات لملفات XML فقط.
- لتطبيق تحويل XML على ملفات التكوين (*.config) يجب تحديد قائمة مفصولة بخطوط جديدة لقواعد ملف التحويل باستخدام بناء الجملة:
-transform <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 | أي |
إصدار العامل | جميع إصدارات الوكيل المدعومة. |
فئة المهمة | الاداه المساعده |
راجع أيضا
- تحويل ملف
ومرجع الاستبدال المتغير