Kepiye GitLab karo fastlane nglumpukake, menehi tandha lan nerbitake aplikasi iOS menyang App Store.
We bubar wis
Kene kita bakal njupuk
Sawetara tembung babagan konfigurasi Apple Store
Kita butuh aplikasi App Store, sertifikat distribusi, lan profil provisioning kanggo nggabungake kabeh.
Sing paling angel ing kene yaiku nyetel hak teken ing App Store. Muga-muga sampeyan bisa ngerteni iki dhewe. Yen sampeyan lagi anyar, Aku bakal nuduhake sampeyan ing arah tengen, nanging kita ora bakal pirembagan bab intricacies saka ngatur sertifikat Apple kene, lan padha saya ganti. Kiriman iki bakal mbantu sampeyan miwiti.
Aplikasi Kula
Sampeyan mbutuhake app ing App Store Connect supaya sampeyan duwe ID kanggo konfigurasi .xcodebuild
. Profil lan ID aplikasi nggabungake kode mbangun, rega lan kasedhiyan, lan konfigurasi TestFlight kanggo nyebarake aplikasi tes menyang pangguna. Aja nindakake tes umum, tes pribadi bakal cukup yen sampeyan duwe klompok cilik, persiyapan sing gampang, lan ora mbutuhake ijin tambahan saka Apple.
Profil wiwitan
Saliyane persiyapan app, sampeyan butuh distribusi lan kunci pangembangan iOS sing digawe ing bagean Sertifikat, Pengenal & Profil ing konsol Pangembang Apple. Kabeh sertifikat kasebut bisa digabung dadi profil provisioning.
Pangguna sing bakal diotentikasi kudu bisa nggawe sertifikat, yen ora, langkah-langkah kasebut
opsi liyane
Saliyane cara sing gampang iki, ana cara liya kanggo ngatur sertifikat lan profil. Dadi, yen sampeyan kerja kanthi beda, sampeyan bisa uga kudu adaptasi. Sing paling penting yaiku sampeyan butuh konfigurasi .xcodebuild
, sing bakal nuduhake file sing dibutuhake, lan keychain kudu kasedhiya ing komputer mbangun kanggo pangguna sing jenenge runner mlaku. Kanggo teken digital kita nggunakake fastlane, lan yen ana masalah utawa sampeyan pengin ngerti liyane, mriksa metu rincian
Ing conto iki aku nggunakake pendekatan
Nyiyapake GitLab lan fastlane
Persiapan CI Runner
Sawise ngumpulake kabeh data iki, kita pindhah menyang konfigurasi runner GitLab ing piranti MacOS. Sayange, sampeyan mung bisa nggawe aplikasi iOS ing MacOS. Nanging kabeh bisa diganti, lan yen sampeyan ngarepake kemajuan ing wilayah iki, ngawasi proyek kaya
Nggawe pelari gampang banget. Tindakake saiki
Cathetan. Pelari kudu nggunakake program sing bisa dieksekusi shell
. Iki dibutuhake kanggo mbangun iOS ing macOS supaya bisa langsung dadi pangguna tinimbang liwat wadhah. Yen sampeyan nggunakake shell
, bangunan lan testing dileksanakake minangka pangguna runner, langsung ing inang mbangun. Ora aman kaya wadhah, dadi luwih apik browsing
sudo curl --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-darwin-amd64
sudo chmod +x /usr/local/bin/gitlab-runner
cd ~
gitlab-runner install
gitlab-runner start
Apple Keychain kudu dikonfigurasi ing host iki kanthi akses menyang tombol sing kudu dibangun Xcode. Cara paling gampang kanggo nguji iki yaiku mlebu minangka pangguna sing bakal mbukak mbangun lan nyoba mbangun kanthi manual. Yen sistem njaluk akses keychain, pilih Tansah Allow kanggo CI bisa digunakake. Sampeyan bisa uga kudu mlebu lan nonton saluran pipa pisanan kanggo mesthekake yen dheweke ora njaluk gantungan kunci maneh. Masalahe yaiku Apple ora nggampangake kita nggunakake mode Otomatis, nanging yen wis rampung, kabeh bakal apik.
fastlane init
Kanggo nggunakake fastlane ing proyek, mbukak fastlane init
. Mung tindakake
Ing direktori proyek sampeyan, jalanake printah iki:
xcode-select --install
sudo gem install fastlane -NV
# Alternatively using Homebrew
# brew cask install fastlane
fastlane init
fastlane bakal njaluk konfigurasi dhasar banjur nggawe folder fastlane ing proyek kasebut kanthi telung file:
1. fastlane/Appfile
Ora ana sing rumit ing kene. Priksa manawa Apple ID lan App ID wis bener.
app_identifier("com.vontrance.flappybird") # The bundle identifier of your app
apple_id("[email protected]") # Your Apple email address
2. fastlane/Fastfile
Fastfile
nemtokake langkah-langkah mbangun. Kita nggunakake akeh fitur sing dibangun ing fastlane, mula kabeh uga jelas ing kene. Kita nggawe siji baris sing nampa sertifikat, nindakake perakitan lan diunggah menyang TestFlight. Sampeyan bisa mbagi proses iki dadi tugas sing beda yen perlu. Kabeh operasi kasebut (get_certificates
, get_provisioning_profile
, gym
и upload_to_testflight
) wis kalebu ing fastlane.
Tindakan get_certificates
и get_provisioning_profile
gegayutan karo pendekatan teken
default_platform(:ios)
platform :ios do
desc "Build the application"
lane :flappybuild do
get_certificates
get_provisioning_profile
gym
upload_to_testflight
end
end
3. fastlane/Gymfile
Iki minangka file opsional, nanging aku nggawe kanthi manual kanggo ngganti direktori output standar lan nyelehake output ing folder saiki. Iki nyederhanakake CI. Yen kasengsem, maca babagan gym
lan paramèter ing
https://docs.fastlane.tools/actions/gym/
Kito .gitlab-ci.yml
Dadi, kita duwe pelari CI kanggo proyek kasebut lan kita siap nguji pipa kasebut. Ayo ndeleng apa sing ana ing .gitlab-ci.yml
:
stages:
- build
variables:
LC_ALL: "en_US.UTF-8"
LANG: "en_US.UTF-8"
GIT_STRATEGY: clone
build:
stage: build
script:
- bundle install
- bundle exec fastlane flappybuild
artifacts:
paths:
- ./FlappyBird.ipa
Все отлично! clone
karo eksekusi program shell
, supaya kita duwe ruang kerja sing resik kanggo saben perakitan, lan mung nelpon flappybuild
fastlane, kaya sing katon ing ndhuwur. Akibaté, kita entuk perakitan, teken lan panyebaran rakitan paling anyar ing TestFlight.
Kita uga njaluk artefak lan nyimpen karo perakitan. Wigati dimangerteni manawa format kasebut .ipa
minangka eksekusi ARM sing ditandatangani sing ora bisa digunakake ing simulator. Yen sampeyan pengin output kanggo simulator, mung nambah target mbangun sing mrodhuksi, lan banjur kalebu ing path artefak.
Variabel lingkungan liyane
Ana sawetara variabel lingkungan ing kene sing nggawe kabeh bisa digunakake.
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD
и FASTLANE_SESSION
Otentikasi kanggo fastlane dibutuhake kanggo otentikasi ing App Store lan upload menyang TestFlight. Kanggo nindakake iki, gawe sandhi kanggo aplikasi sing bakal digunakake ing CI. Rincian
Yen sampeyan duwe otentikasi rong faktor, gawe variabel FASTLANE_SESSION
(instruksi ana).
FASTLANE_USER
и FASTLANE_PASSWORD
sing FASTLANE_USER
и FASTLANE_PASSWORD
. Rincian
Ing kesimpulan
Sampeyan bisa ndeleng carane iku kabeh bisa
Muga-muga iki bisa mbantu lan menehi inspirasi kanggo nggarap bangunan iOS ing proyek GitLab. Iki liyane CI_BUILD_ID
(kanggo mbangun tambahan) kanggo
Fitur keren liyane saka fastlane yaiku
Marang kita ing komentar babagan pengalaman lan nuduhake gagasan kanggo nambah GitLab kanggo pangembangan app iOS.
Source: www.habr.com