GRC = Git Remote Clone
いつも利用しているプロファイルと異なるもので操作する際に少し詰まったので、備忘として残します。
やりたいこと
- デフォルトで設定しているプロファイル以外を利用してCodeComitのリポジトリをクローンしたい。
前提
- AWS CLI V2がインストールされている。
- 対象アカウントのリポジトリを操作できるアクセスキーをプロファイルに登録している。
- 想定IAM権限:CodeCommit Power User
- コンソールにてリポジトリのGRC用のURLを取得している
確認用コマンド
- プロファイル設定
サンプルコマンド
aws configure --profile {設定したいプロファイル名}
コマンド例
aws configure --profile hoge-user
- プロファイル確認
cat ~/.aws/config
必要ツールをインストールするコマンド
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py
pip install git-remote-codecommit
Code Commitに対するコマンド
- リポジトリ情報確認確認
サンプルコマンド
aws codecommit get-repository --repository-name {リポジトリ名} --profile {awsの利用したいプロファイル名}
コマンド例
aws codecommit get-repository --repository-name hoge-repo --profile hoge-user
このコマンドでリポジトリの情報がリターンされれば、ツールとプロファイルが双方有効です。
- クローンしたい階層に移動
cd {利用したい階層}
- クローンコマンド
サンプルコマンド
git clone codecommit://{awsの利用したいプロファイル名}@{リポジトリ名} {クローン先のディレクトリ}
コマンド例
git clone codecommit://hoge-user@hoge-repo .
- 接続したリポジトリから離れるコマンド
git remote remove origin git remote -v
→何もリターンされなければOK
最後に
プロファイルの設定方法が--profile {awsの利用したいプロファイル名} の形式のものではないものがちょいちょいあるので困りますね。
以上、どなたかのお役に立てば幸いです。