{"meta":{"title":"Déploiement d'une application web statique sur Azure","intro":"Découvrez comment déployer une application web sur Azure Application web statique dans le cadre de vos flux de travail de déploiement continu (CD).","product":"GitHub Actions","breadcrumbs":[{"href":"/fr/actions","title":"GitHub Actions"},{"href":"/fr/actions/how-tos","title":"Guides pratiques"},{"href":"/fr/actions/how-tos/deploy","title":"Déployer"},{"href":"/fr/actions/how-tos/deploy/deploy-to-third-party-platforms","title":"Déployer sur des plateformes tierces"},{"href":"/fr/actions/how-tos/deploy/deploy-to-third-party-platforms/azure-static-web-app","title":"Azure Static Web App"}],"documentType":"article"},"body":"# Déploiement d'une application web statique sur Azure\n\nDécouvrez comment déployer une application web sur Azure Application web statique dans le cadre de vos flux de travail de déploiement continu (CD).\n\n## Prérequis\n\nPour pouvoir créer votre flux de travail GitHub Actions, vous devez d’abord suivre la procédure de configuration ci-dessous :\n\n1. Créez une application web statique Azure à l'aide de l'option « Autre » pour la source de déploiement. Pour plus d’informations, consultez [Démarrage rapide : Créer votre premier site statique dans le portail Azure](https://docs.microsoft.com/azure/static-web-apps/get-started-portal) dans la documentation Azure.\n\n1. Créez un secret nommé `AZURE_STATIC_WEB_APPS_API_TOKEN` avec la valeur de votre jeton de déploiement pour Static Web Apps. Pour plus d’informations sur la recherche de votre jeton de déploiement, consultez [Reset deployment tokens in Azure Static Web Apps](https://docs.microsoft.com/azure/static-web-apps/deployment-token-management) dans la documentation Azure.\n\n## Création du flux de travail\n\nUne fois que vous avez rempli les prérequis, vous pouvez passer à la création du flux de travail.\n\nL’exemple de flux de travail suivant montre comment générer et déployer une application web statique Azure lorsqu’il existe un push vers la branche `main` ou lorsqu’une demande de tirage ciblant `main` est ouverte, synchronisée ou rouverte. Le flux de travail supprime également le déploiement de préproduction correspondant lorsqu'une pull request visant `main` est fermée.\n\nSous la clé `env` de workflow, remplacez les valeurs suivantes :\n* `APP_LOCATION` par l’emplacement de votre code client ;\n* `API_LOCATION` vers l'emplacement de votre code source de l'API (si `API_LOCATION` n’est pas pertinent, vous pouvez supprimer la variable et les lignes où elle est utilisée) ;\n* `OUTPUT_LOCATION` vers l’emplacement de la sortie de build de votre code client.\n\nPour plus d’informations sur ces valeurs, consultez la configuration [Build pour Azure Static Web Apps](https://docs.microsoft.com/azure/static-web-apps/build-configuration?tabs=github-actions) dans la documentation Azure.\n\n```yaml copy\n# Ce workflow utilise des actions qui ne sont pas certifiées par GitHub.\n# Elles sont fournies par un tiers et régies par\n# des conditions d’utilisation du service, une politique de confidentialité et un support distincts.\n# documentation en ligne.\n\n# GitHub recommande d’épingler les actions à un SHA de commit.\n# Pour obtenir une version plus récente, vous devez mettre à jour le SHA.\n# Vous pouvez également référencer une balise ou une branche, mais l’action peut changer sans avertissement.\n\nname: Deploy web app to Azure Static Web Apps\n\nenv:\n  APP_LOCATION: \"/\" # location of your client code\n  API_LOCATION: \"api\" # location of your api source code - optional\n  OUTPUT_LOCATION: \"build\" # location of client code build output\n\non:\n  push:\n    branches:\n      - main\n  pull_request:\n    types: [opened, synchronize, reopened, closed]\n    branches:\n      - main\n\npermissions:\n  issues: write\n  contents: read\n  pull-requests: write\n\njobs:\n  build_and_deploy:\n    if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed')\n    runs-on: ubuntu-latest\n    name: Build and Deploy\n    steps:\n      - uses: actions/checkout@v6\n        with:\n          submodules: true\n      - name: Build And Deploy\n        uses: Azure/static-web-apps-deploy@1a947af9992250f3bc2e68ad0754c0b0c11566c9\n        with:\n          azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN }}\n          repo_token: ${{ secrets.GITHUB_TOKEN }}\n          action: \"upload\"\n          app_location: ${{ env.APP_LOCATION }}\n          api_location: ${{ env.API_LOCATION }}\n          output_location: ${{ env.OUTPUT_LOCATION }}\n\n  close_pull_request:\n    if: github.event_name == 'pull_request' && github.event.action == 'closed'\n    runs-on: ubuntu-latest\n    name: Close Pull Request\n    steps:\n      - name: Close Pull Request\n        uses: Azure/static-web-apps-deploy@1a947af9992250f3bc2e68ad0754c0b0c11566c9\n        with:\n          azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN }}\n          action: \"close\"\n```\n\n## Pour aller plus loin\n\n* Pour le modèle de workflow d’origine, consultez [`azure-staticwebapp.yml`](https://github.com/actions/starter-workflows/blob/main/deployments/azure-staticwebapp.yml) dans le référentiel GitHub Actions `starter-workflows`.\n* L’action utilisée pour déployer l’application web est l’action officielle Azure [`Azure/static-web-apps-deploy`](https://github.com/Azure/static-web-apps-deploy).\n* Pour plus d’exemples de flux de travail d’action GitHub qui se déploient sur Azure, consultez le référentiel [actions-workflow-samples](https://github.com/Azure/actions-workflow-samples)."}