Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Build an iOS app with ConcourseCI

1,183 views

Published on

Concourse CI/CD Meetup Tokyo #5 !
https://www.meetup.com/ja-JP/Concourse-CI-Tokyo-Meetup/events/237720292/

Published in: Technology
  • Be the first to comment

Build an iOS app with ConcourseCI

  1. 1. Build an iOS app with ConcourseCI @tenten0213 Concourse CI/CD Meetup Tokyo #5 !
  2. 2. • @tenten0213 • SIerの雑食系エンジニア • Java, Swift, JavaScript, Ruby, Python, COBOL… • スクラムマスター • Jenkins職人(引退) 自己紹介
  3. 3. http://qiita.com/tenten0213/items/7a362a4b9d65040d93d6
  4. 4. なぜここに立っているのか
  5. 5. iOSアプリ開発やっている人? • Java(JVM)? • Ruby ? • Python ? • PHP ?
  6. 6. Motivation
  7. 7. Jenkins職人問題 • GUIでの設定 • 環境設定 • パイプライン • レポーティング • あれ、shell書いてる… • プラグイン選択 前どうやったっけ? どこか設定弄ったら 動かなくなったぞ? なんでこうなって るの?
  8. 8. 他はコード化・設定ファイル化済 • Gem • Gemfile(.lock) • Fastlane • Fastfile • CocoaPods • Podfile(.lock) • SwiftLint • .swiftlint.yml → 後はビルドパイプラインだけ
  9. 9. Jenkinsでも出来るけど… https://concourse.ci/concourse-vs.html#jenkins
  10. 10. Concourseのアーキテクチャ パイプラインベースのCI/CDツール Concourse CI入門 - BLOG.IK.AM https://blog.ik.am/entries/379
  11. 11. iOSアプリをビルドするには macOSでworker を立てればOK
  12. 12. 試した構成 ATC web UI & build scheduler https://i2.wp.com/blog.docker.com/media/docker-whales-transparent.png macOS TSA worker registration & forwarding Workers container runtime & cache management /usr/local/bin/concourse 8080 2222
  13. 13. Concourseのインストール Docker Composeで構築(ホント楽) https://concourse.ci/docker-repository.html https://www.docker.com/
  14. 14. Workerの設定と起動 Mac用のバイナリ(concourse_darwin_amd64)を取得 https://github.com/concourse/concourse/releases 実行パスの通った場所に配置。 Worker用の鍵を生成とauthorized_worker_keysへの追加 Workerの起動
  15. 15. docker-compose.ymlの修正 "failed to dial: failed to connect to TSA: dial tcp 127.0.0.1:2222: getsockopt: connection refused" Workerを起動するとTSAとの接続エラーがでるので docker-compose.ymlを修正する。
  16. 16. パイプラインを登録する platformはdarwinで ごにょごにょ
  17. 17. ごにょごにょ💩 https://guides.cocoapods.org/using/troubleshooting.html#im- getting-permission-errors-while-running-pod-commands CocoaPodsがrootで実行できないので 権限周りをごにょごにょと
  18. 18. env 😇
  19. 19. Fastlaneで実行 🚀 https://github.com/fastlane/fastlane
  20. 20. 30回目にて🍻
  21. 21. 残課題 (試せてない) 🤓 • レポートの出し先どうするか • チャットへの通知 • マルチブランチビルド 出来たらJenkinsから置き換えるかも?

×