Environments
Deployment-Environments verbinden Git-Branches mit getrennten Workflows für Entwicklung, Staging und Produktivbetrieb. Jedes Environment erhält eigene Variablen.
Auf dieser Seite
Überblick
Environments trennen Code, Konfiguration und Daten für Entwicklung, Staging und Produktivbetrieb. Sie können unterschiedliche Agenten und Codeversionen enthalten, etwa wenn ihnen verschiedene Git-Branches zugeordnet sind. Ein typisches Setup verwendet getrennte Environments für Produktivbetrieb und Staging. Beide haben eigene Variablen, eine eigene Deployment-Pipeline und separat aufgezeichnete Runs. Jedes Projekt beginnt mit einem Standard-Environment.
Verwalte Environments unter Projekt-Settings → Git & Environments. Wie viele Environments verfügbar sind, hängt vom Abonnement ab.
Environment erstellen
Klicke auf Create Environment und gib einen Namen ein. Wenn das Projekt mit einem Git-Repository verbunden ist, ordne das Environment einem Git-Branch zu. Andernfalls verwendet das Environment CLI Deployments.
| Feld | Beschreibung |
|---|---|
| Name | Ein verständlicher Name für das Environment (z. B. Produktivumgebung, Staging, QA) |
| Git Branch | Der Branch, der Deployments in dieses Environment auslöst. Nur verfügbar, wenn ein Git-Provider verbunden ist. Pushes auf diesen Branch deployen in dieses Environment. |

Git-Branch-Zuordnung
Wenn ein Git-Repository mit einem Projekt verbunden ist, kann jedes Environment einem bestimmten Branch zugeordnet werden. Ein Push auf diesen Branch löst ein Deployment in das entsprechende Environment aus. So sind beispielsweise folgende Workflows möglich:
mainEin Merge nach main startet ein Deployment in der zugeordneten Produktivumgebung
developEin Push auf develop startet ein Deployment in der zugeordneten Staging-Umgebung
Aktualisiere die Liste der verfügbaren Branches in den Projekt-Settings.
CLI Deployments
Projekte ohne verbundenes Git-Repository verwenden CLI Deployments. Kopiere die ID des Ziel-Environments aus den Einstellungen und übergib sie an den Deploy-Befehl:
connic deploy --env <environment-id>Dieser Ansatz eignet sich auch für CI/CD-Pipelines, die nach eigener Logik in bestimmte Environments deployen. Vollständige CI/CD-Beispiele stehen in der Deployment-Dokumentation.
Standard-Environment
Ein Environment ist immer als default markiert. Das Standard-Environment wird beim Öffnen des Projekt-Dashboards ausgewählt und dient als Ziel für CLI Deployments, wenn kein Flag --env angegeben ist. Im Menü des Environments lässt sich ein anderes zum Standard machen.
Environment-Variablen
Variablen gelten jeweils nur für ein Environment. Damit lassen sich für Staging und Produktivumgebung unterschiedliche API Keys, Datenbank-URLs oder Feature Flags verwenden. Verwalte Variablen unter Projekt-Settings → Variables.
Variablen hinzufügen
Füge Variablen einzeln über das Formular hinzu oder verwende den Raw Editor für mehrere Einträge. Beim Erstellen einer Variablen lassen sich mehrere Environments gleichzeitig auswählen.
| Option | Beschreibung |
|---|---|
| Key | Name der Variablen. Muss mit einem Buchstaben beginnen und darf nur Großbuchstaben, Zahlen und Unterstriche enthalten (z. B. DATABASE_URL) |
| Value | Der Wert der Variablen. Kann bei der Eingabe ein- oder ausgeblendet werden. |
| Sensitive | Wenn aktiviert, wird der Wert nach dem Erstellen im Dashboard maskiert. Verwende diese Option für API Keys, Passwörter und Secrets. |
| Environments | Wähle ein oder mehrere Environments aus, in denen die Variable erstellt werden soll. |
Raw Editor
Der Raw Editor akzeptiert pro Zeile ein Paar im Format KEY=VALUE. Stelle einem Key ! voran, um ihn als sensibel zu markieren. Zeilen, die mit # beginnen, sind Kommentare.
# Raw-Editor-Format (KEY=VALUE; sensible Keys mit ! markieren)
DATABASE_URL=postgresql://user:pass@host:5432/db
!OPENAI_API_KEY=sk-xxxxxxxxxxxx
LOG_LEVEL=info
# Zeilen, die mit # beginnen, sind KommentareVariablen in Agenten verwenden
Python Tools und Middleware lesen Variablen über os.environ. In der MCP-Konfiguration werden Platzhalter im Format ${VAR_NAME} in Server-URLs, Headern und Bridge-IDs unterstützt.
In Tools
import os
import httpx
async def call_external_api(query: str) -> dict:
"""Externe API mit Environment-spezifischen Zugangsdaten aufrufen."""
api_key = os.environ["EXTERNAL_API_KEY"]
api_url = os.environ.get("EXTERNAL_API_URL", "https://api.example.com")
async with httpx.AsyncClient() as client:
response = await client.post(
api_url,
headers={"Authorization": f"Bearer {api_key}"},
json={"query": query},
)
response.raise_for_status()
return response.json()In Middleware
import os
from connic import StopProcessing
async def before(content: dict, context: dict) -> dict:
"""Anfragen mit einem privaten Authentifizierungsdienst validieren."""
auth_url = os.environ.get("AUTH_SERVICE_URL")
auth_secret = os.environ.get("AUTH_SERVICE_SECRET")
if not auth_url or not auth_secret:
raise StopProcessing("Authentifizierungsdienst nicht konfiguriert")
payload = context.get("payload", {})
# ... Validierungslogik mit payload, auth_url und auth_secret
return contentDev Environments
Dev Environments bilden die Grundlage für die Entwicklung mit Hot Reload von connic dev. Sie können kurzlebig sein und am Ende der Session automatisch gelöscht werden oder einen Namen erhalten und über Sessions hinweg bestehen bleiben. Im Environment-Selector werden sie getrennt von Standard-Environments angezeigt.
- In einem eigenen Bereich des Environment-Selectors gruppiert
- Code wird live vom lokalen Rechner synchronisiert; die Deployments-Seite zeigt die laufende Session mit einem Dev session-Badge
- Eigene Environment-Variablen und Verbindungen
Der vollständige Workflow steht in der Dev-Server-Dokumentation.
Separate Testumgebung
Für jedes Standard-Environment gibt es unter Settings → Git & Environments ein optionales Dropdown Test environment. Das Deploy Gate führt die Test Suite vor der Aktivierung des Deployments in diesem Environment aus und verwendet dabei dessen Variablen, Verbindungen und Zugangsdaten.
Ein Environment prod-test mit API Keys für Testsysteme und ohne Produktivverbindungen trennt die produktiven Systeme von der Testsuite für prod.
Wenn das Dropdown leer ist, laufen die Tests im Deploy-Environment selbst.
Zwischen Environments wechseln
Der Environment-Selector im Projekt-Header wechselt zwischen Environments. Das ausgewählte Environment bestimmt die im Dashboard sichtbaren Daten: Agenten, Runs, Verbindungen und Variablen gelten jeweils nur für das aktive Environment.