Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Gunakan tugas ini untuk membangun ruang kerja Xcode di macOS.
Sintaksis
# 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.
Masukan
Tindakan actions -
string. Dibutuhkan. Nilai default: build.
Menentukan daftar tindakan yang dibatasi spasi. Opsi yang valid adalah build, clean, test, analyze, dan archive. Misalnya, build clean melakukan build bersih. Lihat Apple: Membangun dari baris perintah dengan FAQ Xcode.
Konfigurasi configuration -
string. Nilai default: $(Configuration).
Menentukan proyek Xcode atau konfigurasi ruang kerja yang akan dibangun. Saat menggunakan variabel, tentukan nilai (misalnya, Release) pada tab Variabel.
SDK sdk -
string. Nilai default: $(SDK).
Membangun proyek atau ruang kerja Xcode terhadap SDK yang ditentukan. Jalankan xcodebuild -showsdks untuk melihat daftar SDK yang valid.
xcWorkspacePath
-
Jalur Ruang Kerja/Proyek
string. Nilai default: **/*.xcodeproj/*.xcworkspace.
Fakultatif. Menentukan jalur relatif dari akar repositori ke ruang kerja atau proyek Xcode. Misalnya: MyApp/MyApp.xcworkspace atau MyApp/MyApp.xcworkspace/MyApp.xcodeproj.
Biarkan kosong jika Anda ingin menggunakan -target flag di bawah Argumen Tingkat Lanjut .
Skema scheme -
string.
Fakultatif. Menentukan nama skema Xcode. Harus berupa skema bersama (kotak centang bersama di bawah Skema Terkelola di Xcode). Diperlukan jika Ruang Kerja ditentukan.
packageApp
-
Membuat Paket Aplikasi
boolean. Nilai default: true.
Menentukan apakah IPA dihasilkan sebagai bagian dari build. Untuk mengekspor arsip dengan Xcode 7 dan Xcode 8, tinjau input tambahan di bagian Opsi Paket.
packageTool
-
Buat Paket (IPA) menggunakan
string. Dibutuhkan. Nilai yang diizinkan: xcrun (xcrun (tidak digunakan lagi oleh Apple)), xcodebuild (arsip dan ekspor xcodebuild). Nilai default: xcodebuild.
Menentukan alat yang akan digunakan untuk menghasilkan IPA.
Jalur Arsip archivePath -
string. Fakultatif. Gunakan saat packageTool == xcodebuild.
Menentukan direktori tempat arsip yang dibuat ditempatkan.
Jalur Ekspor exportPath -
string. Fakultatif. Gunakan saat packageTool == xcodebuild. Nilai default: output/$(SDK)/$(Configuration).
Menentukan tujuan untuk produk yang diekspor dari arsip.
Opsi Ekspor exportOptions -
string. Fakultatif. Gunakan saat packageTool == xcodebuild. Nilai yang diizinkan: auto, plist, specify. Nilai default: auto.
Menentukan cara untuk meneruskan Opsi Ekspor saat mengekspor arsip.
Metode Ekspor exportMethod -
string. Diperlukan saat exportOptions == specify. Nilai default: development.
Menentukan metode yang digunakan Xcode untuk mengekspor arsip. Misalnya, app-store, package, ad-hoc, enterprise, atau development.
ID Tim exportTeamId -
string. Fakultatif. Gunakan saat exportOptions == specify.
Menentukan ID tim 10 digit Portal Pengembang Apple yang akan digunakan untuk ekspor.
Plist Opsi Ekspor exportOptionsPlist -
string. Diperlukan saat exportOptions == plist.
Menentukan jalur ke file plist yang mengonfigurasi ekspor arsip.
xcode8AutomaticSigning
-
Penandatanganan Otomatis
boolean. Nilai default: false.
Gunakan input ini jika Anda memiliki proyek Xcode 8 atau Xcode 9 yang dikonfigurasi untuk Penandatanganan Otomatis.
ID Tim teamId -
string. Fakultatif. Gunakan saat xcode8AutomaticSigning = true.
Menentukan ID tim pengembang 10 digit. Ini diperlukan jika Anda adalah anggota dari beberapa tim pengembangan.
signMethod
-
Mengambil Alih Menggunakan
string. Nilai yang diizinkan: file (Konten File), id (Pengidentifikasi). Nilai default: file.
Gunakan input ini jika build menggunakan metode penandatanganan atau provisi yang berbeda dari default. Pilih File Contents untuk menggunakan sertifikat P12 dan profil provisi. Pilih Identifiers untuk mengambil pengaturan penandatanganan dari rantai kunci default dan profil yang telah diinstal sebelumnya. Biarkan bidang yang sesuai kosong jika Anda tidak ingin mengambil alih pengaturan build default.
Identitas Penandatanganan iosSigningIdentity -
string. Fakultatif. Gunakan saat signMethod = id.
Menentukan penggantian identitas penandatanganan yang digunakan untuk menandatangani build. Default ke pengaturan proyek Xcode. Membuka Kunci Default mungkin perlu dipilih.
unlockDefaultKeychain
-
Membuka kunci Rantai Kunci Default
boolean. Fakultatif. Gunakan saat signMethod = id. Nilai default: false.
Mengatasi interaksi Pengguna tidak diizinkan kesalahan dengan membuka kunci rantai kunci default.
defaultKeychainPassword
-
Kata Sandi Rantai Kunci Default
string. Fakultatif. Gunakan saat signMethod = id.
Menentukan kata sandi untuk membuka kunci rantai kunci default.
UUID Profil Provisi provProfileUuid -
string. Fakultatif. Gunakan saat signMethod = id.
Menentukan UUID profil provisi yang diinstal untuk digunakan untuk build. Gunakan tugas build terpisah dengan skema atau target yang berbeda untuk menentukan profil provisi berdasarkan target dalam satu ruang kerja (iOS, WatchKit, tvOS).
File Sertifikat p12 - P12
string. Fakultatif. Gunakan saat signMethod = file.
Menentukan jalur relatif ke file sertifikat P12 berformat PKCS12 yang berisi sertifikat penandatanganan yang akan digunakan untuk build.
Kata Sandi p12pwd - P12
string. Fakultatif. Gunakan saat signMethod = file.
Menentukan kata sandi ke file sertifikat P12 jika ditentukan. Gunakan variabel build untuk mengenkripsi.
File Profil Provisi provProfile -
string. Fakultatif. Gunakan saat signMethod = file.
Menentukan jalur relatif ke file yang berisi penimpaan profil provisi yang akan digunakan untuk build. Gunakan tugas build terpisah dengan skema atau target yang berbeda untuk menentukan profil provisi berdasarkan target dalam satu ruang kerja (iOS, WatchKit, tvOS).
removeProfile
-
Hapus Profil Setelah Build
boolean. Fakultatif. Gunakan saat signMethod = file. Nilai default: false.
Menghapus konten file profil provisi dari agen build setelah build selesai. Hanya periksa apakah Anda menjalankan satu agen per pengguna.
Argumen
string.
Menentukan argumen baris perintah tambahan yang digunakan untuk membangun. Input ini berguna jika Anda ingin menggunakan -target atau -project alih-alih menentukan ruang kerja dan skema.
Direktori Kerja
string.
Menentukan direktori kerja untuk eksekusi build. Default ke akar repositori.
Direktori Output outputPattern -
string. Dibutuhkan. Nilai default: output/$(SDK)/$(Configuration).
Menentukan jalur relatif tempat output build (biner) ditempatkan.
Jalur Pengembang xcodeDeveloperDir - Xcode
string.
Fakultatif. Menentukan jalur ke folder Pengembang Xcode jika bukan default sistem. Untuk digunakan saat beberapa versi Xcode diinstal pada sistem. Misalnya: /Applications/Xcode 7.app/Contents/Developer.
useXcpretty
-
Gunakan xcpretty
boolean. Nilai default: false.
Format xcodebuild output dan menghasilkan laporan hasil pengujian JUnit. Harus diinstal pada host agen. Pelajari selengkapnya tentang xcpretty .
publishJUnitResults
-
Terbitkan ke vsts/TFS
boolean. Nilai default: false.
Hasil pengujian JUnit yang diproduksi menggunakan xctool diterbitkan ke VSTS/TFS.
useXctool
-
Gunakan xctool
boolean.
Menggunakan xctool alih-alih xcodebuild. Harus diinstal pada host agen. Pelajari selengkapnya tentang xctool .
Catatan:xctool tidak digunakan lagi dan tidak berfungsi dengan Xcode 8.
xctoolReporter
-
Format Reporter Uji xctool
string.
Menguji format wartawan untuk digunakan saat tindakan pengujian ditentukan dan Gunakan xctool dicentang. Tentukan junit:output-file-path-here.xml untuk menghasilkan format file yang kompatibel dengan tugas Terbitkan Hasil Pengujian. Jika ditentukan, biasa ditambahkan secara otomatis.
xctool harus diinstal pada host agen. Pelajari selengkapnya tentang xctool .
Catatan:xctool tidak digunakan lagi dan tidak berfungsi dengan Xcode 8.
Opsi kontrol tugas
Semua tugas memiliki opsi kontrol selain input tugasnya. Untuk informasi selengkapnya, lihat opsi Kontrol dan properti tugas umum.
Variabel output
Tidak ada.
Persyaratan
| Persyaratan | Deskripsi |
|---|---|
| Jenis alur | YAML, Build klasik |
| Berjalan pada | Agen, DeploymentGroup |
| Permintaan |
Agen yang dihost sendiri harus memiliki kemampuan yang cocok dengan berikut menuntut untuk menjalankan pekerjaan yang menggunakan tugas ini: xcode |
| Kemampuan |
Tugas ini tidak memenuhi tuntutan apa pun untuk tugas berikutnya dalam pekerjaan. |
| pembatasan Perintah |
Apapun |
| variabel yang Dapat Diatur |
Apapun |
| Versi agen | Semua versi agen yang didukung. |
| Kategori tugas | Membangun |