Azure / Azure/static-web-apps-cli
swa deploy exits 0 without uploading files — StaticSitesClient receives unrecognized --environment flag
- Lenguaje dominante
- TypeScript
- Estrellas
- 668
- Forks
- 156
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
## 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)
Guía de contribución
Línea de trabajo
Comienza en el punto de entrada del despliegue de SWA CLI que invoca a StaticSitesClient y busca el argumento `--environment`; compáralo con el comportamiento de `--environmentName` descrito aquí. Reproduce el problema con `swa deploy ./dist --deployment-token --env default` y, a continuación, verifica que el despliegue cargue archivos, informe de que ha finalizado y no trate el caso de una opción no reconocida como un éxito.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- azure, typescript
- Área
- cli, cloud
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Tranquilo
- Claridad
- Bien especificado
- Aptitud para principiantes
- 68/100