Xcode@2 - مهمة Xcode Build v2

استخدم هذه المهمة لإنشاء مساحة عمل Xcode على macOS.

بناء الجملة

# Xcode Build v2
# Build an Xcode workspace on Mac OS.
- task: Xcode@2
  inputs:
    actions: 'build' # string. Required. Actions. Default: build.
    #configuration: '$(Configuration)' # string. Configuration. Default: $(Configuration).
    #sdk: '$(SDK)' # string. SDK. Default: $(SDK).
    #xcWorkspacePath: '**/*.xcodeproj/*.xcworkspace' # string. Workspace/Project Path. Default: **/*.xcodeproj/*.xcworkspace.
    #scheme: # string. Scheme. 
    #packageApp: true # boolean. Create App Package. Default: true.
  # Package Options
    packageTool: 'xcodebuild' # 'xcrun' | 'xcodebuild'. Required. Create Package (IPA) using. Default: xcodebuild.
    #archivePath: # string. Optional. Use when packageTool == xcodebuild. Archive Path. 
    #exportPath: 'output/$(SDK)/$(Configuration)' # string. Optional. Use when packageTool == xcodebuild. Export Path. Default: output/$(SDK)/$(Configuration).
    #exportOptions: 'auto' # 'auto' | 'plist' | 'specify'. Optional. Use when packageTool == xcodebuild. Export Options. Default: auto.
    #exportMethod: 'development' # string. Required when exportOptions == specify. Export Method. Default: development.
    #exportTeamId: # string. Optional. Use when exportOptions == specify. Team ID. 
    #exportOptionsPlist: # string. Required when exportOptions == plist. Export Options Plist. 
  # Signing & Provisioning
    #xcode8AutomaticSigning: false # boolean. Automatic Signing. Default: false.
    #teamId: # string. Optional. Use when xcode8AutomaticSigning = true. Team ID. 
    #signMethod: 'file' # 'file' | 'id'. Override Using. Default: file.
    #iosSigningIdentity: # string. Optional. Use when signMethod = id. Signing Identity. 
    #unlockDefaultKeychain: false # boolean. Optional. Use when signMethod = id. Unlock Default Keychain. Default: false.
    #defaultKeychainPassword: # string. Optional. Use when signMethod = id. Default Keychain Password. 
    #provProfileUuid: # string. Optional. Use when signMethod = id. Provisioning Profile UUID. 
    #p12: # string. Optional. Use when signMethod = file. P12 Certificate File. 
    #p12pwd: # string. Optional. Use when signMethod = file. P12 Password. 
    #provProfile: # string. Optional. Use when signMethod = file. Provisioning Profile File. 
    #removeProfile: false # boolean. Optional. Use when signMethod = file. Remove Profile After Build. Default: false.
  # Advanced
    #args: # string. Arguments. 
    #cwd: # string. Working Directory. 
    outputPattern: 'output/$(SDK)/$(Configuration)' # string. Required. Output Directory. Default: output/$(SDK)/$(Configuration).
    #xcodeDeveloperDir: # string. Xcode Developer Path. 
    #useXcpretty: false # boolean. Use xcpretty. Default: false.
    #publishJUnitResults: false # boolean. Publish to VSTS/TFS. Default: false.
  # xctool (deprecated)
    #useXctool: # boolean. Use xctool. 
    #xctoolReporter: # string. xctool Test Reporter Format.

المدخلات

إجراءات actions -
Person. مطلوب. القيمة الافتراضية: build.

تحديد قائمة إجراءات محددة بمسافة. الخيارات الصالحة هي buildcleantestanalyzearchive. على سبيل المثال، يقوم build clean بإجراء بناء نظيف. راجع Apple: البناء من سطر الأوامر باستخدام الأسئلة المتداولة حول Xcode.


تكوين configuration -
Person. القيمة الافتراضية: $(Configuration).

تحديد مشروع Xcode أو تكوين مساحة العمل للبناء. عند استخدام متغير، حدد قيمة (على سبيل المثال، Release) في علامة التبويب المتغيرات.


sdk - SDK
Person. القيمة الافتراضية: $(SDK).

ينشئ مشروع Xcode أو مساحة عمل مقابل SDK المحدد. قم بتشغيل xcodebuild -showsdks لمشاهدة قائمة صحيحة من SDKs.


