お知らせ:

当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

Python SDK セットアップ

前提条件

ローカル環境でCatalyst Python SDKを使用してアプリケーションロジックの開発を始める前に、以下のパッケージマネージャーとプログラミング環境がローカルマシンにインストールされていることを確認してください:

Pythonは公式ウェブサイトからインストールでき、pipパッケージマネージャーはローカルシステムに自動的にインストールされます。他のソースからPythonをインストールする場合は、pipパッケージを手動でインストールしてください。pipのインストールについては、pipインストールドキュメントを参照してください。

注意: ローカルマシンに他のバージョンのPython(Python 3.9以外のバージョン)がインストールされている場合、アプリケーションのサーブまたはデプロイ時に、ディレクトリ内のPython関数の実行がスキップされます。これらのPython関数は、コンソールからCLIに関数をプルする際にも除外されます。

既存のCatalystプロジェクトのローカルディレクトリでPython関数を作成する場合は、上記の前提条件をインストールしてから、関数のセットアップに進んでください。既存のプロジェクトディレクトリでPython関数をセットアップする手順は、こちらのヘルプページに記載されています。Catalystプロジェクトの初期化時にPython関数を初期化する方法については、こちらのヘルプページを参照してください。


SDKのインストール

CLIでCatalystプロジェクトを初期化し、ローカル環境の既存のプロジェクトディレクトリでPython関数を作成またはセットアップすると、Python SDKパッケージ(zcatalyst-sdk)が現在のプロジェクトのfunctionsディレクトリ内に自動的にインストールされます。

任意のプログラミングスタックのCatalyst Serverless functionを作成すると、メイン関数ファイルと設定ファイルがデフォルトでボイラープレートコードとともに関数のディレクトリに自動生成されます。Python関数の場合は、requirements.txtという名前の追加ファイルも作成されます。このファイルには、Python関数を実装するために必要なインストール済み依存関係のリストが含まれています。CLIからPython関数を作成すると、デフォルトでCatalystのPython SDKパッケージ(zcatalyst-sdk)のエントリが含まれます。外部の依存関係をインストールする必要がある場合は、requirements.txtファイルに依存関係の名前を手動で追加する必要があります。

注意: Python関数を初めて初期化する場合は、システムにインストールされているPythonのパス情報を追加で設定する必要があります。この情報は、ローカルシステムに隠しファイルとして存在する特定の設定ファイルで設定できます。パスはconfig:set <key=value> CLIコマンドを使用して設定する必要があります。このコマンドの詳細については、こちらのヘルプページを参照してください。

以下のコマンドを使用して、Catalyst Python SDKをシステムにグローバルにインストールできます:

copy
pip install zcatalyst-sdk

SDKの初期化

Python SDKが関数のディレクトリにインストールされたら、Python関数のコーディングを開始できます。まず、現在のプロジェクトのCatalystコンポーネントにアクセスするために、関数のコード内でinitialize()メソッドを使用してSDKを初期化する必要があります。Catalyst関数タイプの初期化メソッドを以下に示します:

Basic I/O Functions

copy
import zcatalyst_sdk
def handler(context, basicio):
  app = zcatalyst_sdk.initialize()
  #このapp変数はCatalystコンポーネントにアクセスするために使用されます。
  #ここにビジネスロジックを記述する

Advanced I/O Functions

copy
import zcatalyst_sdk
def handler(request: Request):
  app = zcatalyst_sdk.initialize()
  #このapp変数はCatalystコンポーネントにアクセスするために使用されます。
  #ここにビジネスロジックを記述する

Event Functions

copy
import zcatalyst_sdk
def handler(event, context):
  app = zcatalyst_sdk.initialize()
  #このapp変数はCatalystコンポーネントにアクセスするために使用されます。
  #ここにビジネスロジックを記述する

Cron Functions

copy
import zcatalyst_sdk
def handler(cron_details, context):
  app = zcatalyst_sdk.initialize()
  #このapp変数はCatalystコンポーネントにアクセスするために使用されます。
  #ここにビジネスロジックを記述する

関数内でSDKパッケージを初期化すると、レスポンスとしてPythonオブジェクトが返されます。このオブジェクトを使用して、Pythonクラスで定義されたコンポーネント固有のメソッドを呼び出し、必要なCatalystコンポーネントにアクセスできます。

注意 : Python関数は、お好みに応じてウェブコンソールまたはCLIから作成できます。ただし、現時点ではローカルから関数バンドルをアップロードすることのみが可能で、コンソールで直接コーディングすることはできません。今後、オンラインエディターのサポートを提供する予定です。

スコープを使用した初期化

Catalystでは、以下のスコープを使用してプロジェクトのSDKを初期化できます:

  • Admin: すべてのコンポーネントとそれぞれの機能に無制限にアクセスできます。たとえば、Data Storeに完全にアクセスして、読み取り、書き込み、削除などのすべての操作を実行できます。

  • User: コンポーネントや特定の機能へのアクセスを制限できます。たとえば、Data Storeに読み取りアクセスのみを提供できます。

注意:
  • スコープを使用してプロジェクトを初期化することは必須ではありません。デフォルトでは、初期化されたプロジェクトにはAdmin権限が付与されます。

  • ビジネスロジックを設計する際には、適切なスコープでCatalyst SDKを初期化していることを確認してください。スコープに対して定義した権限が、エンドユーザーのアクションを制御します。

  • さまざまなコンポーネントで実行できるSDK操作のスコープの詳細については、スコープテーブルを参照してください。

  • ビジネスロジックの設計方法に応じて、エンドユーザーがAdminまたはUserのアクションを実行できるかどうかを決定できます。これは、エンドユーザーがCatalyst Authenticationでアプリケーションにサインアップする際に割り当てられるロールに基づいて決定されます。ロールの権限は、Data StoreStratusScopes & PermissionsまたはBucket Permissionsセクションでそれぞれ設定できます。

  • Catalyst Stratusは、Early Accessモードの新しいオブジェクトストレージコンポーネントです。このコンポーネントは、現在のCloud Scale File Storeコンポーネントの大幅なアップグレードです。Stratusコンポーネントの詳細については、こちらをご覧ください。
    Early AccessモードのStratusコンポーネントをご利用になるには、support@zohocatalyst.comまでメールでお問い合わせください。

以下のSDKスニペットを使用すると、AdminまたはUserスコープでSDKを初期化できます:

Admin Scope

copy
import zcatalyst_sdk
def handler(request: Request):
  app = zcatalyst_sdk.initialize(scope='admin')
  #このapp変数はCatalystコンポーネントにアクセスするために使用されます。
  #コードサンプルについてはSDKドキュメントを参照してください。
  #ここにビジネスロジックを記述する

User Scope

copy
import zcatalyst_sdk
def handler(request: Request):
  app = zcatalyst_sdk.initialize(scope='user')
  #このapp変数はCatalystコンポーネントにアクセスするために使用されます。
  #コードサンプルについてはSDKドキュメントを参照してください。
  #ここにビジネスロジックを記述する

次のセクションでは、Python SDKのアップグレードについて説明します。

最終更新日 2026-03-30 13:40:30 +0530 IST