Xcode@4 - Xcode v4 görevi

MacOS üzerinde Xcode çalışma alanı oluşturmak, test etmek veya arşivlemek ve isteğe bağlı olarak bir uygulamayı paketlemek için bu görevi kullanın.

Syntax

# Xcode v4
# Build, test, or archive an Xcode workspace on macOS. Optionally package an app.
- task: Xcode@4
  inputs:
    actions: 'build' # string. Required. Actions. Default: build.
    #configuration: '$(Configuration)' # string. Configuration. Default: $(Configuration).
    #sdk: '$(SDK)' # string. SDK. Default: $(SDK).
    #xcWorkspacePath: '**/*.xcodeproj/project.xcworkspace' # string. Workspace or project path. Default: **/*.xcodeproj/project.xcworkspace.
    #scheme: # string. Scheme. 
    #xcodeVersion: 'default' # '8' | '9' | 'default' | 'specifyPath'. Xcode version. Default: default.
    #xcodeDeveloperDir: # string. Optional. Use when xcodeVersion == specifyPath. Xcode developer path. 
  # Package options
    #packageApp: false # boolean. Create app package. Default: false.
    #archivePath: # string. Optional. Use when packageApp == true. Archive path. 
    #exportPath: 'output/$(SDK)/$(Configuration)' # string. Optional. Use when packageApp == true. Export path. Default: output/$(SDK)/$(Configuration).
    #exportOptions: 'auto' # 'auto' | 'plist' | 'specify'. Optional. Use when packageApp == true. 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. 
    #exportArgs: # string. Optional. Use when packageApp == true. Export arguments. 
  # Signing & provisioning
    #signingOption: 'nosign' # 'nosign' | 'default' | 'manual' | 'auto'. Signing style. Default: nosign.
    #signingIdentity: # string. Optional. Use when signingOption = manual. Signing identity. 
    #provisioningProfileUuid: # string. Optional. Use when signingOption = manual. Provisioning profile UUID. 
    #teamId: # string. Optional. Use when signingOption = auto. Team ID. 
  # Devices & simulators
    #destinationPlatformOption: 'default' # 'default' | 'iOS' | 'tvOS' | 'macOS' | 'custom'. Destination platform. Default: default.
    #destinationPlatform: # string. Optional. Use when destinationPlatformOption == custom. Custom destination platform. 
    #destinationTypeOption: 'simulators' # 'simulators' | 'devices'. Optional. Use when destinationPlatformOption != default && destinationPlatformOption != macOS. Destination type. Default: simulators.
    #destinationSimulators: 'iPhone 7' # string. Optional. Use when destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == simulators. Simulator. Default: iPhone 7.
    #destinationDevices: # string. Optional. Use when destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == devices. Device. 
  # Advanced
    #args: # string. Arguments. 
    #workingDirectory: # string. Alias: cwd. Working directory. 
    #outputPattern: # string. Output directory. 
    #useXcpretty: false # boolean. Use xcpretty. Default: false.
    #publishJUnitResults: false # boolean. Publish test results to VSTS/TFS. Default: false.

Girişler

actions - Eylem
string. Gereklidir. Varsayılan değer: build.

Boşlukla ayrılmış eylem listesini belirtir. Geçerli seçenekler : build, clean, test, analyzeve archive. Örneğin,clean build temiz bir derleme gerçekleştirir. Bkz. Apple: Xcode SSS ile komut satırından oluşturma.


configuration - Yapılandırma
string. Varsayılan değer: $(Configuration).

Derlemek için Xcode projesini veya çalışma alanı yapılandırmasını belirtir. Değişken kullanırken, Değişkenler sekmesinde bir değer (örneğin, Release) belirtin.


sdk - SDK
string. Varsayılan değer: $(SDK).

