Indlela i-GitLab ene-fastlane eqokelela ngayo, isayine kwaye ipapashe usetyenziso lwe-iOS kwi-App Store.
Kutshanje siye safumana
Apha siza kuthatha
Amagama ambalwa malunga noqwalaselo lwe-Apple Store
Siza kudinga i-App Store app, izatifikethi zokusasaza, kunye neprofayile yolungiselelo ukuze sibophe yonke into kunye.
Eyona nto inzima apha kukuseta amalungelo okusayina kwi-App Store. Ndiyathemba ukuba ungazicingela ngokwakho oku. Ukuba umtsha, ndiza kukwalathisa kwicala elifanelekileyo, kodwa asizukuthetha malunga nobugocigoci bokulawula izatifikethi zika-Apple apha, kwaye zihlala zitshintsha. Esi sithuba siya kukunceda uqalise.
Iiapps zam
Udinga i-app kwi-App Store Connect ukuze ube ne-ID yoqwalaselo .xcodebuild
. Iprofayili kunye ne-ID yesicelo idibanisa ikhowudi yokwakha, amaxabiso kunye nokufumaneka, kunye noqwalaselo lweTestFlight yokusabalalisa izicelo zovavanyo kubasebenzisi. Sukwenza uvavanyo lukawonke-wonke, uvavanyo lwabucala luya kwanela ukuba uneqela elincinane, ukuseta lula, kwaye awudingi mvume ezongezelelweyo kwi-Apple.
Iprofayile yokuqalisa
Ukongeza kulungiselelo lwe-app, udinga ukuhanjiswa kwe-iOS kunye nezitshixo zophuhliso ezenziwe kwicandelo leZatifikethi, izichongi kunye neeProfayili ze-Apple Developer console. Zonke ezi zatifikethi zinokudityaniswa zibe yiprofayili yobonelelo.
Abasebenzisi abaya kuqinisekiswa kufuneka bakwazi ukwenza izatifikethi, ngaphandle koko amanyathelo
Ezinye iindlela
Ngaphandle kwale ndlela ilula, kukho ezinye iindlela zokuqwalasela izatifikethi kunye neeprofayili. Ke, ukuba usebenza ngokwahlukileyo, kuya kufuneka ulungelelanise. Eyona nto ibalulekileyo kukuba ufuna uqwalaselo .xcodebuild
, eya kukhomba kwiifayile eziyimfuneko, kwaye i-keychain kufuneka ifumaneke kwikhompyutheni yokwakha kumsebenzisi ophantsi kwegama lakhe umgijimi osebenzayo. Utyikityo lwedijithali sisebenzisa i-fastlane, kwaye ukuba kukho iingxaki okanye ufuna ukwazi ngakumbi, jonga iinkcukacha zabo
Kulo mzekelo ndisebenzisa indlela
Ukulungiselela i-GitLab kunye ne-fastlane
Ukulungiselela i-CI Runner
Emva kokuba siqokelele yonke le datha, siqhubela phambili kuqwalaselo lomgijimi weGitLab kwisixhobo seMacOS. Ngelishwa, unokwenza kuphela usetyenziso lwe-iOS kwi-MacOS. Kodwa yonke into inokutshintsha, kwaye ukuba ulindele inkqubela phambili kule ndawo, gcina iliso kwiiprojekthi ezifana
Ukumisela umgijimi kulula kakhulu. Landela yangoku
Phawula. Imbaleki kufuneka isebenzise inkqubo ephunyeziweyo shell
. Oku kuyafuneka ukwakha i-iOS kwi-macOS ukuze isebenze ngokuthe ngqo njengomsebenzisi kunokusebenzisa izitya. Ukuba usebenzisa shell
, Ukwakhiwa kunye novavanyo lwenziwa njengomqhubi womqhubi, ngokuthe ngqo kwi-host host. Ayikhuselekanga njengezikhongozeli, ngoko kungcono ukukhangela
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
I-Apple Keychain kufuneka iqwalaselwe kulo mkhosi ngokufikelela kwizitshixo ekufuneka iXcode izakhe. Eyona ndlela ilula yokuvavanya oku kukungena njengomsebenzisi oza kuqhuba ukwakha kwaye uzame ukuyakha ngesandla. Ukuba inkqubo icela ufikelelo lwesitshixo, khetha Hlala uvumela ukuba iCI isebenze. Kunokuba kufanelekile ukungena kwaye ubukele isibini sokuqala semibhobho ukuze uqiniseke ukuba abasabuzi ikhonkco elitshixo. Ingxaki kukuba i-Apple ayenzi kube lula ngathi ukusebenzisa imowudi ye-Auto, kodwa nje ukuba ihambe, yonke into iya kulunga.
fastlane init
Ukusebenzisa i-fastlane kwiprojekthi, qhuba fastlane init
. Landela nje
Kuluhlu lweprojekthi yakho, sebenzisa le miyalelo:
xcode-select --install
sudo gem install fastlane -NV
# Alternatively using Homebrew
# brew cask install fastlane
fastlane init
i-fastlane iyakucela uqwalaselo olusisiseko kwaye emva koko yenze ifolda ye-fastlane kwiprojekthi ngeefayile ezintathu:
1. fastlane/Appfile
Akukho nto inzima apha. Qiniseka nje ukuba i-ID yakho ye-Apple kunye ne-ID ye-App zichanekile.
app_identifier("com.vontrance.flappybird") # The bundle identifier of your app
apple_id("[email protected]") # Your Apple email address
2. fastlane/Fastfile
Fastfile
ichaza amanyathelo okwakha. Sisebenzisa uninzi lwezinto ezakhelwe ngaphakathi ze-fastlane, ke yonke into icacile nalapha. Senza umgca omnye ofumana izatifikethi, wenze indibano kwaye uyilayishe kwiTestFlight. Unokwahlula le nkqubo kwimisebenzi eyahlukeneyo ukuba kuyimfuneko. Yonke le misebenzi (get_certificates
, get_provisioning_profile
, gym
ΠΈ upload_to_testflight
) sele zibandakanyiwe kwi-fastlane.
Izenzo get_certificates
ΠΈ get_provisioning_profile
ezinxulumene nendlela yokutyikitya
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
Le yifayile ekhethwayo, kodwa ndiyenze ngesandla ukutshintsha ulawulo lwemveliso olungagqibekanga kwaye ndibeke imveliso kulawulo lwangoku. Oku kwenza lula iCI. Ukuba unomdla, funda malunga gym
kunye neeparamitha zayo ngaphakathi
https://docs.fastlane.tools/actions/gym/
Wethu .gitlab-ci.yml
Ngoko, sinomgijimi weCI weprojekthi kwaye sikulungele ukuvavanya umbhobho. Makhe sibone into esinayo .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
ngokwenziwa kwenkqubo shell
, ukuze sibe nendawo yokusebenzela ecocekileyo kwindibano nganye, kwaye ngokulula ufowunele flappybuild
fastlane, njengoko kubonwe ngasentla. Ngenxa yoko, sifumana indibano, ukutyikitya kunye nokuthunyelwa kwendibano yamva nje kwiTestFlight.
Siphinde sifumane i-artifact kwaye siyigcine kunye nendibano. Nceda uqaphele ukuba ifomathi .ipa
yi-ARM esayiniweyo ephunyeziweyo engasebenziyo kwisifanisi. Ukuba ufuna imveliso ye-simulator, yongeza nje into ekujoliswe kuyo yokwakha eyivelisayo, kwaye uyifake kwindlela ye-artifact.
Ezinye iinguqu zemo engqongileyo
Kukho iinguqu ezimbalwa zokusingqongileyo apha ezenza yonke into isebenze.
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD
ΠΈ FASTLANE_SESSION
Ukuqinisekiswa kwe-fastlane kuyafuneka ukuze kuqinisekiswe kwi-App Store kwaye ulayishe kwi-TestFlight. Ukwenza oku, yenza igama lokugqitha lesicelo esiza kusetyenziswa kwi-CI. Iinkcukacha
Ukuba unobungqina bezinto ezimbini, yenza utshintsho FASTLANE_SESSION
(imiyalelo apho).
FASTLANE_USER
ΠΈ FASTLANE_PASSWORD
ukuba FASTLANE_USER
ΠΈ FASTLANE_PASSWORD
. Iinkcukacha
Ekugqibeleni
Uyabona ukuba yonke into isebenza njani
Ndiyathemba ukuba oku kube luncedo kwaye kukuphefumlele ukuba usebenze nge-iOS yokwakha kwiprojekthi yeGitLab. Nantsi enye CI_BUILD_ID
(ulwakhiwo olongezelelweyo) ukuya
Olunye uphawu olupholileyo lwe-fastlane lu
Sixelele kumagqabantshintshi malunga namava akho kwaye wabelane ngezimvo zakho zokuphucula iGitLab yophuhliso losetyenziso lwe-iOS.
umthombo: www.habr.com