Deployment
Agenten werden per Git-Push oder CLI in der connic cloud bereitgestellt. Deployment-Tests und Build Logs ermöglichen die Prüfung, bevor ein erfolgreiches Deployment aktiviert wird.
Auf dieser Seite
Überblick
connic unterstützt zwei Deployment-Methoden für unterschiedliche Workflows:
Git-Integration
Verbinde ein Git-Repository mit einem Projekt. Pushes auf konfigurierte Branches lösen Deployments aus.
- • Automatisch bei jedem Push
- • Zuordnung von Branches zu Environments
- • Unterstützt GitHub, GitLab und Bitbucket
CLI Deployments
Starte das Deployment lokal oder aus einer CI/CD-Pipeline, wenn das connic-Projekt nicht mit einem Git-Repository verbunden ist.
- • Der Quellcode kann bei jedem Git-Provider liegen
- • In CI/CD-Pipelines einsetzbar
- • In das Standard-Environment oder ein bestimmtes Environment deployen
Git-Integration
Verbinde ein Git-Repository, um bei einem Push automatisch zu deployen. connic unterstützt GitHub, GitLab und Bitbucket.
Repository verbinden
Öffne Projekt-Settings → Git & Environments
Klicke auf Connect und wähle einen Provider aus (GitHub, GitLab oder Bitbucket)
Erlaube connic den Zugriff auf die Repositories. GitLab.com verwendet OAuth. Für Self-Managed GitLab ab Version 15.5 wird die Instanz zuerst unter Account → Git Accounts mit einem Personal Access Token hinzugefügt, das den Scope
apihat. Der GitLab-Benutzer muss Administrator sein oder in jedem Repository die Rolle Maintainer oder Owner haben.Wähle das Repository aus, das das Verzeichnis
agents/und alle unterstützenden Projekt-Verzeichnisse enthältBei einem Monorepo wird Repository root directory auf den Pfad gesetzt, in dem das connic SDK Projekt liegt (z. B.
services/agents). Lass das Feld leer, wenn die SDK-Dateien im Root-Verzeichnis des Repositories liegen.connic installiert einen Webhook im Repository, um Pushes sowie Pull oder Merge Requests zu erkennen
Environment-Branches konfigurieren
Öffne Projekt-Settings → Git & Environments
Lege für jedes Environment den Git Branch fest, der Deployments auslöst
Pushes auf Branches, die keinem Environment zugeordnet sind, werden ignoriert
Zum Beispiel:
- • Produktivumgebung →
main - • Staging →
develop - • Development →
feature/customer-import(optional)
Per Push deployen
Pushe auf den konfigurierten Branch. connic erkennt den Push über Webhooks und erstellt ein Deployment.
terminal# Per Push ein Deployment auslösen git add . git commit -m "Agenten aktualisieren" git push origin main
PR Testing
Für GitHub- und GitLab-Repositories kann connic die Suite aus einem Pull oder Merge Request ausführen, dessen Source-Branch im verbundenen Repository liegt. Das Ergebnis wird als Commit-Status connic/pr-tests gemeldet. Der Zielbranch bestimmt das zugeordnete Environment. Eine separat konfigurierte Testumgebung trennt den Testlauf von den Daten und Verbindungen der Produktivumgebung.
Unter PR Testing stehen weitere Informationen zur Einrichtung, zu Provider-spezifischen Merge-Checks, Wiederholungen und gemeinsam genutzten Environments.
CLI Deployments
Die CLI eignet sich für Deployments von einem lokalen Rechner oder aus einer CI/CD-Pipeline, wenn:
- für das Projekt kein Git-Repository mit connic verbunden ist
- das Deployment aus einem lokalen Checkout oder einer CI/CD-Pipeline startet
- das Quell-Repository einen beliebigen Git-Provider oder keinen Provider nutzt
SDK installieren
terminalpip install connic-composer-sdkAuthentifizieren
Führe den Login-Befehl aus. Er öffnet das Dashboard, um einen API Key zu erstellen, und fragt anschließend nach dem erzeugten Login-Token:
terminalconnic loginDadurch wird eine Datei
.connicerstellt:.connic{ "api_key": "cnc_xxxxxxxxxxxx", "project_id": "your-project-uuid" }Für CI/CD werden stattdessen die Umgebungsvariablen
CONNIC_API_KEYundCONNIC_PROJECT_IDverwendet.Umgebung auswählen
Zeige mit
connic deploy --listdie verfügbaren Ziele an. Umgebungen werden anhand ihres Namens ausgewählt;--envakzeptiert auch eine Environment-ID.Deploy
terminal# Umgebung nach Namen auswählen und bestätigen connic deploy # Verfügbare Deployment-Ziele auflisten connic deploy --list # Ziel direkt auswählen, anschließend bestätigen connic deploy --env stagingOhne Flags listet die CLI die Umgebungen nach Namen auf. Wähle ein Ziel, prüfe die Deployment-Zusammenfassung und bestätige den Vorgang, bevor die CLI Dateien hochlädt.
Die CLI lädt unterstützte Dateien aus
agents/,tools/,middleware/,schemas/,guardrails/,hooks/,tests/undconnectors/sowierequirements.txthoch. Verschachtelte Dateien werden einbezogen.
CI/CD-Integration
Verwende die CLI in einer CI/CD-Pipeline, wenn das connic Projekt mit keinem Git-Repository verbunden ist. Das Quell-Repository kann jeden Provider nutzen. Für unbeaufsichtigte Deployments werden ein explizites --env und --yes übergeben.
name: Deploy to connic
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: pip install connic-composer-sdk
- run: connic deploy --env "$CONNIC_ENV_NAME" --yes
env:
CONNIC_API_KEY: ${{ secrets.CONNIC_API_KEY }}
CONNIC_PROJECT_ID: ${{ secrets.CONNIC_PROJECT_ID }}
CONNIC_ENV_NAME: ${{ secrets.CONNIC_ENV_NAME }}deploy:
stage: deploy
script:
- pip install connic-composer-sdk
- connic deploy --env "$CONNIC_ENV_NAME" --yes
variables:
CONNIC_API_KEY: $CONNIC_API_KEY
CONNIC_PROJECT_ID: $CONNIC_PROJECT_IDHinterlege CONNIC_API_KEY, CONNIC_PROJECT_ID und CONNIC_ENV_NAME in den Einstellungen des Providers als CI/CD-Secrets.
Was während eines Deployments passiert
connectors/ werden für das Ziel-Environment aufgelöst, und das Log listet die Änderungen an Verbindungen auftests/ enthältEin Run nutzt das Deployment, das beim Start des Runs aktiv ist. Runs, die noch warten, wenn ein neues Deployment aktiv wird, starten auf dem neuen Deployment. Das gilt auch, wenn du ein früheres Deployment aktivierst.
Wird ein Deployment aktiv, wendet connic die darin im Code deklarierten Verbindungen an. Schlägt eine Änderung an einer Verbindung fehl, wird nichts aktiviert und das bisherige Deployment bedient weiterhin Anfragen. Siehe Verbindungen im Code.
Ein durch die Prüfung gestopptes Deployment erhält den Status Blocked. connic baut, testet und aktiviert es nicht. Öffne das Deployment, um die Hinweise zur Kontaktaufnahme mit dem Support zu sehen.
Deployments überwachen
Status und Logs der Deployments stehen im Tab Deployments:
- Sieh alle Deployments mit Status und Dauer
- Klicke auf ein Deployment, um die Build Logs anzuzeigen
- Das aktuell ausgelieferte Deployment ist mit „Active“ gekennzeichnet

