Streamlit-Apps mit Snowflake CLI erstellen und bereitstellen

Unter diesem Thema wird das Arbeiten mit Streamlit in Snowflake unter Verwendung von Snowflake CLI beschrieben.

Was ist Snowflake CLI ?

Snowflake CLI ist ein Open-Source-Befehlszeilentool, das zusätzlich zu SQL-Operationen explizit für entwicklerzentrierte Workloads entwickelt wurde. Für Streamlit-Entwickler, die derzeit einen lokalen IDE-Entwicklungs-Workflow und einen Git-gestützten kontinuierlichen Integrations- und Bereitstellungs-Workflow (CI/CD) verwenden, bietet Snowflake CLI vertraute Tools, um Streamlit in Snowflake in ihren aktuellen Entwicklungsablauf zu integrieren.

Weitere Informationen dazu finden Sie unter Snowflake CLI.

Bevor Sie eine Streamlit-App mithilfe von Snowflake CLI erstellen:

Entwicklerhandbücher

Benutzerhandbuch

Beschreibung

Erstellen einer Streamlit-App

Erfahren Sie mehr über die Erstellung einer Streamlit-App mit Snowflake CLI.

Bereitstellen einer Streamlit-App

Erfahren Sie, wie Sie eine Streamlit-Anwendung mit Snowflake CLI bereitstellen.

Abrufen der URL für eine Streamlit-App

Erfahren Sie, wie Sie die URL für eine Streamlit-App abrufen können.

Freigabe einer Streamlit-App

Erfahren Sie mehr über die Freigabe einer Streamlit-App mit anderen Rollen mit Snowflake CLI.

Streamlit-Apps verwalten

Erfahren Sie mehr über die Verwaltung einer Streamlit-App mit Snowflake CLI.

Erstellen Sie eine CI/CD-Pipeline mit Snowflake CLI und einem GitHub-Aktions-Workflow

Im folgenden Abschnitt wird beschrieben, wie Sie eine Streamlit-App in Snowflake mithilfe von Snowflake CLI und einem GitHub Aktions--Workflow bereitstellen. Sie können einen ähnlichen Ansatz für andere Versionskontrollanbieter verwenden.

Voraussetzungen

Bevor Sie eine Streamlit-App mithilfe von Snowflake CLI und einem GitHub-Aktions-Workflow bereitstellen, stellen Sie sicher, dass Sie:

  • Die erforderlichen Anforderungen für die Verwendung von Streamlit in Snowflake erfüllen.

  • Über ein GitHub-Repository verfügen, dem Sie Dateien hinzufügen können.

Beispiel: Erstellen Sie einen GitHub-Aktions-Workflow mit Snowflake CLI

So erstellen Sie einen GitHub-Aktions-Workflow mit Snowflake CLI:

  1. Erstellen Sie in Ihrem Repository eine main.yml-Datei im Verzeichnis .github/workflows.

  2. Erstellen Sie ein SNOWCLI_PW-Geheimnis, das Sie im Workflow GitHub-Aktions-Workflow verwenden können.

  3. Kopieren Sie das Folgende in die main.yml-Datei:

    # Name the GitHub Action
    name: Deploy via Snowflake CLI
    
    on:
    push:
        branches:
        - main
    
    env:
    PYTHON_VERSION: '3.8'
    
    jobs:
    build-and-deploy:
        runs-on: ubuntu-latest
        environment: dev
        steps:
        # Checks out your repository under $GITHUB_WORKSPACE, so your workflow can access it
        - name: 'Checkout GitHub Action'
        uses: actions/checkout@v3
    
        - name: Install Python
        uses: actions/setup-python@v4
        with:
            python-version: ${{ env.PYTHON_VERSION }}
    
        - name: 'Install Snowflake CLI'
        shell: bash
        run: |
            python -m pip install --upgrade pip
            pip install snowflake-cli-labs
    
        - name: 'Create config'
        shell: bash
        env:
            SNOWFLAKE_PASSWORD: ${{ secrets.SNOWCLI_PW }}
        run: |
            mkdir -p ~/.snowflake
            cp config.toml ~/.snowflake/config.toml
            echo "password = \"$SNOWFLAKE_PASSWORD\"" >> ~/.snowflake/config.toml
            chmod 0600 ~/.snowflake/config.toml
    
        - name: 'Deploy the Streamlit app'
        shell: bash
        run: |
            snow streamlit deploy --replace
    
    Copy
  4. Um Ihren Workflow auszuführen, übertragen Sie die Änderungen in Ihr Repository.

Weitere Informationen finden Sie in der GitHub Dokumentation zu Aktionen.