Skip to content

Instantly share code, notes, and snippets.

@takkumattsu
Last active November 27, 2015 07:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save takkumattsu/49ad8b6ada1c9e129b82 to your computer and use it in GitHub Desktop.
Save takkumattsu/49ad8b6ada1c9e129b82 to your computer and use it in GitHub Desktop.
しゃべる内容の下書き

iOS開発での特殊納品形態によるリリースの自動化が出来なかった話


アジェンダ

  • 自己紹介
  • 開発構成
  • 開発フロー
  • 問題点
    • どうしたのか?
    • つらいところ
  • 解決法

自己紹介

img

  • iOSエンジニア
  • バイク好きです

開発構成

  • redmine(課題管理)
  • github(コード管理)
  • deploygate(テスター配信用)
  • jenkins
  • slack

開発フロー

githubフローに近い運用。

  • redmineのチケットベースでブランチが切られる。
  • ブランチはreleaseブランチ、developブランチ、topicブランチの構成。
  • jenkinsはプルリク時のユニットテスト確認、developへのマージ時のユニットテスト確認及び成功時のdeploygateへのデプロイ
  • slackはgithub、jenkinsの通知を受けるのと、通常のコミュニケーション用途のみ

問題点

  • 納品がコードを提供できない
  • でもリリース用のipaを作る証明書ももらえない

どうしたのか?

ソースを全てスタティックライブラリ化(.a)して 開発用のプロジェクトとは別に納品用のプロジェクト(main.cとリソース系と.aのみ)を納品した。


つらいところ

  • 開発用プロジェクトとは別にプロジェクトがあるのでプロジェクトの設定を変えた際に納品用のプロジェクトも手動で変えないといけない
  • リソース(Asset Catalog)系以外の追加や削除は手動で納品用のプロジェクトに行わないといけない
  • テスターがテストしてるのは開発用のプロジェクトでビルドしたものなので、本当に納品するアプリのテストができない(ヤバイ)

解決法

わからない。同じ経験をした人いたら教えて欲しい

  • Androidみたいに後からipaに署名するみたいのができないか?
  • etc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment