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
はじめてのCode4兄弟
Search
シュプレ
August 03, 2018
Technology
0
230
はじめてのCode4兄弟
シュプレ
August 03, 2018
Tweet
Share
More Decks by シュプレ
See All by シュプレ
エンジニア(?)にオススメの本
spre55
0
150
PHPエンジニアが転職してGoを書き始めたら楽しくなってきた話.pdf
spre55
2
1.1k
GCP使ってテスト自動化したい.pdf
spre55
0
210
2016HACKDAYS_52_HelloAgain
spre55
0
65
LANケーブル圧着入門
spre55
0
89
できるSEO! ver 2.1
spre55
0
43
Web班番外編 jQuery
spre55
0
110
pre講義 jQuery
spre55
0
80
Other Decks in Technology
See All in Technology
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
380
[FOSS4G 2024 Japan LT] LLMを使ってGISデータ解析を自動化したい!
nssv
1
210
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
470
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
180
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.8k
Platform Engineering for Software Developers and Architects
syntasso
1
520
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
580
スクラムチームを立ち上げる〜チーム開発で得られたもの・得られなかったもの〜
ohnoeight
2
350
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
The Role of Developer Relations in AI Product Success.
giftojabu1
0
120
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
12k
Featured
See All Featured
BBQ
matthewcrist
85
9.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Adopting Sorbet at Scale
ufuk
73
9.1k
GitHub's CSS Performance
jonrohan
1030
460k
Done Done
chrislema
181
16k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Building an army of robots
kneath
302
43k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
4 Signs Your Business is Dying
shpigford
180
21k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Transcript
はじめてのCode4兄弟 @spre55
今回の経緯
去年の11月。 ソシャゲ(スマホのブラウザゲーム)の 新規タイトルの開発にアサインされた。 自己紹介: サーバサイドのエンジニアで PHPい じってます。
AWS使いこな せなくてどうす る!? 意識高いEさん そこで現れるインフラエンジニア Eさんのひとこと
それを受けて、自分も AWSの勉強してみるかー とマネジメントコンソールを開く
多い 多くない?? どっからやりゃいいねん
やりたいこと
AWSをオンプレ的につかっていた デプロイの自動化とかしたい -> Code4兄弟 今まで これから どうやらcode4兄弟というものがあるらしい
Code4兄弟 ・CodePipeline ・CodeCommit ・CodeBuild ・CodeDeploy (CodeStar も入れると5兄弟) 今回はCodeStar には触れない
基本的なデプロイ作業 リソース更新 データ更新 ソース更新 基本的に簡略化したいデプロイ作業の種別は 主にこの三種類がある
基本的なデプロイ作業 リソース更新 データ更新 ソース更新 今回Code4兄弟を使って楽したいのはソース 更新
従来(ソースの本番反映) 踏み台サーバからデプロイサーバへ git pull gulp とかたたく ansibleのコマンドたたいて ・appサーバ ・batchサーバ などに配る
今(ソースの本番反映) master ブランチ に release ブランチをマージ 反映する前にチャットに承認用のリンクを送っ たりもできる。
Code 4兄弟の役割 どうやってそれらを実現しているのか
CodePipeline の役割 CodeCommit、CodeBuild、CodeDeployの 一連の流れを管理
CodeCommit の役割 GithubやGitlabと同様、Gitホスティング サービス。 ただしGithubやGitlabほどの機能はない。 去年11月頃にPR機能がついた。
CodeBuildの役割 自動テストやビルド
CodeDeployの役割 自動デプロイ
実際の流れ
作業内容を特定のブランチへpush
CodePipelineが検知
アーティファクトが生成されて CodeBuildに渡される
buildspec.yml に従ってビルド
buildspec.yml
buildspec.yml https://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/build-s pec-ref.html gulpとかはこのymlに書く buildspec.ymlは名前を変えられる
アーティファクトがCodeDeployに渡る
appspec.yml https://docs.aws.amazon.com/ja_jp/codedeploy/latest/userguide/reference-appspec-file.html サーバの停止、起動用のスクリプトを書いて、 appspec.ymlで指定している
今後の展望 UIテストとかもpipelineにはさみたいなー(願望)
AWS! AWS! 意識高いEさん Eさんも大歓喜??
NCP・・・ 意識高いEさん と思いきや、NAVER CLOUD PLATFORMの案 件に飛ばされ、AWSをいじれなくなる Eさん。とい うオチでした。
NCP・・・ 意識高いEさん おしまい