libAlexandrina.so.octopress

『JAWS-UG金沢 第21回』でAWSのCodeシリーズについて調べた

| Comments

2017-04-08 JAWS-UG金沢 第21回 週末勉強会 もくもく & 質問大会 - JAWS-UG 金沢 | Doorkeeper に参加した。あやうくソロでもくもく & 自問自答会になるところであったがなんとか3人で実施。質問はなかった。

無料でプライベートリポジトリ CodeCommit

Amazon CodeCommit(安全でスケーラブルなマネージド型ソースコントロールサービス) | AWS

そもそもリポジトリがプライベートなのは当たり前のはずなんだが現実そうでもない。みなで協業、デプロイ先からpullするにしても、パブリッククラウド上にVCS系を導入するのが一番現実的である。

と、そうなると認証系がどうしてもめんどくなる。そのあたりをIAMで処理できるし、他社サービスやAWSサービスとの連携が容易なのがいいところ。

あと無料枠がでかいので実質無料だ。GitHubと違って1ファイルあたりのサイズ制限は実質ない。5人以上のプロジェクトなんざしらん。 → 料金 - Amazon CodeCommit | AWS

ユーザーを認証情報を追加するの一番楽なのはたぶん以下の手順。そもそもSSH鍵の扱いに慣れていればSSHを使うのが一番楽そう。

IAM > サイドバーからユーザー > ユーザーを選択(なければ作成) > 概要画面から認証情報タブをクリック > 最下段の AWS CodeCommit の HTTPS Git 認証情報 の生成ボタン

日本リージョンに現時点で無いってのが残念だけど!

CIサービス CodeBuild

AWS CodeBuild (完全マネージド型ビルドサービス) | AWS

GitHubからCircleCIやTravis CIを活用している人ならピンとくる、それに相当するサービス。

  1. ソースコードをどこからか持ってきて
  2. ビルド処理を使い捨てVMインスタンスでビルドし
  3. 結果や成果物をS3に置ける

ということに特化している。 1.についてはCodeCommitやGitHub、S3からzipをとってくるってのが選べたり、2.についてはどんな環境であれこれするってのを buildspec.yml というファイルで指示できたりVMの仕様を決めたりできるというもの。

料金はこのビルド時のみ自動で起動・終了するVMインスタンス分だけ支払えばよいようだ。そして最初の100分は無料。特に何もインストールしないで Ruby 2.3 のVM選んで puts 'hello world' するだけでも5分ぐらい使った。真面目に運用始めたら無料には収まらなさそうだな。

デプロイエージェント CodeDeploy

AWS CodeDeploy (EC2 インスタンスへのコードデプロイを自動化) | AWS

AWS上のVMサーバ、つまりEC2上に都合よくデプロイするエージェント。他社PaaSにデプロイしたりするわけじゃない。それだけ把握すれば今回はじゅうぶん。なかなか低予算でたくさんのEC2インスタンスにちゃんとデプロイするって要求はなかなかないのが現実。

Codeシリーズのオーケストレーション CodePipeline

上記3つをオーケストレーションする。ウェブコンソールにはいってマウスでポチポチ決められるのはおもしろい。

1パイプラインだけは無料。以降、1パイプライン/ドル。

統括

AWS内で全部完結するならば、AWS上にJenkinsインスタンスを持つよりこっちでいろいろ処理したほうが管理すべきものが減るのかもしれない。やることを絞れば覚える手数が減って手軽に導入できるかな?

まーいま『Jenkins職人問題』がでちゃうほど、Jenkinsがなんでもできるうえに設定が煩雑、覚えること多いってなってるので、AWS CLIでちゃんと操作できてこの設定をコード化できればバッチリだろうなあ。

さて、このブログはいま、GitHub + 自前Jenkins + AWS S3 + Cloudfrontなのだが、そこをCodeシリーズに置き換えていくことが目的だったんだが、ここまで調べればなんとかなりそう。

懇親会

加能商店さんにまた突撃した。今日のMVPはスパイシースペアリブだ。ローストオニオンとスパイスたっぷりで肉もよく焼けててめちゃうまかった。

Comments