Xcode projesini veya çalışma alanını oluştururken kullanılacak bir SDK belirtir. geçerli SDK listesini görüntülemek için macOS Terminal uygulamasında komutunu çalıştırın xcodebuild -showsdks . Değişken kullanırken, Değişkenler sekmesinde bir değer (örneğin, iphonesimulator) belirtin.


xcWorkspacePath - Çalışma alanı veya proje yolu
string. Varsayılan değer: **/*.xcodeproj/project.xcworkspace.

İsteğe bağlı. Deponun kökünden Xcode çalışma alanına veya projesine göreli bir yol belirtir. Bir değer belirtirseniz, düzeni de belirtmeniz gerekir. Gelişmiş Bağımsız Değişkenler'de belirtiyorsanız -target flag bir değer belirtmeyin. Örneğin MyApp/MyApp.xcworkspace veya MyApp/MyApp.xcodeproj olabilir.


scheme - Düzeni
string.

İsteğe bağlı. Bir Xcode düzeni adı belirtir. Paylaşılan bir düzen olmalıdır (Xcode'da Yönetilen Düzenler altında paylaşılan onay kutusu). Bir düzen belirtmezseniz ve belirtilen çalışma alanının tek bir paylaşılan düzeni varsa, çalışma alanı düzeni kullanılır.


xcodeVersion - Xcode sürümü
string. İzin verilen değerler: 8 (Xcode 8), 9 (Xcode 9), default, specifyPath (Yolu belirtin). Varsayılan değer: default.

Xcode'un hedef sürümünü belirtir. Aracı makinede varsayılan Xcode sürümünü kullanmak için seçin Default . Bir sürüm numarası (örneğin, ) belirtilmesi, Xcode 9aracı makinedeki ortam değişkenleri tarafından ayarlanacak sürümün konumunu kullanır (örneğin, XCODE_9_DEVELOPER_DIR=/Applications/Xcode_9.0.0.app/Contents/Developer). Xcode geliştirici dizinine belirli bir yol sağlamak için öğesini seçin Specify path .


xcodeDeveloperDir - Xcode geliştirici yolu
string. İsteğe bağlı. olduğunda xcodeVersion == specifyPathkullanın.

Belirli bir Xcode geliştirici dizininin yolunu belirtir (örneğin, /Applications/Xcode_9.0.0.app/Contents/Developer). Aracı makineye Xcode'un birden çok sürümü yüklendiğinde bu giriş yararlıdır.


packageApp - Uygulama paketi oluşturma
boolean. Varsayılan değer: false.

Derlemenin bir parçası olarak bir IPA uygulama paketi dosyasının oluşturulup oluşturulmayacağını belirtir.


archivePath - Arşiv yolu
string. İsteğe bağlı. olduğunda packageApp == truekullanın.

Oluşturulan arşivlerin yerleştirildiği dizini belirtir.


exportPath - Dışarı aktarma yolu
string. İsteğe bağlı. olduğunda packageApp == truekullanın. Varsayılan değer: output/$(SDK)/$(Configuration).

Arşivden dışarı aktarılan ürünün hedefini belirtir.


exportOptions - Dışarı aktarma seçenekleri
string. İsteğe bağlı. olduğunda packageApp == truekullanın. İzin verilen değerler: auto (Otomatik), plist, specify. Varsayılan değer: auto.

Arşivi dışarı aktarma seçeneklerini belirtir. varsayılan değeri Automatic seçildiğinde, dışarı aktarma yöntemi arşivden otomatik olarak algılanır. Dışarı aktarma seçeneklerini içeren bir plist dosyası belirtmek için seçin Plist . Belirli bir Dışarı Aktarma yöntemini ve Ekip Kimliğini sağlamak için öğesini seçinSpecify.


exportMethod - Dışarı aktarma yöntemi
string. olduğunda exportOptions == specifygereklidir. Varsayılan değer: development.

Xcode'un arşivi dışarı aktarmak için kullandığı yöntemi belirtir. Örneğin: app-store, package, ad-hoc, enterpriseveya development.


exportTeamId - Ekip Kimliği
string. İsteğe bağlı. olduğunda exportOptions == specifykullanın.

Dışarı aktarma sırasında kullanılacak Apple Geliştirici Portalı 10 karakterlik ekip kimliğini belirtir.


exportOptionsPlist - Dışarı aktarma seçenekleri plist
string. olduğunda exportOptions == plistgereklidir.

Dışarı aktarma sırasında kullanılacak seçenekleri içeren plist dosyasının yolunu belirtir.


exportArgs - Bağımsız değişkenleri dışarı aktarma
string. İsteğe bağlı. olduğunda packageApp == truekullanın.

Dışarı aktarma sırasında kullanılan ek komut satırı bağımsız değişkenlerini belirtir.


signingOption - İmzalama stili
string. İzin verilen değerler: nosign (Kod imzalama), (Proje varsayılanları), defaultmanual (El ile imzalama), auto (Otomatik imzalama). Varsayılan değer: nosign.

Derlemeyi imzalama yöntemini belirtir. İmzalama özelliğini devre dışı bırakmak için seçin Do not code sign . Yalnızca projenin imzalama yapılandırmasını kullanmak için seçin Project defaults . El ile imzalamaya zorlamak için seçin Manual signing ve isteğe bağlı olarak bir imzalama kimliği ve sağlama profili belirtin. Otomatik imzalamayı zorlamak için öğesini seçin Automatic signing ve isteğe bağlı olarak bir geliştirme ekibi kimliği belirtin. Projeniz imzalama gerektiriyorsa, Xcode derlemesi öncesinde sertifikaları ve sağlama profillerini yüklemek için Apple... yükleme görevlerini kullanın.


signingIdentity - İmzalama kimliği
string. İsteğe bağlı. olduğunda signingOption = manualkullanın.

Derlemenin imzalandığı imzalama kimliğini geçersiz kılmayı belirtir. Aracı makinede varsayılan anahtar zincirinin kilidinin açılması gerekebilir. Değer girilirse, Xcode projesinin ayarı kullanılır.


provisioningProfileUuid - Sağlama profili UUID
string. İsteğe bağlı. olduğunda signingOption = manualkullanın.

Derleme için kullanılan yüklü bir sağlama profilinin UUID değerini belirtir. Tek bir çalışma alanında (iOS, tvOS, watchOS) hedefe göre sağlama profilleri belirtmek için farklı şemalara veya hedeflere sahip ayrı derleme görevleri kullanın.


teamId - Ekip Kimliği
string. İsteğe bağlı. olduğunda signingOption = autokullanın.

Birden çok geliştirme ekibine üyeyseniz gereklidir. 10 karakterlik geliştirme ekibi kimliğini belirtir.


destinationPlatformOption - Hedef platform
string. İzin verilen değerler: default, iOS (iOS ve watchOS), tvOS, macOS, custom. Varsayılan değer: default.

Genel derleme cihazı geçerli olmadığında kullanıcı arabirimi testi için kullanılan hedef cihazın platformunu belirtir. Listeye dahil olmayan bir platform belirtmeyi seçin Custom . Default Seçildiğinde hiçbir simülatör veya cihaz hedeflenmez.


destinationPlatform - Özel hedef platform
string. İsteğe bağlı. olduğunda destinationPlatformOption == customkullanın.

Genel derleme cihazı geçerli olmadığında kullanıcı arabirimi testi için kullanılan hedef cihazın platformunu belirtir.


destinationTypeOption - Hedef türü
string. İsteğe bağlı. olduğunda destinationPlatformOption != default && destinationPlatformOption != macOSkullanın. İzin verilen değerler: simulators (Simülatör), devices (Bağlı Cihaz). Varsayılan değer: simulators.

Kullanıcı arabirimi testi için kullanılan hedef türünü belirtir. Cihazların, derlemeyi bir kablo veya ağ bağlantısı aracılığıyla gerçekleştiren Mac'e bağlı olması gerekir. Daha fazla bilgi için bkz. Xcode'da Cihazlar ve Simülatörler .


destinationSimulators - Simülatörü
string. İsteğe bağlı. olduğunda destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == simulatorskullanın. Varsayılan değer: iPhone 7.

Kullanıcı arabirimi testi için kullanılan bir Xcode simülatörü adı belirtir. Örneğin, iPhone X (iOS ve watchOS) veya Apple TV 4K (tvOS). İsteğe bağlı bir hedef işletim sistemi sürümü gibi iPhone X,OS=11.1biçiminde OS=<versionNumber>belirtilebilir. Barındırılan macOS Önizleme aracısında yüklü simülatörler hakkında daha fazla bilgi edinin.


destinationDevices - Aygıt
string. İsteğe bağlı. olduğunda destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == deviceskullanın.

Kullanıcı arabirimi testi için kullanılan cihazın adını belirtir, örneğin Raisa's iPad.


args - Bağımsız değişken
string.

İsteğe bağlı. Derleyebileceğiniz ek komut satırı bağımsız değişkenlerini belirtir. Bu giriş, çalışma alanı/proje ve düzen yerine veya -project bağımsız değişkenlerini belirtmek -target için kullanışlıdır. Bkz. Apple: Xcode SSS ile komut satırından oluşturma.


workingDirectory - Çalışma dizini
Giriş diğer adı: cwd. string.

İsteğe bağlı. Derlemenin çalıştırıldığı çalışma dizinini belirtir. Değer girilirse, deponun kökü kullanılır.


outputPattern - Çıkış dizini
string.

İsteğe bağlı. Derleme çıkışının (ikililer) yerleştirildiği çalışma dizininin göreli yolunu belirtir. Örneğin: output/$(SDK)/$(Configuration) veya output/$(TestSDK)/$(TestConfiguration). Arşiv ve dışarı aktarma yolları ayrı ayrı yapılandırılır. Değişkenler sekmesinde değerleri belirtin.


useXcpretty - xcpretty kullanma
boolean. Varsayılan değer: false.

Çıkışı biçimlendirmek xcodebuild için kullanılıp kullanılmayacağını xcpretty belirtir ve JUnit test sonuçları oluşturur. xcpretty aracı makinesine yüklenmelidir (VSTS tarafından barındırılan derleme aracılarına önceden yüklenmiştir). Daha fazla bilgi için bkz. xcpretty .


publishJUnitResults - Test sonuçlarını VSTS/TFS'de yayımlama
boolean. Varsayılan değer: false.

Etkinleştirilirse xcpretty , bu giriş JUnit test sonuçlarının VSTS/TFS'de yayımlanıp yayımlanmayacağını belirtir.


Görev denetimi seçenekleri

Tüm görevlerin, görev girişlerine ek olarak denetim seçenekleri vardır. Daha fazla bilgi için bkz . Denetim seçenekleri ve ortak görev özellikleri.

Çıkış değişkenleri

Yok.

Açıklamalar

macOS üzerinde bir Xcode çalışma alanı oluşturmak için bu görevi kullanın.

Örnekler

Gereksinimler

Gereksinim Açıklama
İşlem hattı türleri YAML, Klasik derleme
Üzerinde çalıştırılır Agent, DeploymentGroup
Talep Şirket içinde barındırılan aracılar, bu görevi kullanan işleri çalıştırmak için aşağıdaki taleplerle eşleşen özelliklere sahip olmalıdır: xcode
Özellikler Bu görev, işteki sonraki görevler için herhangi bir talebi karşılamaz.
Komut kısıtlamaları Herhangi biri
Ayarlanabilir değişkenler Herhangi biri
Aracı sürümü Desteklenen tüm aracı sürümleri.
Görev kategorisi Derleme