Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Référence des commandes CLI Azure Static Web Apps.
Commands
| Command | Description | Type | Status |
|---|---|---|---|
| swa login | Connectez-vous à Azure. | SWA Core | GA |
| swa init | Configure un nouveau projet Azure Static Web Apps. | SWA Core | GA |
| swa build | Génère l’application. Si vous avez une application Node.js, elle installe d’abord les dépendances. | SWA Core | GA |
| swa start | Démarrez l’émulateur Azure Static Web Apps depuis un répertoire ou liez-vous à un serveur de développement en cours d’exécution. | SWA Core | GA |
| swa deploy | Déployez le projet actuel sur Azure Static Web Apps. | SWA Core | GA |
| swa db | Générez et modifiez la configuration de vos connexions de base de données Static Web Apps. | SWA Core | GA |
Global Parameters
| Parameter | Summary |
|---|---|
| --version, -v | Afficher le numéro de version. |
| --verbose, --V [level] | Activer la sortie détaillée. Les valeurs de niveau incluent silly, ( infolog par défaut) et silent. |
| --config, -c [chemin] | Chemin d’accès au fichier swa-cli.config.json. |
| --config-name, -cn | Configuration utilisée par l’interface CLI. |
| --print-config, -g | Afficher toutes les options résolues. La valeur par défaut est false. |
| --help, -h | Afficher l’aide contextuelle. |
swa login
Connectez-vous à Azure.
S’authentifier auprès d’Azure pour obtenir un jeton de déploiement pour Azure Static Web Apps en utilisant la commande swa deploy.
Syntax
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Examples
Exemple 1 : Connexion interactive à Azure
swa login
Parameters
--subscription-id, -S
ID d’abonnement Azure utilisé par ce projet. La valeur par défaut est process.env.AZURE_SUBSCRIPTION_ID.
--resource-group, -R
Nom du groupe de ressources. Vous pouvez configurer le groupe par défaut à l’aide de az configure --defaults group=<name>.
--tenant-id, -T
ID de locataire Azure. La valeur par défaut est process.env.AZURE_TENANT_ID.
--client-id, -C
ID client Azure.
--client-secret, -CS
Clé secrète client Azure.
--app-name, -n
Nom de l’application Azure Static Web Apps.
--clear-credentials -cc
Effacer les informations d’identification persistantes avant la connexion. La valeur par défaut est false.
--use-keychain, -u
Utiliser le trousseau natif du système d’exploitation pour les informations d’identification persistantes. La valeur par défaut est true.
--no-use-keychain, -nu
Désactiver l’utilisation du trousseau natif du système d’exploitation.
swa init
Configure un nouveau projet Azure Static Web Apps.
Configure un nouveau projet Azure Static Web Apps avec l’interface CLI Static Web Apps. Le mode interactif vous invite à entrer un nom de configuration, détecte les paramètres de votre projet et les infrastructures utilisées. Une fois terminé, une nouvelle application web statique est créée et un swa-cli.config.json fichier est généré dans le répertoire actif.
Vous pouvez exécuter swa init plusieurs fois afin de créer différentes configurations pour votre projet. Vous allez par exemple faire cela si vous travaillez sur un référentiel unique et que vous voulez configurer différents projets.
Le fichier de configuration généré est utilisé dans chaque commande que vous exécutez avec l’interface CLI Static Web Apps. Si vous avez plusieurs configurations nommées, vous pouvez utiliser l’argument positionnel ou l’option --config-name pour spécifier la configuration que vous voulez utiliser.
Voici un exemple de fichier de configuration généré par la commande init :
{
"$schema": "https://aka.ms/azure/static-web-apps-cli/schema",
"configurations": {
"myApp": {
"appLocation": ".",
"apiLocation": "api",
"outputLocation": "dist",
"appBuildCommand": "npm run build",
"apiBuildCommand": "npm run build --if-present",
"run": "npm run dev",
"appDevserverUrl": "http://localhost:8080"
}
}
}
Syntax
swa init
[--yes]
Examples
Exemple 1 : Créez une nouvelle configuration de manière interactive.
swa init
Exemple 2 : Créez une configuration à l’aide de valeurs par défaut pour toutes les options.
swa init --yes
Exemple 3 : Initialisez le projet à l’aide de la configuration nommée « myApp » à partir du fichier swa-cli.config.json.
swa init --config-name myApp
Parameters
--yes, -y
Répond « oui » à toutes les invites, ce qui désactive le mode interactif. La valeur par défaut est false.
swa build
Génère l’application. Si vous avez une application Node.js, elle installe d’abord les dépendances.
Les cas d’usage courants sont les suivants : installation de dépendances pour l’application frontale et l’API et exécution des commandes de build pour les deux, uniquement la génération du projet front-end ou de l’API si l’autre n’a pas d’étape de génération.
Syntax
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Examples
Exemple 1 : Générez l’application et installez éventuellement des dépendances.
swa build
Exemple 2 : Détectez comment générer votre application et exécuter des commandes de build après l’installation des dépendances.
swa build --auto
Exemple 3 : Installer des dépendances pour l’application frontale.
swa build --app-location ./client
Exemple 4 : Utilisez la configuration nommée myApp dans swa-cli.config.json pour générer votre application frontale.
swa build myApp
Parameters
--app-location, -a
Le dossier contenant le code source de l’application front-end. La valeur par défaut est ..
--api-location, -i
Le dossier contenant le code source de l’application d’API.
--output-location, -O
Le dossier contenant la source générée de l’application front-end. Le chemin d’accès est relatif à --app-location. La valeur par défaut est ..
--app-build-command, -A
Génère l’application front-end.
--api-build-command, -I
Génère l’application d’API.
--auto
Détecte automatiquement comment générer vos applications front-end et d’API. La valeur par défaut est false.
swa start
Démarrez l’émulateur Azure Static Web Apps depuis un répertoire ou liez-vous à un serveur de développement en cours d’exécution.
Délivrer depuis un dossier
Par défaut, l’interface CLI démarre et délivre le contenu statique depuis le répertoire de travail actuel ./ :
swa start
Si le dossier d’artefacts de votre application statique se trouve sous un autre dossier (par exemple ./my-dist), exécutez l’interface CLI et spécifiez ce dossier :
swa start ./my-dist
Délivrer depuis un serveur de développement
Quand vous développez votre application front-end localement, il est souvent utile d’utiliser le serveur de développement fourni avec l’interface CLI de votre framework front-end. L’utilisation de l’interface CLI du framework vous permet d’utiliser des fonctionnalités intégrées comme le « rechargement dynamique » (livereload) et le remplacement de module à chaud (HMR).
Pour utiliser l’interface CLI Static Web Apps avec votre serveur de développement local, effectuez ces deux étapes :
Démarrez votre serveur de développement local comme d’habitude. Par exemple, si vous utilisez Angular :
ng serve(ounpm start).Dans un terminal distinct, exécutez
swa startavec l’URI fourni par le serveur de développement, au format suivant :
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Voici une liste des ports par défaut et des commandes utilisés par quelques serveurs de développement courants :
| Tool | Port | Command |
|---|---|---|
| Angular | 4200 |
swa start http://localhost:4200 |
| Blazor WebAssembly | 5000 |
swa start http://localhost:5000 |
| Gatsby | 8000 |
swa start http://localhost:8000 |
| Hugo | 1313 |
swa start http://localhost:1313 |
| Next.js | 3000 |
swa start http://localhost:3000 |
| React (Créer une application React) | 3000 |
swa start http://localhost:3000 |
| Svelte (sirv-cli) | 5000 |
swa start http://localhost:5000 |
| Vue | 3000 |
swa start http://localhost:3000 |
Au lieu de démarrer séparément un serveur de développement, vous pouvez fournir la commande de démarrage à l’interface CLI.
# npm start script (React)
swa start http://localhost:3000 --run "npm start"
# dotnet watch (Blazor)
swa start http://localhost:5000 --run "dotnet watch run"
# Jekyll
swa start http://localhost:4000 --run "jekyll serve"
# custom script
swa start http://localhost:4200 --run "./startup.sh"
Accédez ensuite à l’application avec les services émulés depuis http://localhost:4280
Délivrer à la fois depuis l’application front-end et depuis l’API
Si votre projet inclut des fonctions API, l’interface CLI vérifie si azure Functions Core Tools est installé et disponible. Si ce n’est pas le cas, l’interface CLI télécharge et installe la version appropriée d’Azure Functions Core Tools.
Démarrer automatiquement le serveur d’API
Exécutez l’interface CLI et spécifiez le dossier qui contient le back-end d’API (un projet d’application Azure Functions valide) :
# static content plus an API
swa start ./my-dist --api-location ./api
# front-end dev server plus an API
swa start http://localhost:3000 --api-location ./api
Démarrer manuellement le serveur d’API
Quand vous développez votre back-end localement, il est parfois utile d’exécuter Azure Functions Core Tools séparément pour délivrer votre API. Ceci vous permet d’utiliser des fonctionnalités intégrées, comme le débogage et la prise en charge d’éditeurs puissants.
Pour utiliser l’interface CLI avec votre serveur de développement back-end d’API local, effectuez ces deux étapes :
Démarrez votre API en utilisant Azure Functions Core Tools :
func host startou démarrez le débogage dans VS Code.Dans un terminal distinct, exécutez l’interface CLI Static Web Apps avec l’indicateur
--api-locationet l’URI du serveur d’API local, au format suivant :
swa start ./my-dist --api-location http://localhost:7071
Database connections
Pour démarrer votre application avec une connexion de base de données, utilisez le --data-api-location paramètre et pointez vers le dossier contenant le fichier staticwebapp.database.config.json .
swa start ./src --data-api-location swa-db-connections
Syntax
swa start
Examples
Exemple 1 : Démarrez l’application par défaut.
swa start
Exemple 2 : Démarrez l’application avec un serveur de développement frontal.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Exemple 3 : Démarrez l’application avec un serveur de développement frontal et back-end.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071
Parameters
--app-location, -a <PATH>
Le dossier contenant le code source de l’application front-end. La valeur par défaut est ..
--api-location, -i <PATH>
Le dossier contenant le code source de l’application d’API.
--output-location, -O <PATH>
Le dossier contenant la source générée de l’application front-end. Le chemin d’accès est relatif à --app-location. La valeur par défaut est ..
--data-api-location
Dossier contenant le fichier staticwebapp.database.config.json .
--app-devserver-url, -D <URL>
Se connecter au serveur de développement d’application à cette URL au lieu d’utiliser l’emplacement de sortie.
--api-devserver-url, -is <URL>
Se connecter au serveur d’API à cette URL au lieu d’utiliser l’emplacement de sortie.
--api-port, -j <API_PORT>
Le port du serveur d’API passé à func start. La valeur par défaut est 7071.
--host, -q <HOST>
L’adresse de l’hôte utilisée pour le serveur de développement de l’interface CLI. La valeur par défaut est localhost.
--port, -p <PORT>
La valeur du port à utiliser pour le serveur de développement de l’interface CLI.
4280par défaut .
--ssl, -s
Délivrer l’application front-end et l’API via HTTPS. La valeur par défaut est false.
--ssl-cert, -e <SSL_CERT_LOCATION>
Le certificat SSL (.crt) utilisé lors de l’activation du protocole HTTPS.
--ssl-key, -k <SSL_KEY_LOCATION>
La clé SSL (.key) utilisée lors de l’activation du protocole HTTPS.
--run, -r <STARTUP_SCRIPT>
Emplacement d’une commande ou d’un fichier de script shell personnalisé à exécuter au démarrage.
--devserver-timeout, -t <TIME>
Le temps d’attente (en secondes) lors de la connexion au serveur de développement d’une application front-end ou à un serveur d’API. La valeur par défaut est 60.
--swa-config-location, -w <SWA_CONFIG_FILE_LOCATION>
L’emplacement du répertoire du fichier staticwebapp.config.json.
--open, -o
Ouvrir le navigateur sur le serveur de développement. La valeur par défaut est false.
--func-args, -f <FUNCTION_ARGUMENTS>
Passer des arguments supplémentaires à la commande func start.
swa deploy
Déployez le projet actuel sur Azure Static Web Apps.
Les cas d’utilisation courants sont les suivants :
Déployer une application front-end sans API
Déployer une application front-end avec une API
Déployer une application Blazor
Deployment token
L’interface CLI Static Web Apps prend en charge le déploiement en utilisant un jeton de déploiement. Ceci est souvent utile lors du déploiement depuis un environnement CI/CD. Vous pouvez obtenir un jeton de déploiement depuis :
Portail Azure : Accueil → Application web statique → Vue d’ensemble de votre instance → Vue d’ensemble → Gérer le jeton de déploiement
Si vous utilisez Azure CLI, vous pouvez obtenir le jeton de déploiement de votre projet à l’aide de la commande suivante :
az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
- Si vous utilisez l’interface CLI Azure Static Web Apps, vous pouvez utiliser la commande suivante :
swa deploy --print-token
Vous pouvez ensuite utiliser cette valeur avec le --deployment-token <TOKEN>, ou créer une variable d’environnement appelée SWA_CLI_DEPLOYMENT_TOKEN et la définir sur le jeton de déploiement.
Important
Ne stockez pas le jeton de déploiement dans un référentiel public. Cette valeur doit rester un secret.
Déployer une application front-end sans API
Vous pouvez déployer une application front-end sans API sur Azure Static Web Apps en exécutant les étapes suivantes :
- Si votre application front-end nécessite une étape de build, exécutez
swa buildou reportez-vous aux instructions de build de votre application.
Option 1 : Dans le dossier de build que vous souhaitez déployer, exécutez la commande deploy :
cd build/
swa deploy
Note
Le build dossier doit contenir le contenu statique de votre application que vous souhaitez déployer.
Option 2 : Vous pouvez également déployer un dossier spécifique :
Si votre application front-end nécessite une étape de build, exécutez
swa buildou reportez-vous aux instructions de build de votre application.Déployez votre application :
swa deploy ./my-dist
Déployer une application front-end avec une API
Pour déployer à la fois l’application front-end et une API sur Azure Static Web Apps, procédez comme suit :
Si votre application front-end nécessite une étape de build, exécutez
swa buildou reportez-vous aux instructions de build de votre application.Vérifiez que la version du runtime du langage de l’API dans le fichier
staticwebapp.config.jsonest définie correctement, par exemple :
{
"platform": {
"apiRuntime": "node:16"
}
}
Note
Si votre projet n’a staticwebapp.config.json pas de fichier, ajoutez-en un sous votre outputLocation dossier.
- Déployez votre application :
swa deploy ./my-dist --api-location ./api
Déployer une application Blazor
Pour déployer une application Blazor avec une API facultative sur Azure Static Web Apps, procédez comme suit :
- Générez votre application Blazor en mode Mise en production :
dotnet publish -c Release -o bin/publish
- Depuis la racine de votre projet, exécutez la commande
deploy:
swa deploy ./bin/publish/wwwroot --api-location ./Api
Déployer en utilisant swa-cli.config.json
Note
Le chemin d’accès pour outputLocation doit être relatif à appLocation.
Si vous utilisez un fichier de configuration swa-cli.config.json dans votre projet et que vous avez une entrée de configuration unique, utilisez une configuration comme celle-ci :
{
"configurations": {
"my-app": {
"appLocation": "./",
"apiLocation": "api",
"outputLocation": "frontend",
"start": {
"outputLocation": "frontend"
},
"deploy": {
"outputLocation": "frontend"
}
}
}
}
Vous pouvez ensuite déployer votre application en effectuant les étapes suivantes :
Si votre application front-end nécessite une étape de build, exécutez
swa buildou reportez-vous aux instructions de build de votre application.Déployez votre application :
swa deploy
Si vous avez plusieurs entrées de configuration, vous pouvez fournir l’ID de l’entrée pour spécifier celle qui doit être utilisée :
swa deploy my-otherapp
Syntax
swa deploy
[--yes]
Examples
Exemple 1 : Déployer à l’aide d’un jeton de déploiement.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Exemple 2 : Déployer à l’aide d’un jeton de déploiement à partir des variables d’environnement
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Exemple 3 : Déployer à l’aide d’un swa-cli.config.json fichier
swa deploy
swa deploy myconfig
Exemple 4 : Imprimer le jeton de déploiement
swa deploy --print-token
Exemple 5 : Déployer dans un environnement spécifique
swa deploy --env production
swa db
Générez et modifiez la configuration de vos connexions de base de données Static Web Apps.
Permet swa db init de générer un exemple de dossier swa-db-connections , ainsi qu’un staticwebapp.database.config.json fichier de configuration. Si vous utilisez une base de données Cosmos DB pour NoSQL, cela génère également un exemple de staticwebapp.database.schema.gql fichier de schéma.
Syntax
swa db init --database-type <DATABASE_TYPE>
Examples
Exemple 1 : Générer un exemple de dossier de configuration de connexion de base de données pour une base de données Azure SQL.
swa db init --database-type mssql
Parameters
--database-type, -t <DATABASE_TYPE>
(Obligatoire) Le type de la base de données que vous voulez connecter (mssql, postgresql, cosmosdb_nosql, mysql).
--folder-name, -f <FOLDER_NAME>
Un nom de dossier pour remplacer le nom du dossier de configuration de la connexion de base de données de la convention (veillez à mettre à jour en conséquence les fichiers de votre workflow CI/CD). La valeur par défaut est swa-db-connections.
---connection-string, -cs <CONNECTION_STRING>
La chaîne de connexion de la base de données que vous voulez connecter.
--cosmosdb_nosql-database, -nd <COSMOSDB_NOSQL_DATABASE>
Base de données de votre compte Cosmos DB que vous souhaitez connecter (nécessaire uniquement si vous utilisez cosmosdb_nosql le type de base de données).
--cosmosdb_nosql-container, -nc <COSMOSDB_NOSQL_CONTAINER>
Conteneur de votre compte Cosmos DB que vous souhaitez connecter.
--help, -h
Afficher l’aide pour une commande.