Udostępnij za pośrednictwem


Xcode@2 — zadanie kompilacji Xcode w wersji 2

To zadanie służy do kompilowania obszaru roboczego Xcode w systemie macOS.

Składnia

# 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.

Dane wejściowe

actions - Działania
string. Wymagane. Wartość domyślna: build.

Określa rozdzielaną spacją listę akcji. Prawidłowe opcje to build, , clean, analyzetesti archive. Na przykład build clean wykonuje czystą kompilację. Zobacz artykuł Apple: Building from the command line with Xcode FAQ (Tworzenie z poziomu wiersza polecenia za pomocą języka Xcode — często zadawane pytania).


configuration - Konfiguracji
string. Wartość domyślna: $(Configuration).

Określa konfigurację projektu Xcode lub obszaru roboczego do skompilowania. W przypadku używania zmiennej określ wartość (na przykład Release) na karcie Zmienne .


sdk - SDK
string. Wartość domyślna: $(SDK).

Kompiluje projekt Xcode lub obszar roboczy dla określonego zestawu SDK. Uruchom polecenie , xcodebuild -showsdks aby wyświetlić prawidłową listę zestawów SDK.


xcWorkspacePath - Ścieżka obszaru roboczego/projektu
string. Wartość domyślna: **/*.xcodeproj/*.xcworkspace.

Opcjonalny. Określa ścieżkę względną z katalogu głównego repozytorium do obszaru roboczego lub projektu Xcode. Na przykład: MyApp/MyApp.xcworkspace lub MyApp/MyApp.xcworkspace/MyApp.xcodeproj.
Pozostaw wartość pustą, jeśli zamierzasz używać -target flag w obszarze Argumenty zaawansowane.


scheme - Schemat
string.

Opcjonalny. Określa nazwę schematu Xcode. Musi być schematem udostępnionym (pole wyboru udostępnionego w obszarze Schematy zarządzane w programie Xcode). Wymagane, jeśli określono obszar roboczy.


packageApp - Tworzenie pakietu aplikacji
boolean. Wartość domyślna: true.

Określa, czy usługa IPA jest generowana w ramach kompilacji. Aby wyeksportować archiwa z programem Xcode 7 i Xcode 8, zapoznaj się z dodatkowymi danymi wejściowymi w sekcji Opcje pakietu .


packageTool - Tworzenie pakietu (IPA) przy użyciu polecenia
string. Wymagane. Dozwolone wartości: xcrun (xcrun (przestarzałe przez firmę Apple)), xcodebuild (archiwum xcodebuild i eksport). Wartość domyślna: xcodebuild.

Określa narzędzie do użycia do generowania usługi IPA.


archivePath - Ścieżka archiwum
string. Opcjonalny. Użyj polecenia , gdy packageTool == xcodebuild.

Określa katalog, w którym są umieszczane utworzone archiwa.


exportPath - Ścieżka eksportu
string. Opcjonalny. Użyj polecenia , gdy packageTool == xcodebuild. Wartość domyślna: output/$(SDK)/$(Configuration).

Określa miejsce docelowe produktu wyeksportowanego z archiwum.


exportOptions - Opcje eksportu
string. Opcjonalny. Użyj polecenia , gdy packageTool == xcodebuild. Dozwolone wartości: auto, , specifyplist. Wartość domyślna: auto.

Określa sposób przekazywania opcji eksportu podczas eksportowania archiwum.


exportMethod - Export, metoda
string. Wymagane, gdy exportOptions == specify. Wartość domyślna: development.

Określa metodę Xcode używa do wyeksportowania archiwum. Na przykład , app-store, package, ad-hoc, enterpriselub development.


exportTeamId - Identyfikator zespołu
string. Opcjonalny. Użyj polecenia , gdy exportOptions == specify.

Określa identyfikator zespołu portalu deweloperów firmy Apple 10-cyfrowy do użycia na potrzeby eksportu.


exportOptionsPlist - Opcje eksportu plist
string. Wymagane, gdy exportOptions == plist.

Określa ścieżkę do pliku plist, który konfiguruje eksportowanie archiwum.


xcode8AutomaticSigning - Automatyczne podpisywanie
boolean. Wartość domyślna: false.

Użyj tych danych wejściowych, jeśli masz projekt Xcode 8 lub Xcode 9 skonfigurowany do automatycznego podpisywania.


teamId - Identyfikator zespołu
string. Opcjonalny. Użyj polecenia , gdy xcode8AutomaticSigning = true.

Określa 10-cyfrowy identyfikator zespołu deweloperów. Jest to wymagane, jeśli jesteś członkiem wielu zespołów programistycznych.


signMethod - Przesłoń przy użyciu polecenia
string. Dozwolone wartości: file (Zawartość pliku), id (Identyfikatory). Wartość domyślna: file.

Użyj tych danych wejściowych, jeśli kompilacja używa metody podpisywania lub aprowizacji innej niż domyślna. Wybierz File Contents opcję użycia certyfikatu P12 i profilu aprowizacji. Wybierz Identifiers opcję pobrania ustawień podpisywania z domyślnych profilów łańcucha kluczy i wstępnie zainstalowanych profilów. Pozostaw odpowiednie pola puste, jeśli nie chcesz zastąpić domyślnych ustawień kompilacji.


iosSigningIdentity - Tożsamość podpisywania
string. Opcjonalny. Użyj polecenia , gdy signMethod = id.

Określa zastępowanie tożsamości podpisywania, które jest używane do podpisywania kompilacji. Ustawienie domyślne dla ustawienia projektu Xcode. Może być konieczne wybranie odblokowywania domyślnego pęku kluczy.


unlockDefaultKeychain - Odblokowywanie domyślnego łańcucha kluczy
boolean. Opcjonalny. Użyj polecenia , gdy signMethod = id. Wartość domyślna: false.

Usuwa błędy interakcji użytkownika , odblokowując domyślny pęk kluczy.


defaultKeychainPassword - Domyślne hasło łańcucha kluczy
string. Opcjonalny. Użyj polecenia , gdy signMethod = id.

Określa hasło do odblokowania domyślnego łańcucha kluczy.


provProfileUuid - Identyfikator UUID profilu aprowizacji
string. Opcjonalny. Użyj polecenia , gdy signMethod = id.

Określa identyfikator UUID zainstalowanego profilu aprowizacji do użycia dla kompilacji. Użyj oddzielnych zadań kompilacji z różnymi schematami lub elementami docelowymi, aby określić profile aprowizacji według lokalizacji docelowej w jednym obszarze roboczym (iOS, WatchKit, tvOS).


p12 - Plik certyfikatu P12
string. Opcjonalny. Użyj polecenia , gdy signMethod = file.

Określa ścieżkę względną do pliku certyfikatu PKCS12 sformatowanego P12, który zawiera certyfikat podpisywania do użycia na potrzeby kompilacji.


p12pwd - Hasło P12
string. Opcjonalny. Użyj polecenia , gdy signMethod = file.

Określa hasło do pliku certyfikatu P12, jeśli zostanie określony. Użyj zmiennej kompilacji do szyfrowania.


provProfile - Plik profilu aprowizacji
string. Opcjonalny. Użyj polecenia , gdy signMethod = file.

Określa ścieżkę względną do pliku zawierającego przesłonięcia profilu aprowizacji do użycia dla kompilacji. Użyj oddzielnych zadań kompilacji z różnymi schematami lub elementami docelowymi, aby określić profile aprowizacji według lokalizacji docelowej w jednym obszarze roboczym (iOS, WatchKit, tvOS).


removeProfile - Usuń profil po kompilacji
boolean. Opcjonalny. Użyj polecenia , gdy signMethod = file. Wartość domyślna: false.

Usuwa zawartość pliku profilu aprowizacji z agenta kompilacji po zakończeniu kompilacji. Sprawdź tylko, czy używasz jednego agenta na użytkownika.


args - Argumenty
string.

Określa dodatkowe argumenty wiersza polecenia używane do kompilowania. Te dane wejściowe są przydatne, jeśli chcesz użyć -target lub -project zamiast określać obszar roboczy i schemat.


cwd - Katalog roboczy
string.

Określa katalog roboczy dla przebiegów kompilacji. Domyślnie jest to katalog główny repozytorium.


outputPattern - Katalog wyjściowy
string. Wymagane. Wartość domyślna: output/$(SDK)/$(Configuration).

Określa ścieżkę względną, w której są umieszczane dane wyjściowe kompilacji (pliki binarne).


xcodeDeveloperDir - Ścieżka dewelopera Xcode
string.

Opcjonalny. Określa ścieżkę do folderu Xcode Developer, jeśli nie jest to domyślny system. Do użycia, gdy w systemie jest zainstalowanych wiele wersji programu Xcode. Na przykład: /Applications/Xcode 7.app/Contents/Developer.


useXcpretty - Korzystanie z elementu xcpretty
boolean. Wartość domyślna: false.

Formatuje xcodebuild dane wyjściowe i generuje raport wyników testu JUnit. Należy zainstalować na hostach agentów. Dowiedz się więcej o xcpretty.


publishJUnitResults - Publikowanie w usłudze VSTS/TFS
boolean. Wartość domyślna: false.

Wyniki testów JUnit, które zostały utworzone przy użyciu xctool , są publikowane w usłudze VSTS/TFS.


useXctool - Korzystanie z narzędzia xctool
boolean.

Używa xctool zamiast .xcodebuild Należy zainstalować na hostach agentów. Dowiedz się więcej o narzędziu xctool.
Uwaga:xctool jest przestarzały i nie działa z programem Xcode 8.


xctoolReporter - xctool Test Reporter Format
string.

Testuje format reportera, aby używać, gdy jest określona akcja testowa i jest sprawdzana wartość Użyj narzędzia xctool . Określ junit:output-file-path-here.xml , aby wygenerować format pliku zgodny z zadaniem Publikuj wyniki testu. Po określeniu zwykły jest automatycznie dodawany. xctool musi być zainstalowany na hostach agentów. Dowiedz się więcej o narzędziu xctool.
Uwaga:xctool jest przestarzały i nie działa z programem Xcode 8.


Opcje sterowania zadania

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań. Aby uzyskać więcej informacji, zobacz Opcje sterowania i typowe właściwości zadań.

Zmienne wyjściowe

Brak.

Wymagania

Wymaganie Opis
Typy potoków YAML, kompilacja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Agenci hostowani samodzielnie muszą mieć możliwości zgodne z następującymi wymaganiami dotyczącymi uruchamiania zadań korzystających z tego zadania: xcode
Możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
Ograniczenia poleceń Dowolne
Zmienne w formie tabeli settable Dowolne
Wersja agenta Wszystkie obsługiwane wersje agentów.
Kategoria zadania Kompilacja