9
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWS code commit を触ってみた感触

Last updated at Posted at 2018-05-04

いまさらながらAWSのマネージドgit repositoryサービス code commit を触ってみた。

gitリポジトリの選択肢はいろいろある
・SaaS系[特化型] (例:GitHub、BitBucket、backlog)
・SaaS系[クラウドベンダ製] (例: AWS codecommit、GCP Cloud Source Repositories )
・OSS系(例:gitbucket, GitLab)

また、GitHubなどSaaS系でも、オンプレミス環境で設置可能なEnterprise版もあり、どの環境で利用したいか(パブリックでもOKなのか、プライベートに閉じるのかなど)セキュリティ要素も加味すると選択肢も変わる。

https://aws.amazon.com/jp/codecommit/
http://aws.typepad.com/sajp/2017/03/aws-black-belt-online-seminar-aws-code-services-slides_qa.html

codecommitの特徴はおそらく
・アクセス制御をIAMで管理できる
・マネージド(インスタンス管理・パッチ適用等が不要)
・AWS SNSやCodeBuild、Lambdaなど、AWSの他サービスとの親和性
あたりでしょうか

ちなみにGitHubやそのcloneのgitbucketなどでおなじみのFork機能はありません。

ざっくりとした利用までの流れとしては

  1. AWSコンソールのCodeCommitで、リポジトリを作成する
  2. 利用者は個々にIAMページで、リポジトリアクセス用の認証情報(SSH公開鍵)を登録する。また対象IAMユーザにCodeCommit利用に必要なポリシー設定をしておく。
  3. あとは個々にローカル環境にgit cloneして利用

注意点としては、現時点でCodeCommitはパブリックアクセスが前提で、東京リージョンの場合は
git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/XXX
というエンドポイントに対して、httpsかsshで接続することになる。
PrivateLink / VPC Endpointには対応していない。
完全にclosedな環境や、一切のパブリックアクセスを認めたくない場合は、PrivateLink / VPC Endpoint対応を待つ必要がありそう。

VPC的な要素を置いておく場合、例えばgithub + jenkinsのような、ソースコードバージョン管理→テスト&ビルド→デプロイのようなCI/CDフローを、CodeCommitとCodeBuildなどを組み合わせてマネージドで実現できる。

また、SNSの連携で、プルリクがあったことをメールで通知したりもできる。

コスト面は、毎月5アクティブ ユーザーまでは無料の枠もあり、追加分は 1USD/月/user(10GB/月、2,000 Gitコマンドの発行)とお得。
なお、リポジトリデータはKMS暗号化される。

9
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?