Creare ambienti di anteprima del ramo in App Web statiche di Azure
È possibile configurare il sito per distribuire ogni modifica apportata ai rami che non sono un ramo di produzione. Questa distribuzione di anteprima viene pubblicata in un URL stabile che include il nome del ramo. Ad esempio, se il ramo è denominato dev
, l'ambiente è disponibile in una posizione come <DEFAULT_HOST_NAME>-dev.<LOCATION>.azurestaticapps.net
. È possibile eliminare un ambiente di succursale nel portale tramite la scheda Ambienti dell'app Web statica.
Configurazione
Per abilitare gli ambienti URL stabili, apportare le modifiche seguenti al file configuration.yml.
- Impostare l'input
production_branch
sul nome del ramo di produzione nelstatic-web-apps-deploy
processo in GitHub action o nell'attività AzureStaticWebApp. Questa azione garantisce che le modifiche apportate al ramo di produzione vengano distribuite nell'ambiente di produzione, mentre le modifiche ad altri rami vengono distribuite in un ambiente di anteprima. - Elencare i rami da distribuire negli ambienti di anteprima nella matrice di trigger nella configurazione del flusso di lavoro in modo che le modifiche apportate a tali rami attivino anche la distribuzione di GitHub Actions o Azure Pipelines.
- Impostare questa matrice su
**
per GitHub Actions o*
per Azure Pipelines se si vuole tenere traccia di tutti i rami.
- Impostare questa matrice su
Esempio
Nell'esempio seguente viene illustrato come abilitare gli ambienti di anteprima dei rami.
name: Azure Static Web Apps CI/CD
on:
push:
branches:
- main
- dev
- staging
pull_request:
types: [opened, synchronize, reopened, closed]
branches:
- main
jobs:
build_and_deploy_job:
...
name: Build and Deploy Job
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Build And Deploy
id: builddeploy
uses: Azure/static-web-apps-deploy@v1
with:
...
production_branch: "main"
Nota
Indica ...
il codice ignorato per maggiore chiarezza.
In questo esempio gli ambienti di anteprima vengono definiti per i dev
rami e staging
. Ogni ramo viene distribuito in un ambiente di anteprima separato.