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
CircleCI in CyberAgent
Search
stormcat24
June 10, 2016
Programming
1
2.3k
CircleCI in CyberAgent
2016/06/10 CircleCI Meetup #circleci_meetup
stormcat24
June 10, 2016
Tweet
Share
More Decks by stormcat24
See All by stormcat24
素早く賢く失敗するDeveloper Productivityの実現を目指して
stormcat24
4
4.4k
KubernetesのマニフェストをそれなりにCIしたい
stormcat24
4
1.2k
令和時代のSaaS開発
stormcat24
1
240
History in 5 years of CircleCI and CyberAgent
stormcat24
3
800
Kubernetes Handson Osaka
stormcat24
5
540
Kubernetes Handson
stormcat24
5
4.2k
DockerとKubernetesでアプリケーション開発にコンテナをフル活用!
stormcat24
0
290
Base Image Journey 2018
stormcat24
29
130k
kotlin-fest
stormcat24
13
17k
Other Decks in Programming
See All in Programming
GPU Hash Table | レイトレ合宿10
yknishidate
0
120
GrafanaのHTTP API を眺めてみよう
rinchoku
0
440
Hi, have you met Kotlin Multiplatform? | DevFest Vienna 2024
prof18
0
220
LangChain & LangServeでAPIを爆速作成
kijitorabuti
2
350
NEWTにおけるiOS18対応の進め方
ryu1sazae
0
330
データマイグレーションの成功戦略~サービスリニューアルで失敗しないための実践ガイド~
tkzwtks
8
840
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
1.1k
20241004 モノタロウ式~ドメインモデリングとリアーキテクチャ
monotaro
PRO
2
650
rtcamp 10 (vk-illuminati)
yumcyawiz
1
210
Vertical Architectures for Scalable Angular Applications
manfredsteyer
PRO
0
180
知られざるNaNの世界
hole
3
1k
ポケモンで考えるコミュニケーション / Communication Lessons from Pokémon
mackey0225
5
220
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
26
700
Building Applications with DynamoDB
mza
90
6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
225
22k
Adopting Sorbet at Scale
ufuk
73
9k
How STYLIGHT went responsive
nonsquared
95
5.1k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Scaling GitHub
holman
458
140k
The Language of Interfaces
destraynor
154
24k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
GraphQLとの向き合い方2022年版
quramy
43
13k
[RailsConf 2023] Rails as a piece of cake
palkan
49
4.8k
Transcript
CircleCI in CyberAgent 2016.06.10 CircleCI Meetup @stormcat24
stormcat24 http://blog.stormcat.io CyberAgent, Inc.
2016.01.21 AmebaFRESH! 2016.04.01 AbemaTV FRESH! 2016.06.01 FRESH! by AbemaTV
CircleCI and me
None
その他書いた記事 ‣ CircleCIアンチパターン 2015春 ‣ CircleCIからサーバへのSSH接続確立時間を高速化する ‣ CircleCIでサクッとビルドチェーンを実現する ‣ CircleCIのキャッシュ(cache_directories)の挙動を解説するよ
‣ CircleCIで変更があった箇所だけに限定してビルドするテクニック ‣ 大規模な組織で新しいツールを導入するのにはかなりエネルギーがいる話 - CircleCI編 -
CircleCI Advent Calendar 2015 http://qiita.com/advent-calendar/2015/circleci
CI in CyberAgent
AmebaとCI ‣ Ameba(とその他メディア管轄)はGitHub Enterprise(GHE)を 利用 ‣ CIは基本Jenkins ‣ 職人が用意した共通Jenkins ‣
プロジェクトで用意したものや野良Jenkins等 ‣ GHEだとCIの選択肢が限定されるのでツラい
アドテクやグループ会社 ‣ GitHub.com(プライベート)を利用 ‣ TravisCIやCircleCIも利用✌( ◔౪◔)✌ ‣ Ameba「ぐぬぬ」
CircleCIとAmeba ‣ 2014夏 ‣ @stormcat24がCircleCIの機能検証開始 ‣ @stormcat24がEnterprise版の導入交渉開始 ‣ 2014秋 ‣
@stormcat24が社内的な説得を始める ‣ 2014冬 ‣ Enterprise版お試し導入のGoサインが出る
CircleCIとAmeba ‣ 2015/02 ‣ Ameba管轄で(ひっそりと)CircleCI Enterprise(クラウド版)利用開始 ‣ @stormcat24が新規事業(後のFRESH!)へ異動、事実上独占的に利用 ‣ 2015/04
‣ 正式に導入。他のプロジェクトにじわじわと広まっていく ‣ 2016/04 ‣ クラウド版からオンプレ版に変更
気をつけたこと(導入前) ‣ それ、Jenkinsでもできるよね?に屈しない ‣ 可用性に関する疑問への解答 ‣ 大義名分を持とう ‣ CI環境の集約、ノウハウ・ナレッジの共有等 ‣
運用コスト削減、スタートアップの初速アップ ‣ 銀の弾丸では無いと素直に言う
気をつけたこと(導入後) ‣ 基本的にプロジェクト・チーム任せ ‣ 導入に尽力したけど、推進には尽力してない ‣ 各々のCIに対する意識を変えてもらうことが重要 ‣ 誰か一人が頑張りすぎる⇒属人化Jenkinsと変わらない ‣
本当に困ったときくらいのサポートでいい
Use Case
Projects ‣ Server Side ‣ Java/Scala/Node/Go ‣ Frontend ‣ Android(Java/Kotlin)
Build / Test / Artifacts ‣ ユニットテスト ‣ MySQL, Redis通してのUTとかも
‣ E2Eテスト ‣ APIドキュメント ‣ Crashlyticsにapkアップロード
Infrastructure & DevOps ‣ Hubot + Deploy ‣ DB Migration
‣ docker build / docker push ‣ Terraform ‣ Roadworker ‣ Mackerel
※運用イメージ(一例)
運用イメージ ‣ たいていどこも似たり寄ったりなはず ‣ ビルドトリガーをどうするか。やりやすいものを選べばよいかと ‣ あとはCircleCIに何の責務を担わせるか
導入した感想 ‣ 新規プロジェクトこそ向いてる ‣ 組織として、CI環境が統一に向かうのは良いこと ‣ ノウハウの蓄積、野良Jenkinsの整理 ‣ 継続的にJenkinsの面倒見るより楽、属人性DOWN ‣
Pull Request / Review / Testの文化の促進
まとめ ‣ 導入戦略は重要です ‣ 導入後はなるべく職人を作らない方向で ‣ 使い倒してCircleCIにフィードバックしましょう ‣ あとはお値段をもう少しお安く ‣
CircleCI盛り上げていきましょう
Let’s try CircleCI.