Buga aikace-aikacen iOS zuwa App Store tare da GitLab da fastlane

Buga aikace-aikacen iOS zuwa App Store tare da GitLab da fastlane

Yadda GitLab tare da fastlane ke tattarawa, alamu da buga aikace-aikacen iOS zuwa App Store.

Mun kwanan nan da post game da yadda ake sauri ginawa da gudanar da aikace-aikacen Android tare da GitLab da sauri. Anan zamu ga yadda ake ginawa da gudanar da aikace-aikacen iOS da buga shi zuwa TestFlight. Duba yadda yayi sanyi Ina yin canji akan iPad Pro tare da GitLab Web IDE, Na ɗauki taron kuma in sami sabuntawa zuwa sigar gwaji na aikace-aikacen akan wannan iPad Pro inda na haɓaka shi.

Anan zamu dauka sauki iOS app akan Swift, wanda na yi rikodin bidiyo tare da shi.

Kalmomi kaɗan game da daidaitawar Apple Store

Za mu buƙaci ƙa'idar Store Store, takaddun shaida na rarrabawa, da bayanin martaba don haɗa komai tare.

Abu mafi wahala anan shine saita haƙƙin sa hannu a cikin App Store. Ina fatan za ku iya gane wannan da kanku. Idan kun kasance sababbi, zan nuna muku hanyar da ta dace, amma ba za mu yi magana game da ɓarnawar sarrafa takaddun shaida na Apple a nan ba, kuma koyaushe suna canzawa. Wannan sakon zai taimaka muku farawa.

Apps Nawa

Kuna buƙatar app a cikin Haɗin App Store don haka kuna da ID don daidaitawa .xcodebuild. Bayanan martaba da ID na aikace-aikacen sun haɗu da haɓaka lamba, farashi da samuwa, da kuma daidaitawar TestFlight don rarraba aikace-aikacen gwaji ga masu amfani. Kada ku yi gwajin jama'a, gwaji na sirri zai ishi idan kuna da ƙaramin rukuni, saiti mai sauƙi, kuma ba ku buƙatar ƙarin izini daga Apple.

Bayanan farawa

Baya ga saitin ƙa'idar, kuna buƙatar rarrabawar iOS da maɓallan haɓaka waɗanda aka ƙirƙira a cikin Takaddun shaida, Masu Gano & Bayanan martaba na na'ura mai haɓakawa ta Apple. Duk waɗannan takaddun shaida za a iya haɗa su zuwa bayanin martaba na tanadi.

Masu amfani waɗanda za a tantance suna buƙatar samun damar ƙirƙirar takaddun shaida, in ba haka ba matakan cert da huci za ku ga kuskure.

wasu zaɓuɓɓuka

Bayan wannan hanya mai sauƙi, akwai wasu hanyoyi don daidaita takaddun shaida da bayanan martaba. Don haka, idan kuna aiki daban, kuna iya daidaitawa. Abu mafi mahimmanci shine kuna buƙatar tsari .xcodebuild, wanda zai nuna mahimman fayilolin da ake buƙata, kuma dole ne a sami sarƙar maɓalli akan kwamfutar da aka gina don mai amfani da sunan wanda mai gudu ke aiki. Don sa hannun dijital muna amfani da fastlane, kuma idan akwai matsaloli ko kuna son ƙarin sani, duba cikakkun bayanai takardu game da sa hannun dijital.

A cikin wannan misali na yi amfani da tsarin cert da huci, amma don ainihin amfani yana yiwuwa ya fi dacewa wasa.

Ana shirya GitLab da fastlane

Ana shirya CI Runner

Bayan tattara duk waɗannan bayanan, mun matsa zuwa daidaitawar GitLab mai gudu akan na'urar MacOS. Abin takaici, kuna iya yin aikace-aikacen iOS kawai akan MacOS. Amma komai na iya canzawa, kuma idan kuna tsammanin ci gaba a wannan yanki, ku kula da ayyukan kamar xcbuild и alamar, da kuma aikin mu na ciki gitlab-ce#57576.

Saita mai gudu abu ne mai sauqi qwarai. Bi halin yanzu umarnin don saita GitLab Runner akan macOS.

Lura. Dole ne mai gudu ya yi amfani da shirin aiwatarwa shell. Ana buƙatar wannan don gina iOS akan macOS don yin aiki kai tsaye azaman mai amfani maimakon ta kwantena. Idan kana amfani shell, Ana yin gini da gwaji azaman mai amfani da gudu, kai tsaye akan mai masaukin ginin. Ba shi da tsaro kamar kwantena, don haka mafi kyawun bincike takardun amincidon haka kada ku rasa komai.

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

Dole ne a saita Apple Keychain akan wannan rundunar tare da samun damar maɓallan da Xcode ke buƙatar ginawa. Hanya mafi sauƙi don gwada wannan ita ce shiga a matsayin mai amfani wanda zai gudanar da ginin kuma yayi ƙoƙarin gina shi da hannu. Idan tsarin yana buƙatar samun damar sarkar maɓalli, zaɓi Koyaushe Bada izinin CI yayi aiki. Yana iya zama darajar shiga da kallon bututun biyu na farko don tabbatar da cewa ba su sake neman sarƙar maɓalli ba. Matsalar ita ce Apple ba ya sauƙaƙa mana yin amfani da yanayin Auto, amma da zarar kun sami shi, komai zai yi kyau.

