Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Deploying UI library on Travis CI
Search
giginet
PRO
November 18, 2016
Programming
1
8.1k
Deploying UI library on Travis CI
Deploy your UI library onto Appetize.io via Travis CI
giginet
PRO
November 18, 2016
Tweet
Share
More Decks by giginet
See All by giginet
Creating Intuitive Developer Tool in Swift
giginet
PRO
0
980
Mergeable Libraryで 高速なアプリ起動を実現しよう!
giginet
PRO
2
4.1k
5分でわかるExplicitly Built Modules
giginet
PRO
0
550
Introduction for Open Source Swift Workshop
giginet
PRO
0
1.5k
Swift Packageを使った 巨大な依存グラフのキャッシュ戦略
giginet
PRO
5
4.9k
Deep Dive into Mergeable Library
giginet
PRO
1
1.7k
Go beyond the Actor Boundary ~ Swift 6へのConcurrency対応 ~
giginet
PRO
1
3.4k
新しいビルドツールScipioのご紹介
giginet
PRO
3
1.1k
ポケモンで学ぶiOS 16弾丸ツアー 🚅
giginet
PRO
1
930
Other Decks in Programming
See All in Programming
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
190
みんなでプロポーザルを書いてみた
yuriko1211
0
260
Better Code Design in PHP
afilina
PRO
0
120
Laravel や Symfony で手っ取り早く OpenAPI のドキュメントを作成する
azuki
1
110
Realtime API 入門
riofujimon
0
150
OSSで起業してもうすぐ10年 / Open Source Conference 2024 Shimane
furukawayasuto
0
100
Pinia Colada が実現するスマートな非同期処理
naokihaba
4
220
CSC509 Lecture 11
javiergs
PRO
0
180
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.1k
Jakarta EE meets AI
ivargrimstad
0
580
ActiveSupport::Notifications supporting instrumentation of Rails apps with OpenTelemetry
ymtdzzz
1
230
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
136
6.6k
Unsuck your backbone
ammeep
668
57k
Building Applications with DynamoDB
mza
90
6.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Building an army of robots
kneath
302
43k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Transcript
Deploying UI library on Travis CI @giginet
@giginet • iOS Engineer @ Cookpad • ։ൃج൫ͬͯ·͢ • झຯɿήʔϜ։ൃ
ࠓ • fastlaneͱTravis CIͰUIϥΠϒϥϦͷσϞΞϓ ϦΛࣗಈσϓϩΠ͢Δ
None
appetize.io • ϒϥβ্ͰiOSγϛϡϨʔλʔىಈͰ͖Δ ͭ
None
None
None
None
None
None
desc "Deploy demo application to Appetize.io" lane :deploy_to_appetize do base_build_dir
= File.expand_path('build') xcodebuild(project: "#{project_name}.xcodeproj", scheme: scheme_name, xcargs: "CONFIGURATION_BUILD_DIR=#{base_build_dir}", sdk: 'iphonesimulator') app_path = File.join(base_build_dir, "#{scheme_name}.app") zip_path = File.join(base_build_dir, "#{scheme_name}.app.zip") zip(path: app_path, output_path: zip_path) note = last_git_commit[:message] appetize(path: zip_path, note: note) end appetize Action
desc "Deploy demo application to Appetize.io" lane :deploy_to_appetize do base_build_dir
= File.expand_path('build') xcodebuild(project: "#{project_name}.xcodeproj", scheme: scheme_name, xcargs: "CONFIGURATION_BUILD_DIR=#{base_build_dir}", sdk: 'iphonesimulator') app_path = File.join(base_build_dir, "#{scheme_name}.app") zip_path = File.join(base_build_dir, "#{scheme_name}.app.zip") zip(path: app_path, output_path: zip_path) note = last_git_commit[:message] appetize(path: zip_path, note: note) end appetize Action
desc "Deploy demo application to Appetize.io" lane :deploy_to_appetize do base_build_dir
= File.expand_path('build') xcodebuild(project: "#{project_name}.xcodeproj", scheme: scheme_name, xcargs: "CONFIGURATION_BUILD_DIR=#{base_build_dir}", sdk: 'iphonesimulator') app_path = File.join(base_build_dir, "#{scheme_name}.app") zip_path = File.join(base_build_dir, "#{scheme_name}.app.zip") zip(path: app_path, output_path: zip_path) note = last_git_commit[:message] appetize(path: zip_path, note: note) end appetize Action
desc "Deploy demo application to Appetize.io" lane :deploy_to_appetize do build_and_upload_to_appetize(
xcodebuild: { project: 'Foobar.xcodeproj', scheme: scheme_name, sdk: 'iphonesimulator' } ) end build_and_upload_to_appetize Action
None
travis encrypt travis encrypt APPETIZE_API_TOKEN=super_secret --add env.matrix travis encrypt APPETIZE_PUBLICKEY=super_secret
--add env.matrix
env: global: - LC_CTYPE=en_US.UTF-8 - secure: yKRlKg8ya0pvWnYZ516Tq91Jv6(ry - secure: Xuh1dMd/vkDkech5sjM184te8VV(ry
matrix: include: - os: osx language: objective-c osx_image: xcode8 script: - bundle exec fastlane deploy_to_appetize
None
https://www.cocoacontrols.com
·ͱΊ • UIϥΠϒϥϦΛ࡞ͬͨΒappetize.ioʹ্͛ͯ ͓͘ͱ։ൃऀར༻ऀخ͍͠ • Travis CIͰࣗಈԽ͢Δͱָ • ྑ͍UIϥΠϒϥϦ૿͑ͯཉ͍͠
https://github.com/giginet/ CustomKeyboardTextField
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