AWS Toolkit for Visual Studio CodeでS3を操作してみた

2020.09.25

DA事業本部の横山です。

Visual Studio Codeの拡張機能で、AWS上でのアプリケーションの作成、デバッグ、デプロイを支援してくれるAWS Toolkit for Visual Studio Codeがあります。
存在は知っていましたが実際に利用したことがなかったため、どんなことができるのか確認してみたいと思います。

はじめに

AWS Toolkit for Visual Studio Codeを利用するには、AWSアカウントの作成、Visual Studio Codeのインストール、AWS Toolkit for Visual Studio Codeのインストールが必要となります。手順については公式ドキュメントのリンクを記載しますので本記事では割愛させていただきます。

AWS Toolkit for Visual Studio Codeのインストール

ちなみに、AWSアカウントを所持しておりAWS CLIで認証情報を設定済み、Visual Studio Codeをインストール済みの方は、Visual Studio Codeの拡張機能からAWS Toolkit for Visual Studio Codeをインストールしてください。どのプロファイルを使用するか等のナビゲーションが行われますので特に困ることなく設定可能だと思われます。

設定が完了すると、AWS Explorerが表示され各AWSリソースの参照が可能になります。

概要

AWS Toolkit for Visual Studio Codeには、次の機能が含まれています。
今回は、Amazon S3 (以下、S3)でどのような操作が可能か確認していきます。

  • AWS Explorer
  • 資格情報と地域の管理
  • Amazon EC2
  • AWS Lambda
  • AWS CodeCommit
  • Amazon DynamoDB
  • Amazon S3
  • Amazon RDS
  • AWS Elastic Beanstalk
  • AWS CloudFormation
  • AWS Identity and Access Management(IAM)

S3バケットを作成する

AWS Explorerで表示されているS3を右クリックまたはCreate Bucketボタンを押下すると作成するS3バケットの名前を聞かれますので、任意の名前を入力しEnterを押下します。

S3バケットの作成が完了した旨のダイアログが表示されたら、S3のプルダウン内に表示されるS3バケット一覧に作成したS3バケットが表示されます。 S3バケットを右クリックすることで表示されるメニューから各種操作が行えます。 S3バケット,オブジェクトの作成や削除だけではなくARNのコピーが行えるのは地味にうれしいですね。

S3バケットにフォルダを作成する

対象のS3バケットを右クリックまたはCreate Folderボタンを押下すると作成するフォルダ名を聞かれますので、任意の名前を入力しEnterを押下します。

S3バケットのプルダウン内に表示されるS3オブジェクト一覧に作成したフォルダが表示されます。

S3バケットを削除する

対象のS3バケットを右クリックしDeleteを選択すると本当に削除するかを聞かれますので、AWSコンソールと同様に削除対象のS3バケット名を入力しEnterを押下します。

S3バケットへのファイルのアップロード

対象のS3バケットかフォルダを右クリックしUpload Fileを選択するか、Upload Fileボタンを押下するとファイル選択ダイアログが表示されます。 アップロードしたいファイルを選択すると選択したファイルがS3オブジェクトとしてアップロードされます。

アップロードされたS3オブジェクトにカーソルを合わせることで、パス、サイズ、最終更新時刻が確認できます。

S3オブジェクトのダウンロード

対象のS3バケットかフォルダから、S3オブジェクトを右クリックしDownload As...を選択するか、Download As...ボタンを押下するとダウンロード用のダイアログが表示されます。ダウンロード先とファイル名を指定してダウンロードを行うことができます。

ダウンロードが完了したら、出力タブのAWS Toolkitログにダウンロード先のリンクが表示されますので、Ctrl(Cmd)+クリックでファイルを表示することができます。(私の環境では、WSL上のUbunttuにRemoteで接続しているため表示できませんでした)

S3オブジェクトの削除

対象のS3バケットかフォルダから、S3オブジェクトを右クリックしてDeleteを選択します。本当に削除するか確認ダイアログが表示されるのでOKを押下します。S3オブジェクトの一覧から削除されます。

S3バケットのバージョニングが有効な場合は、S3オブジェクトは削除されずに削除マーカーが挿入されます。 削除マーカーがわからない方は以下のドキュメントを参考にしてください。

Deleting object versions

削除マーカーの使用

まとめ

AWS Toolkit for Visual Studio Codeを利用して、S3で行える操作についてまとめてみました。 プロパティ関連(バージョニングやログ、イベントといった操作)やアクセス制限に関する操作についてはできないようですが、基本的なCRUD操作は行えるようです。 CRUD操作だけならAWSコンソールよりも簡単に行えるため活用していきたいと思います。 一つだけ気になったのは、ドキュメントにも記載してありましたがフォルダの削除が行えない点です。AWSコンソールかAWS CLIから削除する必要があります。

さいごに

AWSもVisual Studio Codeも利用しているが、AWS Toolkit for Visual Studio Codeは使ったことがないという方が少しでも興味を持っていただければ幸いです。

以上になります。ドキュメントは英語になりますがスクリーンショット付きでわかりやすいのでみなさんも是非触ってみてください。