fastlane init

Don amfani da fastlane a cikin aikin, gudu fastlane init. Kawai bi umarnin don shigarwa da gudu fastlane, musamman a sashen game da Gemfile, saboda muna buƙatar ƙaddamar da sauri da kuma tsinkaya ta hanyar bututun CI mai sarrafa kansa.

A cikin kundin tsarin aikin ku, gudanar da waɗannan umarni:

xcode-select --install
sudo gem install fastlane -NV
# Alternatively using Homebrew
# brew cask install fastlane
fastlane init

fastlane zai nemi tsari na asali sannan kuma ƙirƙirar babban fayil na fastlane a cikin aikin tare da fayiloli guda uku:

1. fastlane/Appfile

Babu wani abu mai rikitarwa a nan. Kawai tabbatar da Apple ID da App ID daidai ne.

app_identifier("com.vontrance.flappybird") # The bundle identifier of your app
apple_id("[email protected]") # Your Apple email address

2. fastlane/Fastfile

Fastfile ya bayyana matakan ginawa. Muna amfani da fasalulluka masu yawa na fastlane, don haka komai ya bayyana a nan kuma. Muna ƙirƙira layi ɗaya wanda ke karɓar takaddun shaida, yana yin taron kuma yana loda shi zuwa TestFlight. Kuna iya raba wannan tsari zuwa ayyuka daban-daban idan ya cancanta. Duk waɗannan ayyukan (get_certificates, get_provisioning_profile, gym и upload_to_testflight) an riga an haɗa su a cikin fastlane.

Ayyuka get_certificates и get_provisioning_profile dangane da hanyar sa hannu cert da huci. Idan kana amfani wasa ko me, yi canje-canje.

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

Wannan babban fayil ne na zaɓi, amma na ƙirƙiri shi da hannu don canza tsoffin kundin adireshi da sanya fitarwa a cikin babban fayil na yanzu. Wannan yana sauƙaƙe CI. Idan sha'awar, karanta game da gym da sigoginsa a cikin takardun.

https://docs.fastlane.tools/actions/gym/

Namu .gitlab-ci.yml

Don haka, muna da CI mai gudu don aikin kuma muna shirye don gwada bututun. Bari mu ga abin da muke da shi .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

Все отлично! Mun saita tsarin zuwa UTF-8 don fastlane kamar yadda ake buƙata, amfani da dabarun clone tare da aiwatar da shirin shell, Domin mu sami wurin aiki mai tsabta don kowane taro, kuma kawai kira flappybuild fastlane, kamar yadda aka gani a sama. A sakamakon haka, muna samun taro, sa hannu da tura sabon taro a cikin TestFlight.

Muna kuma samun kayan tarihi kuma mu ajiye shi tare da taro. Lura cewa tsarin .ipa sa hannun ARM mai aiwatarwa wanda baya aiki a cikin na'urar kwaikwayo. Idan kuna son fitarwa don na'urar kwaikwayo, kawai ƙara maƙasudin ginin da ke samar da shi, sannan ku haɗa shi a cikin hanyar kayan tarihi.

Sauran masu canjin yanayi

Akwai ma'auni guda biyu masu canjin yanayi a nan waɗanda ke sa komai yayi aiki.

FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD и FASTLANE_SESSION

Ana buƙatar tabbaci don fastlane don tantancewa a cikin Store Store da loda zuwa TestFlight. Don yin wannan, ƙirƙirar kalmar sirri don aikace-aikacen da za a yi amfani da shi a cikin CI. Cikakkun bayanai a nan.

Idan kuna da ingantaccen abu biyu, ƙirƙiri mai canzawa FASTLANE_SESSION (umarni a can).

FASTLANE_USER и FASTLANE_PASSWORD

cewa cert da huci ake kira bayanin martaba na farko da takaddun shaida akan buƙata, kuna buƙatar saita masu canji FASTLANE_USER и FASTLANE_PASSWORD. Cikakkun bayanai a nan. Wannan ba lallai ba ne idan kuna amfani da wata hanyar sa hannu ta daban.

A ƙarshe

Kuna iya ganin yadda duk yake aiki a cikin sauki misali.

Ina fatan wannan ya taimaka kuma ya ƙarfafa ku kuyi aiki tare da ginanniyar iOS a cikin aikin GitLab. Ga wani CI tukwici don fastlane, kawai idan akwai. Kuna iya son amfani CI_BUILD_ID (don haɓaka haɓakawa) zuwa sigar haɓaka ta atomatik.

Wani yanayin sanyi na fastlane shine hotunan kariyar kwamfuta ta atomatik ga App Store, waɗanda suke da sauƙin kafawa.

Faɗa mana a cikin sharhi game da ƙwarewar ku kuma raba ra'ayoyin ku don haɓaka GitLab don haɓaka app ɗin iOS.

source: www.habr.com

Add a comment