Testphase (Deploy Gate)
Wenn ein Projekt tests/ enthält, bauen sowohl Git- als auch CLI Deployments das Deployment, führen die vollständige Suite aus und aktivieren es erst, wenn jeder Testfall bestanden wurde. Die Deployment-Detailseite zeigt die Pipeline live und die Ergebnisse jedes Testfalls.
Unter Das Deploy Gate stehen Informationen zur Auswahl einer separaten Testumgebung, zur Anzeige der Ergebnisse und zu beiden Möglichkeiten, das Gate zu überspringen: --skip-tests für CLI-Deployments oder Deploy & skip tests für ein manuell auf der Seite Deployments gestartetes Git-Deployment. Automatische Git-Deployments nach einem Push durchlaufen das Gate weiterhin. Die Anleitung für den ersten Test zeigt den Aufbau einer Suite.
Deployment zurücksetzen
Aktiviere im Tab Deployments ein anderes erfolgreiches Deployment:
Öffne den Tab Deployments und wähle ein erfolgreiches Deployment aus
Klicke für dieses Deployment auf den Button Activate
Der Traffic wird ohne erneuten Build an das ausgewählte Deployment geleitet
Das Aktivieren eines früheren Deployments stellt auch die darin im Code deklarierten Verbindungen wieder her, mit den Variablenwerten, die bei diesem Deployment galten. Der Aktivierungsdialog listet auf, welche Verbindungen angelegt, aktualisiert, zurückgeholt oder stillgelegt würden. Schlägt eine Änderung an einer Verbindung fehl, aktiviert Activate anyway das Deployment und überspringt die fehlerhaften Verbindungen.
Wenn ein Deployment fehlschlägt
Schlägt ein Build fehl, wird das Deployment als Failed markiert und das aktive Deployment bedient weiterhin Anfragen.
Einen Fehler untersuchen:
Öffne den Tab Deployments und klicke auf das fehlgeschlagene Deployment
Prüfe die Build Logs, um den Fehler zu finden
Häufige Fehlerursachen:
- Fehlende Abhängigkeiten in
requirements.txt - Eine Abhängigkeit ohne vorgebautes Wheel für Python 3.12 unter Linux x86-64, da Builds aus dem Quellcode deaktiviert sind (siehe Projektstruktur)
- Ungültige Agent-YAML-Syntax (fehlerhafte Konfiguration oder fehlende Pflichtfelder)
- Python-Importfehler in Dateien für Tools oder Middleware
- Verbindungsdateien, die auf ein fehlendes Environment, einen fehlenden Kontozugang, eine fehlende Bridge oder Variable verweisen
Schlägt bei der Aktivierung eine Änderung an einer Verbindung fehl, etwa wegen eines API-Fehlers beim Provider, bietet die Deployment-Seite Deploy anyway an. Damit wird der Commit erneut deployt, und die fehlerhaften Verbindungen werden übersprungen. Sie behalten ihren bisherigen Zustand bis zur nächsten Aktivierung.