omuronの備忘録

個人的な備忘録

「AWSの基礎を学ぼう 第六十二回 AWS CodeArtifact」 #awsbasics 受講メモ

awsbasics.connpass.com

コードシリーズの最後となる CodeArtifact です。

セッション

AWS CodeArtifact おさらい

講師:アマゾン ウェブ サービス ジャパン、シニアエバンジェリスト 亀田氏

CodeArtifact とは

Code シリーズの「Soure/Artifact」に分類される。

  • CodeCommit : プライベートリポジトリ
  • CodeArtifact : プライベートソフトウェアパッケージリポジトリ
    • パブリックに公開できないパッケージを保存
    • パブリックのパッケージマネージャのプロクシとして動作させることができる

対応言語/パッケージマネージャ

ドメイン

  • 最上位の管理単位
  • パッケージの格納する単位として設定する
  • パッケージが複数のリポジトリに存在していても、保存はドメインごとに一度だけでいい
  • kms で暗号化可能
  • クロスアカウント対応なので、別アカウントのリポジトリも格納可能

リポジトリ

  • 必ずドメインに所属する
  • ドメインに格納されたパッケージにアクセスするためのエンドポイント
  • リポジトリは、他のリポジトリのアップストリームになることができる
  • 認証(ログイン)すればあとは npm とかと同じように意識せずに利用できる
    • ログイン後であればnpm publish とかで保存できる
# Login
aws codeartifact login --tool npm \
  --domain "my-orgW --domain-owner "account-id" \
  --repository "my-repo"

# Build
npm run build

# Version
npm version $VERSION

# Publish
npm publish

所感

なるほど、プライベートなパッケージを共有する仕組みなんですね。
普段の開発で npm とか pip とかは使うのですが、使うだけで自分でパッケージとして作ることがありませんでした。
複数人で開発している時に、別チームとかにパッケージだけを公開したい場合に有用なサービスだと認識しました。
こういうケースでは今までは Git リポジトリごと共有してたのですが、これを使えばパッケージとして共有できるということですね。