Ahoana ny fomba fanangonana, fanaovana sonia ary famoahana ny fampiharana iOS amin'ny App Store ny GitLab miaraka amin'ny fastlane.
Vao haingana izahay no nanana
Eto no horaisintsika
Teny vitsivitsy momba ny fanamboarana Apple Store
Mila fampiharana App Store, mari-pankasitrahana fitsinjarana, ary mombamomba famatsiana izahay mba hampifandray ny zava-drehetra.
Ny zavatra sarotra indrindra eto dia ny fametrahana zo sonia ao amin'ny App Store. Manantena aho fa azonao fantarina manokana izany. Raha vaovao ianao dia hanoro anao amin'ny lalana marina aho, fa tsy hiresaka momba ny saro-pady amin'ny fitantanana ny certificat Apple eto izahay, ary miova tsy tapaka. Ity lahatsoratra ity dia hanampy anao hanomboka.
Ny Apps
Mila fampiharana ao amin'ny App Store Connect ianao mba hanananao ID ho an'ny fanitsiana .xcodebuild
. Ny mombamomba sy ny ID fampiharana dia manambatra ny fananganana kaody, ny vidiny ary ny fahafaha-manao, ary ny fanamafisana TestFlight amin'ny fizarana rindranasa fitsapana amin'ny mpampiasa. Aza manao fitiliana ho an'ny daholobe, dia ho ampy ny fitiliana manokana raha manana vondrona kely ianao, mora apetraka ary tsy mila fahazoan-dΓ lana fanampiny avy amin'ny Apple.
Profile fanombohana
Ho fanampin'ny fametrahana fampiharana dia mila fanalahidin'ny fizarana sy fampandrosoana iOS noforonina ao amin'ny fizarana Certificates, Identifiers & Profiles ao amin'ny console Apple Developer ianao. Ireo mari-pankasitrahana rehetra ireo dia azo atambatra amin'ny mombamomba ny provisioning.
Ireo mpampiasa izay hohamarinina dia mila afaka mamorona taratasy fanamarinana, raha tsy izany ny dingana
safidy hafa
Ankoatra an'io fomba tsotra io dia misy fomba hafa hanamboarana certificat sy profil. Noho izany, raha miasa amin'ny fomba hafa ianao dia mety tsy maintsy mampifanaraka. Ny zava-dehibe indrindra dia ny hoe mila configuration ianao .xcodebuild
, izay hanondro ireo rakitra ilaina, ary ny rojom-panalahidy dia tsy maintsy ho hita ao amin'ny solosaina fananganana ho an'ny mpampiasa izay mitondra ny anarana hoe mpihazakazaka. Ho an'ny sonia nomerika dia mampiasa fastlane izahay, ary raha misy olana na te hahalala bebe kokoa dia jereo ny antsipirian'izy ireo
Amin'ity ohatra ity dia mampiasa fomba fiasa aho
Manomana GitLab sy fastlane
Manomana CI Runner
Rehefa voaangona ireo angon-drakitra rehetra ireo dia miroso amin'ny fanamboarana ny mpihazakazaka GitLab amin'ny fitaovana MacOS izahay. Indrisy anefa fa amin'ny MacOS ihany no ahafahanao manao fampiharana iOS. Saingy mety hiova ny zava-drehetra, ary raha manantena fandrosoana amin'ity sehatra ity ianao, dia diniho ny tetikasa toy ny
Ny fametrahana ny mpihazakazaka dia tena tsotra. Araho ny ankehitriny
Fanamarihana. Ny mpihazakazaka dia tsy maintsy mampiasa programa azo tanterahana shell
. Ilaina izany mba hananganana iOS amin'ny macOS mba hiasa mivantana amin'ny maha mpampiasa azy fa tsy amin'ny alalan'ny kaontenera. Raha mampiasa ianao shell
, ny fanorenana sy ny fitiliana dia atao amin'ny maha-mpampiasa mpihazakazaka, mivantana amin'ny mpampiantrano fananganana. Tsy azo antoka toy ny kaontenera izany, ka tsara kokoa ny mijery
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 dia tsy maintsy amboarina amin'ity mpampiantrano ity miaraka amin'ny fidirana amin'ny fanalahidy izay ilain'ny Xcode. Ny fomba tsotra indrindra hitsapana izany dia ny miditra amin'ny maha-mpampiasa azy izay hampandeha ny fananganana ary manandrana manamboatra azy amin'ny tanana. Raha mangataka fidirana amin'ny keychain ny rafitra dia fidio Avelao hiasa foana ny CI. Mety ilaina ny miditra sy mijery ireo fantsona roa voalohany mba hahazoana antoka fa tsy hangataka ny rojo fanalahidy intsony izy ireo. Ny olana dia ny Apple dia tsy manamora ny fampiasana ny Auto mode, fa rehefa mandeha ianao dia hilamina ny zava-drehetra.
fastlane init
Raha hampiasa fastlane amin'ny tetikasa iray, mihazakazaka fastlane init
. Araho fotsiny
Ao amin'ny lahatahiry tetikasanao, araho ireto baiko ireto:
xcode-select --install
sudo gem install fastlane -NV
# Alternatively using Homebrew
# brew cask install fastlane
fastlane init
Fastlane dia hangataka fikandrana fototra ary avy eo mamorona lahatahiry fastlane amin'ny tetikasa misy rakitra telo:
1. fastlane/Appfile
Tsy misy zavatra sarotra eto. Ataovy azo antoka fa marina ny Apple ID sy App ID.
app_identifier("com.vontrance.flappybird") # The bundle identifier of your app
apple_id("[email protected]") # Your Apple email address
2. fastlane/Fastfile
Fastfile
mamaritra ny dingana fananganana. Mampiasa endri-javatra maro an'ny fastlane izahay, noho izany dia mazava ny zava-drehetra eto. Mamorona tsipika iray izay mahazo mari-pankasitrahana izahay, manatanteraka ny fivoriambe ary mampakatra izany amin'ny TestFlight. Azonao zaraina ho asa samihafa io dingana io raha ilaina. Ireo hetsika rehetra ireo (get_certificates
, get_provisioning_profile
, gym
ΠΈ upload_to_testflight
) dia efa tafiditra ao anatin'ny fastlane.
ΠΠ΅ΠΉΡΡΠ²ΠΈΡ get_certificates
ΠΈ get_provisioning_profile
mifandraika amin'ny fomba fanaovana sonia
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
Ity dia rakitra azo atao, saingy noforoniko tamin'ny tanana izany mba hanovana ny lahatahiry famoahana default ary hametraka ny vokatra ao amin'ny lahatahiry ankehitriny. Manamora ny CI izany. Raha liana dia vakio ny momba ny gym
sy ny paramètre ao
https://docs.fastlane.tools/actions/gym/
ny .gitlab-ci.yml
Noho izany, manana mpihazakazaka CI ho an'ny tetikasa izahay ary vonona ny hitsapa ny fantsona. Andeha hojerentsika izay ananantsika .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
miaraka amin'ny fampiharana programa shell
, mba hanananay toeram-piasana madio ho an'ny fivoriambe tsirairay, ary antsoy fotsiny flappybuild
fastlane, araka ny hita etsy ambony. Vokatr'izany dia mahazo ny fivoriambe, ny sonia ary ny fametrahana ny fivoriambe farany amin'ny TestFlight.
Mahazo ny artifact koa izahay ary mitahiry izany miaraka amin'ny fivoriambe. Mariho fa ny format .ipa
dia executable ARM voasonia izay tsy mandeha amin'ny simulator. Raha mila vokatra ho an'ny simulator ianao, ampio fotsiny ny tanjona fananganana izay mamokatra azy, ary ampidiro ao amin'ny lalan'ny artifact.
Variable tontolo iainana hafa
Misy karazany roa ny tontolo iainana eto izay mampandeha ny zava-drehetra.
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD
ΠΈ FASTLANE_SESSION
Ny fanamarinana ho an'ny fastlane dia takiana mba hanamarinana ao amin'ny App Store ary ampidiro ao amin'ny TestFlight. Mba hanaovana izany, mamorona tenimiafina ho an'ny fampiharana izay hampiasaina amin'ny CI. tsipiriany
Raha manana fanamarinana roa lafin-javatra ianao dia mamorona faribolana FASTLANE_SESSION
(torohevitra eo).
FASTLANE_USER
ΠΈ FASTLANE_PASSWORD
fa FASTLANE_USER
ΠΈ FASTLANE_PASSWORD
. tsipiriany
Ho famaranana
Hitanao ny fomba fiasan'izy rehetra
Manantena aho fa nanampy sy nanentana anao hiasa amin'ny fananganana iOS amin'ny tetikasa GitLab izany. Ity misy iray hafa CI_BUILD_ID
(ho an'ny fananganana incremental) ho
Ny endri-javatra mahafinaritra hafa amin'ny fastlane dia
Lazao anay amin'ny fanehoan-kevitra momba ny traikefanao ary zarao ny hevitrao hanatsarana ny GitLab ho an'ny fampivoarana fampiharana iOS.
Source: www.habr.com