مساحة عمل xcWorkspacePath - /مسار المشروع
Person. القيمة الافتراضية: **/*.xcodeproj/*.xcworkspace.

اختياري. تحديد المسار النسبي من جذر المستودع إلى مساحة عمل Xcode أو المشروع. على سبيل المثال: MyApp/MyApp.xcworkspace أو MyApp/MyApp.xcworkspace/MyApp.xcodeproj.
اتركه فارغا إذا كنت تنوي استخدام -target flag ضمن الوسيطات المتقدمة.


نظام scheme -
Person.

اختياري. تحديد اسم نظام Xcode. يجب أن يكون مخططا مشتركا (خانة اختيار مشتركة ضمن أنظمة مدارة في Xcode). مطلوب إذا تم تحديد مساحة العمل.


packageApp - إنشاء حزمة التطبيقات
Person. القيمة الافتراضية: true.

تحديد ما إذا كان يتم إنشاء IPA كجزء من البنية. لتصدير الأرشيفات باستخدام Xcode 7 وXcode 8، راجع المدخلات الإضافية في قسم خيارات حزمة.


packageTool - إنشاء حزمة (IPA) باستخدام
Person. مطلوب. القيم المسموح بها: xcrun (xcrun (مهمل بواسطة Apple))، xcodebuild (أرشيف xcodebuild وتصديره). القيمة الافتراضية: xcodebuild.

تحديد الأداة التي يجب استخدامها لإنشاء IPA.


مسار الأرشيف archivePath -
Person. اختياري. استخدم عند packageTool == xcodebuild.

تحديد دليل حيث يتم وضع الأرشيفات التي تم إنشاؤها.


exportPath - مسار التصدير
Person. اختياري. استخدم عند packageTool == xcodebuild. القيمة الافتراضية: output/$(SDK)/$(Configuration).

تحديد وجهة المنتج الذي تم تصديره من الأرشيف.


خيارات التصدير exportOptions -
Person. اختياري. استخدم عند packageTool == xcodebuild. القيم المسموح بها: autoplistspecify. القيمة الافتراضية: auto.

تحديد طريقة لتمرير خيارات التصدير عند تصدير الأرشيف.


أسلوب تصدير exportMethod -
Person. مطلوب عند exportOptions == specify. القيمة الافتراضية: development.

تحديد الأسلوب الذي يستخدمه Xcode لتصدير الأرشيف. على سبيل المثال، app-storeأو packageأو ad-hocأو enterpriseأو development.


معرف الفريق exportTeamId -
Person. اختياري. استخدم عند exportOptions == specify.

يحدد معرف فريق Apple Developer Portal المكون من 10 أرقام لاستخدامه في التصدير.


قائمة خيارات التصدير exportOptionsPlist -
Person. مطلوب عند exportOptions == plist.

تحديد المسار إلى ملف plist الذي يقوم بتكوين تصدير الأرشيف.


التوقيع التلقائي xcode8AutomaticSigning -
Person. القيمة الافتراضية: false.

استخدم هذا الإدخال إذا كان لديك مشروع Xcode 8 أو Xcode 9 تم تكوينه للتوزيع التلقائي.


معرف الفريق teamId -
Person. اختياري. استخدم عند xcode8AutomaticSigning = true.

تحديد معرف فريق المطورين المكون من 10 أرقام. هذا مطلوب إذا كنت عضوا في فرق تطوير متعددة.


signMethod - تجاوز استخدام
Person. القيم المسموح بها: file (محتويات الملف)، id (المعرفات). القيمة الافتراضية: file.

استخدم هذا الإدخال إذا كان البناء يستخدم أسلوب توقيع أو توفير يختلف عن الافتراضي. اختر File Contents لاستخدام شهادة P12 وملف تعريف التوفير. اختر Identifiers لاسترداد إعدادات التوقيع من سلسلة المفاتيح الافتراضية وملفات التعريف المثبتة مسبقا. اترك الحقول المقابلة فارغة إذا كنت لا ترغب في تجاوز إعدادات الإنشاء الافتراضية.


هوية توقيع iosSigningIdentity -
Person. اختياري. استخدم عند signMethod = id.

تحديد تجاوز هوية التوقيع المستخدم لتوقيع البنية. الإعدادات الافتراضية لإعداد مشروع Xcode. إلغاء تأمين سلسلة المفاتيح الافتراضية قد تحتاج إلى تحديد.


unlockDefaultKeychain - إلغاء تأمين سلسلة المفاتيح الافتراضية
Person. اختياري. استخدم عند signMethod = id. القيمة الافتراضية: false.

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


defaultKeychainPassword - كلمة مرور سلسلة المفاتيح الافتراضية
Person. اختياري. استخدم عند signMethod = id.

تحديد كلمة المرور لإلغاء تأمين سلسلة المفاتيح الافتراضية.


UUID لملف تعريف توفير provProfileUuid -
Person. اختياري. استخدم عند signMethod = id.

تحديد UUID لملف تعريف توفير مثبت لاستخدامه في البنية. استخدم مهام بناء منفصلة مع مخططات أو أهداف مختلفة لتحديد ملفات تعريف التوفير حسب الهدف في مساحة عمل واحدة (iOS، WatchKit، tvOS).


ملف شهادة p12 - P12
Person. اختياري. استخدم عند signMethod = file.

تحديد المسار النسبي لملف شهادة P12 بتنسيق PKCS12 الذي يحتوي على شهادة توقيع لاستخدامها في البنية.


كلمة مرور p12pwd - P12
Person. اختياري. استخدم عند signMethod = file.

تحديد كلمة المرور إلى ملف شهادة P12 إذا تم تحديده. استخدم متغير بناء للتشفير.


ملف تعريف توفير provProfile -
Person. اختياري. استخدم عند signMethod = file.

تحديد المسار النسبي إلى ملف يحتوي على تجاوز ملف تعريف توفير لاستخدامه في البنية. استخدم مهام بناء منفصلة مع مخططات أو أهداف مختلفة لتحديد ملفات تعريف التوفير حسب الهدف في مساحة عمل واحدة (iOS، WatchKit، tvOS).


removeProfile - إزالة ملف التعريف بعد إنشاء
Person. اختياري. استخدم عند signMethod = file. القيمة الافتراضية: false.

يزيل محتويات ملف تعريف التوفير من عامل البناء بعد اكتمال الإنشاء. تحقق فقط مما إذا كنت تقوم بتشغيل عامل واحد لكل مستخدم.


الوسيطات args -
Person.

يحدد وسيطات سطر الأوامر الإضافية المستخدمة للبناء. هذا الإدخال مفيد إذا كنت تريد استخدام -target أو -project بدلا من تحديد مساحة عمل ونظام.


دليل العمل cwd -
Person.

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


دليل الإخراج outputPattern -
Person. مطلوب. القيمة الافتراضية: output/$(SDK)/$(Configuration).

تحديد المسار النسبي حيث يتم وضع إخراج البناء (الثنائيات).


مسار مطور xcodeDeveloperDir - Xcode
Person.

اختياري. يحدد المسار إلى مجلد Xcode Developer إذا لم يكن النظام الافتراضي. للاستخدام عند تثبيت إصدارات متعددة من Xcode على نظام. على سبيل المثال: /Applications/Xcode 7.app/Contents/Developer.


useXcpretty - استخدام xcpretty
Person. القيمة الافتراضية: false.

تنسيق xcodebuild الإخراج وإنشاء تقرير نتائج اختبار JUnit. يجب تثبيته على مضيفي العامل. تعرف على المزيد حول xcpretty.


publishJUnitResults - النشر على VSTS / TFS
Person. القيمة الافتراضية: false.

يتم نشر نتائج اختبار JUnit التي تم إنتاجها باستخدام xctool إلى VSTS/TFS.


useXctool - استخدام xctool
Person.

يستخدم xctool بدلا من xcodebuild. يجب تثبيته على مضيفي العامل. تعرف على المزيد حول xctool.
ملاحظة: تم إهمالxctool ولا تعمل مع Xcode 8.


تنسيق xctoolReporter - xctool Test Reporter Format
Person.

اختبار تنسيق المراسل لاستخدامه عند تحديد إجراء الاختبار وتحديد استخدام xctool. حدد junit:output-file-path-here.xml لإنشاء تنسيق ملف متوافق مع مهمة نشر نتائج الاختبار. عند التحديد، تتم إضافة عادي تلقائيا. يجب تثبيت xctool على مضيفي العامل. تعرف على المزيد حول xctool.
ملاحظة: تم إهمالxctool ولا تعمل مع Xcode 8.


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

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

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

لا شيء.

المتطلبات

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