Azure / Azure/static-web-apps-cli
swa deploy exits 0 without uploading files — StaticSitesClient receives unrecognized --environment flag
- Langage dominant
- TypeScript
- Étoiles
- 668
- Forks
- 156
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
## Describe the bug
`swa deploy ./dist --deployment-token --env default` reports "Preparing deployment. Please wait..." then exits with code 0 - but **no files are uploaded** to the Static Web App.
## Root cause (from investigation)
The SWA CLI passes `--environment` to the underlying StaticSitesClient binary, but that binary only recognizes `--environmentName`. When StaticSitesClient receives the unrecognized flag, it prints its help text to stderr and exits 0, which the CLI interprets as success.
Evidence from running StaticSitesClient directly:
```
StaticSitesClient --app dist --apiToken --environment default --skipAppBuild true
ERROR(S):
Option 'environment' is unknown.
```
Exit code: **0** (not 1), so the CLI's `if (exitCode !== 0)` check passes.
## To Reproduce
1. Have a built static site in `./dist`
2. Run: `swa deploy ./dist --deployment-token --env default`
3. Observe output stops at "Preparing deployment. Please wait..."
4. No "Deployment Complete" message, no upload progress
5. Exit code is 0
6. Verify on Azure Portal or via curl that old files are still being served
## Expected behavior
- Either pass the correct `--environmentName` flag to StaticSitesClient
- Or detect the silent failure (no "Deployment Complete" in StaticSitesClient output) and report an error
## Workaround
Call StaticSitesClient directly with the correct flags:
```bash
StaticSitesClient --deploymentaction upload \
--app "dist" \
--appArtifactLocation "." \
--apiToken \
--skipAppBuild true \
--skipApiBuild true \
--deploymentProvider Custom
```
## Environment
- SWA CLI version: 2.0.8
- Node.js: v24.12.0 (also reproduced with v20.11.0)
- OS: Windows 11
- StaticSitesClient version: 1.0.0+689a6c1fe8fc32f40348cc41223a7e9d83dd43d2
## Related issues
- #783 (CLI doesn't produce a failure exit code in case of failure)
- #914 (SWA obscures underlying errors reported by StaticSitesClient)
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par le point d’entrée du déploiement de SWA CLI qui invoque StaticSitesClient et recherchez l’argument `--environment` ; comparez-le au comportement de `--environmentName` décrit ici. Reproduisez le problème avec `swa deploy ./dist --deployment-token --env default`, puis vérifiez que le déploiement téléverse des fichiers, signale sa fin et ne traite pas le cas d’un indicateur non reconnu comme un succès.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- azure, typescript
- Domaine
- cli, cloud
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- Calme
- Clarté
- Clairement spécifiée
- Accessibilité débutants
- 68/100