Cloud9環境のAWS CLIを更新します。
AWS Resourcesの設定
IAMロールを利用するため、AWS managed temporary credentialsを無効にします。
注釈
"AWS managed temporary credentials"が有効だと、IAMロールに付与された権限の一部が無効になります。
Cloud9 IDEのホーム画面を表示します。
右上の歯車アイコンをクリックします。
Preferences タブ
Preferencesタブが表示されます。
左ペインの"AWS Settings"をクリックします。
AWS Settings 情報
AWS Settings 情報が表示されます。
"AWS managed temporary credentials"(スイッチ)をオフにします。(デフォルト: オン)
AWS CLI yumパッケージのアンインストール
下のbashタブで以下のコマンドを実行します。
コマンド:
sudo yum erase aws-cli -y
結果(例):
(snip) Complete!
AWS CLIのインストール
2020年4月25日現在、aws-cliのデフォルトブランチはバージョン1.8系となっているため、本手順ではv1のインストールを推奨しています。
AWS CLI v1のインストール
sudo pip install awscli
参考: AWS CLI v1のアップグレード
sudo pip install -U awscli
(略) Successfully installed awscli-1.18.51 botocore-1.16.1
参考: AWS CLI v1のダウングレード
変数の設定:
AWS_CLI_VERSION='<AWS CLIのバージョン>'
sudo pip install \ awscli==${AWS_CLI_VERSION}
(略) Successfully uninstalled awscli-<旧バージョン> Successfully installed awscli-<新バージョン> botocore-<新バージョン>
参考: AWS CLI v2のインストール
DIR_TMP="${HOME}/tmp/awscliv2"
mkdir -p ${DIR_TMP}
cd ${DIR_TMP} \ && curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" \ -o "awscliv2.zip"
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 30.6M 100 30.6M 0 0 24.0M 0 0:00:01 0:00:01 --:--:-- 24.0M
unzip awscliv2.zip
(略) creating: aws/dist/zlib/cpython-37m-x86_64-linux-gnu/ inflating: aws/dist/zlib/cpython-37m-x86_64-linux-gnu/soib.cpython-37m-x86_64-linux-gnu.so
cd ${DIR_TMP} \ && sudo ./aws/install
You can now run: /usr/local/bin/aws --version
一時ファイル用ディレクトリを削除します。
rm -Rf ${HOME}/tmp/awscliv2
.bashrcの更新 (タブ補完の有効化とコマンドプロンプトの変更)
下のbashタブで~/.bashrcの最終行にコマンドプロンプトの設定を追加します。 (viなどのエディタで編集します。)
~/.bashrc(追加):
complete -C aws_completer aws PS1="\` if [ \$? = 0 ]; then echo \[\e[36m\] else echo \[\e[31m\] fi \`[\u@\h%]\[\e[0m\]\$ "
コマンドの実行結果が正常(0)の場合はコマンドプロンプトが緑に、正常以外の場合はコマンドプロンプトが赤くなります。 「緑だから大丈夫」なわけではないですが、赤の場合は何か想定外の状況が発生している可能性があります。
設定の変更を反映するために、下のbashタブで以下を実行します。
source ~/.bashrc
aws --version
aws-cli/1.18.51 Python/3.6.10 Linux/4.14.173-106.229.amzn1.x86_64 botocore/1.16.1