Zelfstudie: Een Hugo-site publiceren in Azure Static Web Apps
In dit artikel ziet u hoe u een Hugo-webtoepassing maakt en implementeert in Azure Static Web Apps. Het uiteindelijke resultaat is een nieuwe Azure Static Web Apps-resource met bijbehorende GitHub-acties, waarmee u beheert hoe de app wordt gebouwd en gepubliceerd.
In deze zelfstudie leert u het volgende:
- Een Hugo-app maken
- Een Azure Static Web Apps-resource instellen
- De Hugo-app implementeren in Azure
Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
Vereisten
- Een Azure-account met een actief abonnement. Als u nog geen account hebt, kunt u gratis een account maken.
- Een GitHub-account. Als u nog geen account hebt, kunt u gratis een account maken.
Een Hugo-app maken
Een Hugo-app maken met behulp van de Hugo-CLI (opdrachtregelinterface):
Volg de installatiehandleiding voor Hugo in uw besturingssysteem.
Open een terminal
Voer de Hugo-CLI uit om een nieuwe app te maken.
hugo new site static-appGa naar de nieuwe app.
cd static-appInitialiseer een Git-opslagplaats.
git initZorg ervoor dat uw vertakking de naam
mainheeft.git branch -M mainVoeg vervolgens een thema toe aan de site door een thema te installeren als een Git-submodule, en deze vervolgens op te geven in het Hugo-configuratiebestand.
git submodule add https://github.com/budparr/gohugo-theme-ananke.git themes/ananke echo 'theme = "ananke"' >> config.tomlVoer de wijzigingen door.
git add -A git commit -m "initial commit"
Push de toepassing naar GitHub
U hebt een opslagplaats in GitHub nodig om verbinding te maken met Azure Static Web Apps. In de volgende stappen ziet u hoe u een opslagplaats maakt voor uw site.
Maak in https://github.com/new een lege GitHub-opslagplaats (maak geen Leesmij-bestand) met de naam statische-hugo-app.
Voeg de GitHub-opslagplaats als externe locatie toe aan de lokale opslagplaats. Zorg ervoor dat u de tijdelijke aanduiding
<YOUR_USER_NAME>in de volgende opdracht vervangt door uw GitHub-gebruikersnaam.git remote add origin https://github.com/<YOUR_USER_NAME>/hugo-static-appPush de lokale opslagplaats naar GitHub.
git push --set-upstream origin main
De web-app implementeren
De volgende stappen laten zien hoe u een nieuwe statische site-app maakt en deze implementeert in een productieomgeving.
De toepassing maken
Ga naar Azure Portal
Selecteer Een resource maken
Zoek naar Static Web Apps
Selecteer Static Web Apps
Selecteer Maken
Voer op het tabblad Basisinformatie de volgende waarden in.
Eigenschap Waarde Abonnement Uw Azure-abonnementnaam. Resourcegroep my-hugo-group Naam hugo-static-app Plantype Gratis Regio voor Azure Functions API en faseringsomgevingen Selecteer een regio die het dichtst bij u in de buurt is. Bron GitHub Selecteer Aanmelden met GitHub en verifieren met GitHub.
Voer de volgende GitHub in.
Eigenschap Waarde Organisatie Selecteer de gewenste GitHub organisatie. Opslagplaats Selecteer hugo-static-app. Vertakking Selecteer hoofd. Selecteer in de sectie Build Details de optie Hugo in de vervolgkeuzeset Build Presets en bewaar de standaardwaarden.
Controleren en maken
Selecteer de knop Beoordelen en maken om te controleren of de details juist zijn.
Selecteer Maken om te beginnen met het maken van App Service statische web-app en een GitHub actie voor implementatie in te stellen.
Zodra de implementatie is voltooid, klikt u op Naar de resource gaan.
Klik in het resourcescherm op de URL-koppeling om de geïmplementeerde toepassing te openen. Mogelijk moet u enkele minuten wachten voor de GitHub-actie is voltooid.
Aangepaste Hugo-versie
Wanneer u een statische web-app genereert, wordt er een werkstroombestand gegenereerd dat de configuratie-instellingen voor de publicatie bevat. U kunt een specifieke Hugo-versie in het werkstroombestand aanwijzen door in de sectie env een waarde voor HUGO_VERSION op te geven. In de volgende voorbeeldconfiguratie ziet u hoe u Hugo instelt op een specifieke versie.
jobs:
build_and_deploy_job:
if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed')
runs-on: ubuntu-latest
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:
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN }}
repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for GitHub integrations (i.e. PR comments)
action: "upload"
###### Repository/Build Configurations - These values can be configured to match you app requirements. ######
# For more information regarding Static Web App workflow configurations, please visit: https://aka.ms/swaworkflowconfig
app_location: "/" # App source code path
api_location: "api" # Api source code path - optional
output_location: "public" # Built app content directory - optional
###### End of Repository/Build Configurations ######
env:
HUGO_VERSION: 0.58.0
Resources opschonen
Als u deze toepassing verder niet gaat gebruiken, kunt u de Azure Static Web Apps-resource verwijderen door de volgende stappen te volgen:
- Open de Azure-portal
- Zoek de toepassing in de bovenste zoekbalk via de naam die u deze eerder hebt gegeven
- Klik op de app
- Klik op de knop Verwijderen
- Klik op Ja om de verwijdering te bevestigen