Mar a bhios GitLab le fastlane a’ cruinneachadh, a’ soidhnigeadh agus a’ foillseachadh thagraidhean iOS don App Store.
Bha againn o chionn ghoirid
An seo bheir sinn
Beagan fhaclan mu rèiteachadh Apple Store
Bidh feum againn air app App Store, teisteanasan cuairteachaidh, agus ìomhaigh solarachaidh gus a h-uile càil a cheangal ri chèile.
Is e an rud as duilghe an seo còraichean soidhnidh a stèidheachadh anns an App Store. Tha mi an dòchas gun urrainn dhut seo a thuigsinn dhut fhèin. Ma tha thu ùr, seallaidh mi thu anns an t-slighe cheart, ach cha bhith sinn a’ bruidhinn mu na duilgheadasan a th’ ann a bhith a’ riaghladh theisteanasan Apple an seo, agus tha iad an-còmhnaidh ag atharrachadh. Cuidichidh am post seo thu gus tòiseachadh.
Na h-aplacaidean agam
Feumaidh tu app ann an App Store Connect gus am bi ID agad airson rèiteachadh .xcodebuild
. Bidh am pròifil agus ID an tagraidh a ’cothlamadh togail còd, prìsean agus ruigsinneachd, agus rèiteachadh TestFlight airson a bhith a’ sgaoileadh thagraidhean deuchainn gu luchd-cleachdaidh. Na dèan deuchainnean poblach, bidh deuchainnean prìobhaideach gu leòr ma tha buidheann bheag agad, suidheachadh furasta, agus mura bheil feum agad air ceadan a bharrachd bho Apple.
Pròifil tòiseachaidh
A bharrachd air suidheachadh na h-aplacaid, feumaidh tu iuchraichean cuairteachaidh is leasachaidh iOS a chaidh a chruthachadh anns an roinn Teisteanasan, Aithneadairean & Pròifilean ann an consol Apple Developer. Faodar na teisteanasan sin uile a chur còmhla ann an ìomhaigh solarachaidh.
Feumaidh luchd-cleachdaidh a thèid a dhearbhadh a bhith comasach air teisteanasan a chruthachadh, air dhòigh eile na ceumannan
roghainnean eile
A bharrachd air an dòigh shìmplidh seo, tha dòighean eile ann airson teisteanasan agus pròifilean a rèiteachadh. Mar sin, ma tha thu ag obair ann an dòigh eadar-dhealaichte, is dòcha gum feum thu atharrachadh. Is e an rud as cudromaiche gum feum thu rèiteachadh .xcodebuild
, a chomharraicheas na faidhlichean riatanach, agus feumaidh an keychain a bhith ri fhaighinn air a’ choimpiutair togail airson an neach-cleachdaidh fon ainm a tha an ruitheadair a’ ruith. Airson ainm-sgrìobhte didseatach bidh sinn a’ cleachdadh fastlane, agus ma tha duilgheadasan ann no ma tha thu airson barrachd fhaighinn a-mach, thoir sùil air an fhiosrachadh aca
Anns an eisimpleir seo tha mi a 'cleachdadh an dòigh-obrach
Ag ullachadh GitLab agus fastlane
Ag ullachadh CI Runner
Às deidh dhuinn an dàta seo gu lèir a chruinneachadh, gluaisidh sinn air adhart gu rèiteachadh an ruitheadair GitLab air inneal MacOS. Gu mì-fhortanach, chan urrainn dhut ach aplacaidean iOS a dhèanamh air macOS. Ach faodaidh a h-uile càil atharrachadh, agus ma tha thu an dùil adhartas san raon seo, cùm sùil air pròiseactan mar
Tha stèidheachadh an ruitheadair gu math sìmplidh. Lean an t-sruth
Thoir an aire. Feumaidh an ruitheadair prògram so-ghnìomhaichte a chleachdadh shell
. Tha seo riatanach gus iOS a thogail air macOS gus obrachadh gu dìreach mar neach-cleachdaidh seach tro shoithichean. Ma tha thu a 'cleachdadh shell
, togail agus deuchainn air an coileanadh mar an neach-cleachdaidh ruith, gu dìreach air an aoigh togail. Chan eil e cho tèarainte ri soithichean, agus mar sin tha e nas fheàrr brobhsadh
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
Feumaidh Apple Keychain a bhith air a rèiteachadh air an aoigh seo le ruigsinneachd air na h-iuchraichean a dh'fheumas Xcode a thogail. Is e an dòigh as fhasa seo a dhearbhadh logadh a-steach mar an neach-cleachdaidh a ruitheas an togail agus a dh'fheuchas ri a thogail le làimh. Ma dh’ iarras an siostam ruigsinneachd air an keychain, tagh an-còmhnaidh Leig le CI obrachadh. Is dòcha gum b’ fhiach a dhol a-steach agus coimhead air a’ chiad loidhne-phìoban no dhà gus dèanamh cinnteach nach iarr iad an keychain tuilleadh. Is e an trioblaid nach eil Apple ga dhèanamh furasta dhuinn modh fèin-ghluasadach a chleachdadh, ach aon uair ‘s gum faigh thu air adhart, bidh a h-uile dad gu math.
fastlane init
Gus fastlane a chleachdadh ann am pròiseact, ruith fastlane init
. Dìreach lean
Anns an eòlaire pròiseict agad, ruith na h-òrdughan seo:
xcode-select --install
sudo gem install fastlane -NV
# Alternatively using Homebrew
# brew cask install fastlane
fastlane init
iarraidh fastlane rèiteachadh bunaiteach agus an uairsin cruthaichidh e pasgan fastlane sa phròiseact le trì faidhlichean:
1. fastlane/Appfile
Chan eil dad iom-fhillte an seo. Dìreach dèan cinnteach gu bheil an ID Apple agus an ID App agad ceart.
app_identifier("com.vontrance.flappybird") # The bundle identifier of your app
apple_id("[email protected]") # Your Apple email address
2. fastlane/Fastfile
Fastfile
a 'mìneachadh nan ceumannan togail. Bidh sinn a’ cleachdadh mòran de fheartan togte fastlane, agus mar sin tha a h-uile dad soilleir an seo cuideachd. Bidh sinn a’ cruthachadh aon loidhne a gheibh teisteanasan, a’ coileanadh a’ cho-chruinneachaidh agus ga luchdachadh suas gu TestFlight. Faodaidh tu am pròiseas seo a roinn ann an diofar ghnìomhan ma tha sin riatanach. Tha na gnìomhan sin uile (get_certificates
, get_provisioning_profile
, gym
и upload_to_testflight
) mu thràth air an toirt a-steach do fastlane.
Gnìomhan get_certificates
и get_provisioning_profile
co-cheangailte ris an dòigh soidhnidh
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
Is e faidhle roghainneil a tha seo, ach chruthaich mi le làimh e gus an eòlaire toraidh bunaiteach atharrachadh agus an toradh a chuir sa phasgan gnàthach. Bidh seo a’ sìmpleachadh CI. Ma tha ùidh agad, leugh mu dheidhinn gym
agus na crìochan aige ann an
https://docs.fastlane.tools/actions/gym/
Ar .gitlab-ci.yml
Mar sin, tha ruitheadair CI againn airson a’ phròiseict agus tha sinn deiseil airson an loidhne-phìoban a dhearbhadh. Feuch sinn a-mach dè a th' againn ann .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
le prògram cur-an-gnìomh shell
, gus am bi àite-obrach glan againn airson gach co-chruinneachadh, agus dìreach gairm flappybuild
fastlane, mar a chithear gu h-àrd. Mar thoradh air an sin, gheibh sinn co-chruinneachadh, ainm-sgrìobhte agus cleachdadh an t-seanaidh as ùire ann an TestFlight.
Bidh sinn cuideachd a 'faighinn an artifact agus ga shàbhaladh leis a' cho-chruinneachadh. Thoir an aire gu bheil an cruth .ipa
tha soidhnigeadh ARM so-ghnìomhaichte nach eil a’ ruith san t-simuladair. Ma tha thu ag iarraidh toradh airson an simuladair, dìreach cuir ris an targaid togail a bhios ga dhèanamh, agus an uairsin cuir a-steach e san t-slighe artifact.
Caochladairean àrainneachd eile
Tha caochladair àrainneachd no dhà an seo a bheir air a h-uile càil obrachadh.
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD
и FASTLANE_SESSION
Tha feum air dearbhadh airson fastlane gus dearbhadh anns an App Store agus luchdachadh suas gu TestFlight. Gus seo a dhèanamh, cruthaich facal-faire airson an aplacaid a thèid a chleachdadh ann an CI. Mion-fhiosrachadh
Ma tha dearbhadh dà-fhactaraidh agad, cruthaich caochladair FASTLANE_SESSION
(stiùireadh an sin).
FASTLANE_USER
и FASTLANE_PASSWORD
gu bheil FASTLANE_USER
и FASTLANE_PASSWORD
. Mion-fhiosrachadh
Ann an co-dhùnadh
Chì thu mar a tha e uile ag obair
Tha mi an dòchas gun robh seo cuideachail agus air do bhrosnachadh gu bhith ag obair le iOS builds ann am pròiseact GitLab. Seo fear eile CI_BUILD_ID
(airson togail mean air mhean) gu
Is e feart fionnar eile de fastlane
Inns dhuinn anns na beachdan mun eòlas agad agus roinn do bheachdan airson leasachadh GitLab airson leasachadh app iOS.
Source: www.habr.com