TeamsFx-Befehlszeilenschnittstelle
Die TeamsFx-CLI ist eine textbasierte Befehlszeilenschnittstelle, die die Entwicklung von Teams-Anwendungen beschleunigt. Das Ziel besteht darin, beim Erstellen von Teams-Anwendungen eine tastaturzentrierte Erfahrung zu bieten.
Weitere Informationen finden Sie unter:
TeamsFx-Bibliothek
Microsoft Teams Framework (TeamsFx) ist eine Bibliothek, die allgemeine Funktionen und Integrationsmuster kapselt, z. B. den vereinfachten Zugriff auf Microsoft Identity. Sie können Apps für Microsoft Teams ohne Konfiguration erstellen.
Im Folgenden finden Sie eine Liste der wichtigsten TeamsFx-Features:
TeamsFx-Zusammenarbeit: Ermöglicht Entwicklern und Projektbesitzern, andere Mitarbeiter zum TeamsFx-Projekt einzuladen. Sie können zusammenarbeiten, um ein TeamsFx-Projekt zu debuggen und bereitzustellen.
TeamsFx CLI: Beschleunigt die Entwicklung von Teams-Anwendungen. Außerdem wird ein CI/CD-Szenario ermöglicht, in dem Sie die CLI zur Automatisierung in Skripts integrieren können.
TeamsFx SDK: Bietet Zugriff auf die Datenbank, z. B. die primäre TeamsFx-Codebibliothek mit einfacher Authentifizierung für client- und serverseitigen Code, der auf Teams-Entwickler zugeschnitten ist.
Erste Schritte
Installieren Sie teamsfx-cli
über npm
, und führen Sie teamsfx -h
aus, um alle verfügbaren Befehle zu überprüfen:
npm install -g @microsoft/teamsfx-cli
teamsfx -h
Unterstützte Befehle
Befehl | Beschreibung |
---|---|
teamsfx new |
Erstellen Sie eine neue Teams Anwendung. |
teamsfx add |
Fügt Ihrer Teams-Anwendung Features hinzu. |
teamsfx account |
Verwalten Sie Clouddienstkonten. Die unterstützten Clouddienste sind „Azure“ und „Microsoft 365“. |
teamsfx env |
Verwalten Sie Umgebungen. |
teamsfx provision |
Stellen Sie Cloudressourcen in der aktuellen Anwendung bereit. |
teamsfx deploy |
Stellen Sie die aktuelle Anwendung bereit. |
teamsfx package |
Erstellen Sie Ihre Teams-App in einem Paket für die Veröffentlichung. |
teamsfx validate |
Überprüfen Sie die aktuelle Anwendung. |
teamsfx publish |
Veröffentlichen Sie die App in Teams. |
teamsfx preview |
Zeigen Sie eine Vorschau der aktuellen Anwendung an. |
teamsfx config |
Verwalten Sie die Konfigurationsdaten. |
teamsfx permission |
Arbeiten Sie mit anderen Entwicklern im selben Projekt zusammen. |
teamsfx new
Standardmäßig befindet sich teamsfx new
im interaktiven Modus und Anleitungen zum Erstellen einer neuen Teams-Anwendung. Sie können im nicht interaktiven Modus arbeiten, indem Sie das Flag auf false
festlegen--interactive
.
Befehl | Beschreibung |
---|---|
teamsfx new template <template-name> |
Erstellen einer App aus einer vorhandenen Vorlage |
teamsfx new template list |
Auflisten aller verfügbaren Vorlagen |
Parameter für teamsfx new
Parameter | Anforderung | Beschreibung |
---|---|---|
--app-name |
Ja | Name Ihrer Teams-Anwendung. |
--interactive |
Nein | Wählen Sie die Optionen interaktiv aus. Die Optionen sind true und false , und der Standardwert ist true . |
--capabilities |
Nein | Wählen Sie Teams-Anwendungsfunktionen aus. Die Optionen sind tab , tab-non-sso , tab-spfx , bot , message-extension , notification , command-bot , sso-launch-page , . search-app Der Standardwert ist tab . |
--programming-language |
Nein | Programmiersprache für das Projekt. Die Optionen sind javascript oder typescript , und der Standardwert ist javascript . |
--folder |
Nein | Projektverzeichnis. Unter diesem Verzeichnis wird ein Unterordner mit Ihrem App-Namen erstellt. Der Standardwert ist ./ . |
--spfx-framework-type |
Nein | Gilt, wenn die Funktion SPFx tab ausgewählt ist. Front-End-Framework. Die Optionen sind none , react und minimal , und der Standardwert ist none . |
--spfx-web part-name |
Nein | Gilt, wenn die Funktion SPFx tab ausgewählt ist. Der Standardwert ist „helloworld“. |
--bot-host-type-trigger |
Nein | Gilt, wenn die Funktion Notification bot ausgewählt ist. Die Optionen sind http-restify , http-functions und timer-functions . Der Standardwert ist http-restify . |
Szenarien für teamsfx new
Sie können den interaktiven Modus verwenden, um eine Teams-App zu erstellen. Die folgende Liste enthält Szenarien zum Steuern aller Parameter mit teamsfx new
:
Http-ausgelöster Benachrichtigungsbot mit Restify-Server.
teamsfx new --interactive false --capabilities "notification" --bot-host-type-trigger "http-restify" --programming-language "typescript" --folder "./" --app-name MyAppName
Teams-Befehls- und -Antwortbot.
teamsfx new --interactive false --capabilities "command-bot" --programming-language "typescript" --folder "./" --app-name myAppName
Registerkarten-App, die in SPFx mit React gehostet wird.
teamsfx new --interactive false --app-name newspfxapp --capabilities tab-spfx --spfx-framework-type react
teamsfx add
In der folgenden Tabelle sind die verschiedenen Features Ihrer Teams-Anwendung zusammen mit deren Beschreibung aufgeführt.
Befehl | Beschreibung |
---|---|
teamsfx add notification |
Senden von Benachrichtigungen an Microsoft Teams über verschiedene Trigger. |
teamsfx add command-and-response |
Reagieren Sie auf einfache Befehle in Microsoft Teams-Chat. |
teamsfx add sso-tab |
Identitätsfähige Teams-Webseiten, die in Microsoft Teams eingebettet sind. |
teamsfx add tab |
Hello World-Webseiten, die in Microsoft Teams eingebettet sind. |
teamsfx add bot |
Hallo Welt Chatbot, um einfache und sich wiederholende Aufgaben nach Benutzer auszuführen. |
teamsfx add message-extension |
Die Nachrichtenerweiterung "Hallo Welt" ermöglicht Interaktionen über Schaltflächen und Formulare. |
teamsfx add azure-function |
Eine serverlose, ereignisgesteuerte Computelösung, mit der Sie weniger Code schreiben können. |
teamsfx add azure-apim |
Eine hybride Multi-Cloud-Verwaltungsplattform für APIs in allen Umgebungen. |
teamsfx add azure-sql |
Ein immer aktueller relationaler Datenbankdienst, der für die Cloud erstellt wurde. |
teamsfx add azure-keyvault |
Ein Clouddienst zum sicheren Speichern und Zugreifen auf Geheimnisse. |
teamsfx add sso |
Entwickeln Sie ein Feature für einmaliges Anmelden (Single Sign-On, SSO) für Teams-Startseiten und Botfunktionen. |
teamsfx add api-connection [auth-type] |
Stellen Sie mithilfe des TeamsFx SDK eine Verbindung mit einer API mit Authentifizierungsunterstützung her. |
teamsfx add cicd |
Fügen Sie CI/CD-Workflows für GitHub, Azure DevOps oder Jenkins hinzu. |
teamsfx account
In der folgenden Tabelle sind die Clouddienstkonten aufgeführt, z. B. Azure und Microsoft 365.
Befehl | Beschreibung |
---|---|
teamsfx account login <service> |
Melden Sie sich beim ausgewählten Clouddienst an. Dienstoptionen sind Microsoft 365 oder Azure. |
teamsfx account logout <service> |
Melden Sie sich beim ausgewählten Clouddienst ab. Dienstoptionen sind Microsoft 365 oder Azure. |
teamsfx account set --subscription |
Aktualisieren Sie die Kontoeinstellungen, um eine Abonnement-ID festzulegen. |
teamsfx env
In der folgenden Tabelle sind die verschiedenen Umgebungen aufgeführt.
Befehl | Beschreibung |
---|---|
teamsfx env add <new_env_name> --env <existing_env_name> |
Fügen Sie eine neue Umgebung hinzu, indem Sie sie aus der angegebenen Umgebung kopieren. |
teamsfx env list |
Listen Sie alle Umgebungen auf. |
Szenarien für teamsfx env
Erstellen Sie eine neue Umgebung, indem Sie aus der vorhandenen Entwicklungsumgebung kopieren:
teamsfx env add staging --env dev
teamsfx provision
Stellen Sie die Cloudressourcen in der aktuellen Anwendung bereit.
Befehl teamsFx provision |
Beschreibung |
---|---|
teamsfx provision manifest |
Stellen Sie eine Teams-App im Teams-Entwicklerportal mit entsprechenden Informationen bereit, die in der angegebenen Manifestdatei angegeben sind. |
Parameter für teamsfx provision
Parameter | Anforderung | Beschreibung |
---|---|---|
--env |
Ja | Wählen Sie eine Umgebung für das Projekt aus. |
--subscription |
Nein | Geben Sie eine Azure-Abonnement-ID an. |
--resource-group |
Nein | Legen Sie den Namen einer vorhandenen Ressourcengruppe fest. |
--sql-admin-name |
Nein | Anwendbar, wenn das Projekt eine SQL-Ressource enthält. Administratorname von SQL. |
--sql-password |
Nein | Anwendbar, wenn das Projekt eine SQL-Ressource enthält. Administratorkennwort von SQL. |
teamsfx deploy
Dieser Befehl wird verwendet, um die aktuelle Anwendung bereitzustellen. Standardmäßig wird das gesamte Projekt bereitgestellt, aber es ist auch möglich, teilweise bereitzustellen. Die Optionen sind frontend-hosting
, function
, apim
, bot
, spfx
, aad-manifest
und manifest
.
Parameter für teamsfx deploy
Parameter | Anforderung | Beschreibung |
---|---|---|
--env |
Ja | Wählen Sie eine vorhandene Umgebung für das Projekt aus. |
--open-api-document |
Nein | Anwendbar, wenn das Projekt eine APIM-Ressource enthält. Der Pfad der geöffneten API-Dokumentdatei. |
--api-prefix |
Nein | Anwendbar, wenn das Projekt eine APIM-Ressource enthält. Das API-Namenspräfix. Der eindeutige Standardname der API ist {api-prefix}-{resource-suffix}-{api-version} . |
--api-version |
Nein | Anwendbar, wenn das Projekt eine APIM-Ressource enthält. Die API-Version. |
--include-app-manifest |
Nein | Gibt an, ob das App-Manifest auf der Teams-Plattform bereitgestellt werden soll. Optionen sind yes und not . Der Standardwert ist no . |
--include-aad-manifest |
Nein | Gibt an, ob ein aad-Manifest bereitgestellt werden soll. Optionen sind yes und not . Der Standardwert ist no . |
teamsfx validate
Überprüfen Sie die aktuelle Anwendung. Mit diesem Befehl wird die Manifestdatei Ihrer Anwendung überprüft.
Parameter für teamsfx validate
--env
: Wählen Sie eine vorhandene Umgebung für das Projekt aus.
teamsfx publish
Veröffentlichen Sie die App in Teams.
Parameter für teamsfx publish
--env
: Wählen Sie eine vorhandene Umgebung für das Projekt aus.
teamsfx package
Erstellen Sie Ihre Teams-App in einem Paket für die Veröffentlichung.
teamsfx preview
Zeigen Sie eine Vorschau der aktuellen Anwendung lokal oder remote an.
Parameter für teamsfx preview
Parameter | Anforderung | Beschreibung |
---|---|---|
--local |
Nein | Zeigen Sie eine Vorschau der Anwendung lokal an. --local und --remote schließen sich aus. |
--remote |
Nein | Zeigen Sie eine Vorschau der Anwendung remote an. --remote und --local schließen sich aus. |
--env |
Nein | Wählen Sie eine vorhandene Umgebung für das Projekt aus, wenn der Parameter --remote angefügt wird. |
--folder |
Nein | Stammverzeichnis des Projekts. Der Standardwert ist ./ . |
--browser |
Nein | Der Browser zum Öffnen des Teams-Webclients. Die Optionen sind chrome , edge und default , z. B. der Standardbrowser des Systems, und der Wert ist default . |
--browser-arg |
Nein | Das Argument, das an den Browser übergeben werden soll, erfordert „--browser“ und kann mehrmals verwendet werden, z. B.: --browser-args="--guest". |
--sharepoint-site |
Nein | SharePoint-Website-URL, z. B. {your-tenant-name}.sharepoint.com für die SPFx-Projektremotevorschau. |
--m365-host |
Zeigen Sie eine Vorschau der Anwendung in Teams, Outlook oder Microsoft 365 (offiziell als Office-App bezeichnet) an. Optionen sind teams , outlook und office . Der Standardwert ist teams . |
Szenarien für teamsfx preview
Die folgende Liste enthält die gängigen Szenarien für'teamsfx preview:
Lokale Vorschau
Abhängigkeiten:
- Node.js
- .NET SDK
- Azure Functions Core Tools
teamsfx preview --local teamsfx preview --local --browser chrome
Remotevorschau
teamsfx preview --remote teamsfx preview --remote --browser edge
Hinweis
Die Protokolle der Hintergrunddienste, z. B. React, werden in
~/.fx/cli-log/local-preview/
gespeichert.
teamsfx config
Die Konfigurationsdaten befinden sich entweder im Benutzer- oder Projektbereich.
Befehl | Beschreibung |
---|---|
teamsfx config get [option] |
Zeigen Sie den Konfigurationswert der Option an. |
teamsfx config set <option> <value> |
Aktualisieren Sie den Konfigurationswert der Option. |
Parameter für teamsfx config
Parameter | Anforderung | Beschreibung |
---|---|---|
--env |
Ja | Wählen Sie eine vorhandene Umgebung für das Projekt aus. |
--folder |
Nein | Projektverzeichnis, das zum Abrufen oder Festlegen der Projektkonfiguration verwendet wird. Der Standardwert ist ./ . |
--global |
Nein | Bereich der Konfiguration. Bei "true" ist der Bereich auf den Benutzerbereich und nicht auf den Projektbereich beschränkt. Der Standardwert ist false . Zu den unterstützten globalen Konfigurationen gehören telemetry jetzt , validate-dotnet-sdk , validate-func-core-tools , validate-node . |
Szenarien für teamsfx config
Die Geheimnisse in der .userdata
Datei sind verschlüsselt und können Ihnen helfen, teamsfx config
erforderliche Werte anzuzeigen oder zu aktualisieren.
Senden von Telemetriedaten beenden
teamsfx config set telemetry off
Deaktivieren der Umgebungsprüfung
Es gibt drei Konfigurationen zum Aktivieren oder Deaktivieren von Node.js, .NET SDK und Azure Functions Core Tools-Überprüfung, und alle sind standardmäßig aktiviert. Sie können die Konfiguration auf „Aus“ festlegen, wenn Sie die Abhängigkeitsüberprüfung nicht benötigen und die Abhängigkeiten selbst installieren möchten. Überprüfen Sie die folgenden Handbücher:
- Node.js-Installationshandbuch
- .NET SDK-Installationshandbuch
- Azure Functions Core Tools-Installationshandbuch
Verwenden Sie den folgenden Befehl, um die Überprüfung des .NET SDK zu deaktivieren:
teamsfx config set validate-dotnet-sdk off
Verwenden Sie den folgenden Befehl, um die Überprüfung des .NET SDK zu aktivieren:
teamsfx config set validate-dotnet-sdk on
Anzeigen der gesamten Konfiguration des Benutzerbereichs
teamsfx config get -g
Anzeigen der gesamten Konfiguration im Projekt
teamsfx config get --env dev
Hinweis
Das Geheimnis wird automatisch entschlüsselt.
Aktualisieren der Geheimniskonfiguration im Projekt
teamsfx config set fx-resource-aad-app-for-teams.clientSecret xxx --env dev
teamsfx permission
TeamsFx CLI stellt Befehle für Zusammenarbeitsszenarien bereit teamsFx permission
.
Befehl | Beschreibung |
---|---|
teamsfx permission grant --env --email |
Erteilen Sie die Berechtigung für das Microsoft 365-Konto des Mitarbeiters für das Projekt einer angegebenen Umgebung. |
teamsfx permission status |
Berechtigungsstatus für das Projekt anzeigen |
Parameter für teamsfx permission grant
Parameter | Anforderung | Beschreibung |
---|---|---|
--env |
Ja | Geben Sie den Namen einer Umgebung an. |
--email |
Ja | Geben Sie die Microsoft 365-E-Mail-Adresse des Mitarbeiters an. Stellen Sie sicher, dass sich das Konto des Mitarbeiters im selben Mandanten wie der Ersteller befindet. |
Parameter für teamsfx permission status
Parameter | Anforderung | Beschreibung |
---|---|---|
--env |
Ja | Geben Sie den Namen einer Umgebung an. |
--list-all-collaborators |
Nein | Mit diesem Flag druckt die Teams Toolkit-CLI alle Projektmitarbeiter für das Projekt aus. |
Szenarien für teamsfx permission
Die folgende Liste enthält die erforderlichen Berechtigungen für TeamsFx
Projekte:
Erteilen von Berechtigungen
Projektersteller und Mitarbeiter können den Befehl
teamsfx permission grant
verwenden, um dem Projekt einen neuen Mitarbeiter hinzuzufügen:teamsfx permission grant --env dev --email user-email@user-tenant.com
Nachdem sie die erforderliche Berechtigung erhalten haben, können Projektersteller und Projektmitarbeiter das Projekt für den neuen Projektmitarbeiter von GitHub freigeben, und der neue Mitarbeiter kann über alle Berechtigungen für Microsoft 365-Konto verfügen.
Anzeigen des Berechtigungsstatus
Projektersteller und Projektmitarbeiter können den Befehl verwenden
teamsfx permission status
, um Microsoft 365-Kontoberechtigung für bestimmte env anzuzeigen:teamsfx permission status --env dev
Auflisten aller Mitarbeiter
Projektersteller und Mitarbeiter können den Befehl
teamsfx permission status
verwenden, um alle Mitarbeiter für eine bestimmte Umgebung anzuzeigen:teamsfx permission status --env dev --list-all-collaborators
Workflow der E2E-Zusammenarbeit in CLI
Als Projektersteller
So erstellen Sie ein neues TeamsFx-Registerkarten- oder Botprojekt und Azure als Hosttyp:
teamsfx new --interactive false --app-name newapp --host-type azure
So melden Sie sich bei Microsoft 365-Konto und dem Azure-Konto an:
teamsfx account login azure teamsfx account login Microsoft 365
So stellen Sie Ihr Projekt bereit
teamsfx provision
So zeigen Sie Mitarbeiter an
teamsfx permission status --env dev --list-all-collaborators
So fügen Sie ein weiteres Konto als Mitarbeiter hinzu. Stellen Sie sicher, dass sich das hinzugefügte Konto unter demselben Mandanten befindet:
teamsfx permission grant --env dev --email user-email@user-tenant.com
So übertragen Sie Ihr Projekt auf GitHub
Als Projektmitarbeiter:
Klonen Sie das Projekt von GitHub.
Melden Sie sich bei Microsoft 365-Konto an. Stellen Sie sicher, dass dasselbe Microsoft 365-Konto hinzugefügt wird:
teamsfx account login Microsoft 365
Melden Sie sich mit der Berechtigung "Mitwirkender" für alle Azure-Ressourcen beim Azure-Konto an:
teamsfx account login azure
Berechtigungsstatus überprüfen:
teamsfx permission status --env dev
Hinweis
Stellen Sie sicher, dass Die Projektbesitzer über die Berechtigung verfügen.
Aktualisieren Sie den Registerkartencode, und stellen Sie das Projekt remote bereit.
Starten Sie remote und das Projekt.
Manuelles Bereitstellen in Einer Azure-Web-App
Erstellen Sie eine Registerkarte zum Aktivieren des einmaligen Anmeldens.
Bereitstellen Ihres Projekts:
teamsfx provision
Führen Sie
npm install
undnpm run build:teamsfx:dev
intabs
oderapi folder
aus, um hinzugefügte Pakete zu installieren.Erstellen Sie einen Windows-App-Dienst im selben Betriebssystem wie Ihr Computer.
Führen Sie
$ az webapp up --name --html --subscription
in , oderbuild
oder ausfolder
tabs
.Ändern Sie
templates/azure/provision/frontendHosting.bicep
.Erneutes Bereitstellen. Das Teams-Toolkit aktualisiert Azure Active Directory (Azure AD) und das Manifest für Sie.
Suchen Sie Ihre
appPackage.dev.zip
im Ordner "build" oder "AppPackage", und fügen Sie sie Teams hinzu.