参加した勉強会のメモです。
開催日: 2017年4月26日
GitHubとクラスメソッドの勉強会〜GitHub x AWSの最新DevOps事情〜
ハッシュタグ: #github_method
How we ship GitHub
発表者
GitHub 池田尚史さん(@ikeike443)
チーム開発実践入門、GitHubツールビルディングの著者
近年起きていること
- アジャイル:三角形は逆さまに
- 従来はScope(やりたいこと)をFIXし、Time, Resourceをそれにあわせて決めていた
- 近年は先にTime, ResourceをFIX, Scopeを柔軟に
- VCS:コラボレーションがやりやすくなった
- Git,GItHubなどの分散リポジトリ
- 継続的デリバリー
- GitHubは「継続的デプロイメント」を目指す
- 本番リリースまで自動化
- GitHubは「継続的デプロイメント」を目指す
GitHubはどうしているか
- 一日に数十回デプロイ
- リモートワークが盛ん
- GitHub Flow
- Hubot(ChatOps)
GitHub Flow
- Masterを常にデプロイ可能な状態に保つ
- 必ずFeatureブランチを作り、その生存期間を短く保つ
- 溜め込まずすぐにPR、フィードバックをもらう
- デプロイして問題のないもののみMasterにマージ
- PRは議論の場
Hubotの利用
なぜChatOpsなのか?
- shared console
- 誰がやっても同じ結果
- 他人がやっているのを見て学べる
- リモートワークに最適
- スマホでデプロイも可能に
- いつだれがどんな操作をしたかすべて残る
本番リリース
- PRを本番にリリースしてからMasterブランチにマージ(※Masterにマージしてからデプロイではない)
- 本番デプロイ依頼をキューイング(Hubotがキュー管理)
- DataDocを利用してグラフでチェック
様々なことをすべてチャットで
- 営業的な見積もり
- お遊びコマンド
DevOpsとAWS
発表者
クラスメソッド 千葉淳さん(@iron_breaker)
資料
今日話すこと
- AWSにおけるDevOpsサービスの話
DevOpsとは?
- 開発者と運用者が協力したフロー
- 安全に素早くたくさんリリースするための仕組み
- 属人化の排除
- デリバリの自動化
- コードで管理
- 開発の効率化
- チームコラボレーション
- ちいさくたくさんリリース
- 安全なリリース
- デプロイの自動化(B/Gデプロイメント、切り戻し)
- フローの整備(承認とか)
- モニタリング
- 属人化の排除
DevOpsの目的
- ビジネスに使う時間を増やす
CI/CDとは?
CIとは?
- ビルド、テストの自動化
- リポジトリ→ビルド→Unitテスト
CDとは?
- CIに加えて、デプロイまで
- ステージング環境→統合テスト→本番環境
AWSサービスの紹介
- たくさんあったので資料参照
DevOps時の注意
- プロビジョニングとデプロイは別管理にする(ライフサイクルが違う)
GitHub EnterpriseとAWSを組み合わせたCDP
発表者
クラスメソッド 中山幸治さん
資料
※途中退席したためメモなし