swa
Commandes
Nom | Description | Type | État |
---|---|---|---|
swa login |
Connexion à Azure |
SWA – Principal | 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 – Principal | GA |
swa deploy |
Déployez le projet actuel sur Azure Static Web Apps. |
SWA – Principal | GA |
swa db |
Générez et modifiez la configuration de vos connexions de base de données Static Web Apps. |
SWA – Principal | GA |
swa login
Connexion à 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
.
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Exemples
Connexion interactive à Azure
swa login
Paramètres facultatifs
ID d’abonnement Azure utilisé par ce projet. Par défaut, il s’agit de process.env.AZURE_SUBSCRIPTION_ID
.
Nom du groupe de ressources. Vous pouvez configurer le groupe par défaut en utilisant az configure --defaults group=<name>
.
ID de locataire Azure. Par défaut, il s’agit de process.env.AZURE_TENANT_ID
.
ID client Azure.
Clé secrète client Azure.
Nom de l’application Azure Static Web Apps.
Effacer les informations d’identification persistantes avant la connexion. Par défaut, il s’agit de false
.
Utiliser le trousseau natif du système d’exploitation pour les informations d’identification persistantes. Par défaut, il s’agit de true
.
Désactiver l’utilisation du trousseau natif du système d’exploitation.
Paramètres globaux
Afficher le numéro de version.
Activer la sortie détaillée. Les valeurs de niveau sont silly
, info
, log
(valeur par défaut) et silent
.
Chemin d’accès au fichier swa-cli.config.json.
Configuration utilisée par l’interface CLI.
Afficher toutes les options résolues. La valeur par défaut est false
.
Afficher l’aide contextuelle.
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, et il va détecter les paramètres de votre projet et les frameworks utilisés. Une fois que c’est terminé, une nouvelle application web statique est créée et un fichier swa-cli.config.json 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"
}
}
} ```
swa init
[--yes]
Exemples
Créer une configuration de façon interactive.
swa init
Créer une configuration en utilisant des valeurs par défaut pour toutes les options.
swa init --yes
Initialiser le projet en utilisant la configuration nommée « myApp » du fichier swa-cli.config.json.
swa init --config-name myApp
Paramètres facultatifs
Répond « oui » à toutes les invites, ce qui désactive le mode interactif. La valeur par défaut est false
.
Paramètres globaux
Afficher le numéro de version.
Activer la sortie détaillée. Les valeurs de niveau sont silly
, info
, log
(valeur par défaut) et silent
.
Chemin d’accès au fichier swa-cli.config.json.
Configuration utilisée par l’interface CLI.
Afficher toutes les options résolues. La valeur par défaut est false
.
Afficher l’aide contextuelle.
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 start
avec 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 :
Outil | Port | Commande |
---|---|---|
Angular | 4200 |
swa start http://localhost:4200 |
WebAssembly Blazor | 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 (Create React App) | 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 d’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 start
ou démarrez le débogage dans VS Code. - Dans un terminal distinct, exécutez l’interface CLI Static Web Apps avec l’indicateur
--api-location
et l’URI du serveur d’API local, au format suivant :
swa start ./my-dist --api-location http://localhost:7071
Connexions aux bases de données
Pour démarrer votre application avec une connexion de base de données, utilisez le paramètre --data-api-location
et pointez vers le dossier contenant le fichier staticwebapp.database.config.json.
swa start ./src --data-api-location swa-db-connections
Exemples
Démarrer l’application avec des valeurs par défaut.
swa start
Démarrer l’application avec un serveur de développement front-end.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Démarrer l’application avec un serveur de développement front-end et back-end.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071
Paramètres facultatifs
Le dossier contenant le code source de l’application front-end. La valeur par défaut est .
.
Le dossier contenant le code source de l’application d’API.
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 .
.
Le dossier contenant le fichier staticwebapp.database.config.json.
Se connecter au serveur de développement d’application à cette URL au lieu d’utiliser l’emplacement de sortie.
Se connecter au serveur d’API à cette URL au lieu d’utiliser l’emplacement de sortie.
Le port du serveur d’API passé à func start
. La valeur par défaut est 7071.
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
.
La valeur du port à utiliser pour le serveur de développement de l’interface CLI. Par défaut, 4280
.
Délivrer l’application front-end et l’API via HTTPS. La valeur par défaut est false
.
Le certificat SSL (.crt) utilisé lors de l’activation du protocole HTTPS.
La clé SSL (.key) utilisée lors de l’activation du protocole HTTPS.
Emplacement d’une commande ou d’un fichier de script shell personnalisé à exécuter au démarrage.
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.
L’emplacement du répertoire du fichier staticwebapp.config.json
.
Ouvrir le navigateur sur le serveur de développement. La valeur par défaut est false.
Passer des arguments supplémentaires à la commande func start
.
Paramètres globaux
Afficher le numéro de version.
Activer la sortie détaillée. Les valeurs de niveau sont silly
, info
, log
(valeur par défaut) et silent
.
Chemin d’accès au fichier swa-cli.config.json.
Configuration utilisée par l’interface CLI.
Afficher toutes les options résolues. La valeur par défaut est false
.
Afficher l’aide contextuelle.
swa build
Génère l’application. Si vous avez une application Node.js, elle installe d’abord les dépendances.
Voici des cas d’usage courants : installer des dépendances pour l’application front-end et l’API, et exécuter des commandes de build pour les deux, en générant seulement le projet front-end ou d’API si l’autre projet n’a pas d’étape de génération.
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Exemples
Générer l’application et éventuellement installer des dépendances.
swa build
Détecter comment générer votre application et exécuter des commandes de build après l’installation des dépendances.
swa build --auto
Installer des dépendances pour l’application front-end.
swa build --app-location ./client
Utiliser la configuration nommée « myApp » dans *swa-cli.config.json* pour générer votre application front-end.
swa build myApp
Paramètres facultatifs
Le dossier contenant le code source de l’application front-end. La valeur par défaut est .
.
Le dossier contenant le code source de l’application d’API.
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 .
.
Génère l’application front-end.
Génère l’application d’API.
Détecte automatiquement comment générer vos applications front-end et d’API. La valeur par défaut est false
.
Paramètres globaux
Afficher le numéro de version.
Activer la sortie détaillée. Les valeurs de niveau sont silly
, info
, log
(valeur par défaut) et silent
.
Chemin d’accès au fichier swa-cli.config.json.
Configuration utilisée par l’interface CLI.
Afficher toutes les options résolues. La valeur par défaut est false
.
Afficher l’aide contextuelle.
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
Jeton de déploiement
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 :
Le portail Azure : Accueil → Application web statique → 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 en utilisant 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éeSWA_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 build
ou reportez-vous aux instructions de build de votre application.
Option 1 : depuis le dossier de build que vous voulez déployer, exécutez la commande deploy :
cd build/
swa deploy
Remarque : le dossier
build
doit contenir le contenu statique de votre application que vous voulez déployer. Option 2 : vous pouvez aussi déployer un dossier spécifique :
- Si votre application front-end nécessite une étape de build, exécutez
swa build
ou 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 build
ou 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.json
est définie correctement, par exemple :
{
"platform": {
"apiRuntime": "node:16"
}
}
Remarque : si votre projet n’a pas de fichiers
staticwebapp.config.json
, ajoutez-en un sous votre dossieroutputLocation
.
- 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 Version :
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
Remarque: le chemin d’accès pour
outputLocation
doit être relatif àappLocation
. Si vous utilisez un fichier de configurationswa-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 build
ou 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
swa deploy
[--yes]
Exemples
Déployer en utilisant un jeton de déploiement.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Déployer en utilisant un jeton de déploiement provenant des variables d’environnement
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Déployer en utilisant « swa-cli.config.json »
swa deploy swa deploy myconfig
Afficher le jeton de déploiement
swa deploy --print-token
Déployer sur un environnement spécifique
swa deploy --env production
Paramètres globaux
Afficher le numéro de version.
Activer la sortie détaillée. Les valeurs de niveau sont silly
, info
, log
(valeur par défaut) et silent
.
Chemin d’accès au fichier swa-cli.config.json.
Configuration utilisée par l’interface CLI.
Afficher toutes les options résolues. La valeur par défaut est false
.
Afficher l’aide contextuelle.
swa db
Générez et modifiez la configuration de vos connexions de base de données Static Web Apps.
Utilisez swa db init
pour générer un exemple de dossier swa-db-connections ainsi qu’un fichier de configuration staticwebapp.database.config.json. Si vous utilisez une base de données Cosmos DB for NoSQL, ceci va aussi générer un exemple de fichier de schéma staticwebapp.database.schema.gql.
swa db init --database-type <DATABASE_TYPE>
Exemples
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
Paramètres facultatifs
(Obligatoire) Le type de la base de données que vous voulez connecter (mssql, postgresql, cosmosdb_nosql, mysql).
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
.
La chaîne de connexion de la base de données que vous voulez connecter.
La base de données de votre compte Cosmos DB que vous voulez connecter (nécessaire seulement si vous utilisez le type de base de données cosmosdb_nosql).
Le conteneur de votre compte cosmosdb que vous voulez connecter.
Afficher l’aide pour une commande.
Paramètres globaux
Afficher le numéro de version.
Activer la sortie détaillée. Les valeurs de niveau sont silly
, info
, log
(valeur par défaut) et silent
.
Chemin d’accès au fichier swa-cli.config.json.
Configuration utilisée par l’interface CLI.
Afficher toutes les options résolues. La valeur par défaut est false
.
Afficher l’aide contextuelle.