python を使って Google Cloud Storage にファイルをアップロードするタスクがあったので、対応手順をここにメモします。
Google Cloud Storage とは
Google Cloud Storage(GCS)は Google Cloud Platform(GCP)の提供するストレージサービスです。
アップロード手順
準備
GOOGLE_APPLICATION_CREDENTIALS 生成
以下の手順で認証ファイルを作成します。
- Google Cloud 管理コンソールに接続
- 「IAMと管理」->「サービスアカウント」->「+サービスアカウントを作成」
- 作成したサービスアカウントをクリック
- キーのタブをクリック
- 「鍵を追加」ボタンをクリックし「json」ファイルをダウンロード
python ライブラリインストール(google-cloud-storage)
ローカル(開発環境)に python ライブラリをインストールします。
$ pip install --upgrade google-cloud-storage
bucket 作成
以下の手順で検証用の bucket を作成します。
- Google Cloud 管理コンソールに接続
- 「Cloud Storage」クリック
- バケット「作成」クリック
アップロード用ファイル
ローカル(開発環境)にアップロード用ファイルを作成します。
$ echo hogehoge > ./sample01.txt
検証スクリプト
import os from google.cloud import storage as gcs os.environ["GOOGLE_APPLICATION_CREDENTIALS"]="./secret.json" project_id = "{{ project_id }}" bucket_name = "{{ bucket_name }}" gcs_path = "sample01/sample01.txt" local_path = "./sample01.txt" client = gcs.Client(project_id) bucket = client.get_bucket(bucket_name) blob_gcs = bucket.blob(gcs_path) blob_gcs.upload_from_filename(local_path)