Streamlit in Snowflake アプリとGitリポジトリの同期

Streamlitアプリでバージョン管理を使用するには、アプリをGitリポジトリのブランチと同期させます。

SnowflakeアカウントをGitリポジトリに接続するようにセットアップし、アプリで使用するブランチをリポジトリに作成しておく必要があります。 Gitを使用するためのSnowflakeの設定 をご参照ください。

注釈

従来の ROOT_LOCATION パラメーター を使用して作成されたStreamlitアプリでは、Git統合はサポートされていません。

Gitリポジトリのファイルから Streamlit in Snowflake アプリを作成します。

  1. Snowsight にサインインします。

  2. Projects » Streamlit を選択します。

  3. + Streamlit の横でドロップダウンメニューを開き、 Create from repository を選択します。

  4. File location in repository の場合、Streamlitアプリファイルを含むリポジトリとブランチを選択し、次に特定の .py ファイルを選択します。SnowflakeとGitリポジトリの接続の詳細については、 Gitを使用するためのSnowflakeの設定 をご参照ください。

  5. App location では、Streamlitアプリを格納するデータベースとスキーマを選択します。アプリ作成後にこれらを変更することはできません。

  6. Query warehouse および App warehouse については、ウェアハウスを選択してください。

  7. Create を選択して、Gitリポジトリの .py ファイルからStreamlitアプリを作成します。

既存の Streamlit in Snowflake アプリとGitリポジトリの接続

注釈

StreamlitアプリをGitリポジトリに接続するには、最低限以下の権限を持つロールを使用する必要があります。

  • Gitリポジトリの OWNERSHIP あるいは READ

  • Gitリポジトリを含むスキーマ上の USAGE

  1. Snowsight にサインインします。

  2. Projects » Streamlit を選択し、Streamlitアプリを開くか作成します。

  3. Files タブのデータベースオブジェクトエクスプローラーの横で、 Connect Git Repository を選択します。

  4. File location in repository の場合、Streamlitアプリと同期するリポジトリとブランチを選択します。

  5. Select Folder を選択します。

  6. アプリをGitリポジトリにコミットするプロンプトが表示されたら、 Git リポジトリのブランチに変更をプッシュ で説明したコミット手順を実行します。

StreamlitアプリとGitリポジトリを接続した後、ブランチ名を選択してSnowflakeまたはGithubでリポジトリの詳細を開くことができます。

Git リポジトリのブランチに変更をプッシュ

StreamlitアプリがGitリポジトリのブランチに接続されている場合、アプリに変更を加えた後、変更をブランチにプッシュすることができます。

注釈

変更をプッシュするには、Git リポジトリで OWNERSHIP または WRITE 権限を持つロールを使う必要があります。

  1. Snowsight にサインインします。

  2. Projects » Streamlit を選択し、Streamlitアプリを開きます。

  3. Streamlitアプリに関連する変更を加えてください。

  4. Push to Git を選択します。

  5. 表示される Push to Git ダイアログで、指定したブランチとリポジトリに変更をコミットする際に使用するユーザー名とメールアドレスを確認できます。ユーザー名とメールアドレスを更新する必要がある場合は、 Credentials セクションを展開し、 Author nameAuthor email を更新してください。

  6. Commit message の場合は、コミットに添えるメッセージを入力してください。

  7. Credentials セクションを展開して認証情報を設定します。Gitリポジトリの個人アクセストークンを Personal access token フィールドに入力します。このアクセストークンは、 GitHub のようなリモートのGitプロバイダーからのものです。

    • このトークンはGitリポジトリを認証するために必要です。

    • コミットが機能するためには、トークンはリポジトリの内容に対する読み取りと書き込みのアクセス権が必要です。

    • 一度入力されたトークンは、今後のコミットのために保存されます。今後のコミット時に更新することができます。

  8. Push を選択します。

変更内容がブランチにプッシュされたことを示す確認メッセージが表示されます。

Streamlit in Snowflake アプリとGitリポジトリのリモートブランチを同期させる

アプリをGitリポジトリのブランチに接続すると、リモートブランチの変更をStreamlitアプリと同期することができます。

StreamlitアプリとGitリポジトリのリモートブランチを同期するには:

  1. Snowsight にサインインします。

  2. Projects » Streamlit を選択し、Streamlitアプリを開くか作成します。

  3. データベースオブジェクトエクスプローラーの Files タブで、 Pull を選択します。

Snowflakeはリモートリポジトリのブランチに存在する変更を取得し、それらの変更とコンテンツをマージします。

マージの競合

Snowflakeは、同期中に発生したマージの競合の解決を試みます。Snowflakeが解決できないマージ競合がある場合、変更を破棄するか新しいブランチにコミットするようメッセージが表示されます。これらの変更が新しいブランチにコミットされたら、Gitプロバイダーを使って新しいブランチから元のブランチに手動でマージします。その後、Streamlitアプリに最新のアップデートを取り込んでください。