Hugo-webhely üzembe helyezése az Azure Static Web Appsben
Ez a cikk bemutatja, hogyan hozhat létre és helyezhet üzembe Hugo-webalkalmazásokat az Azure Static Web Appsben. A végeredmény egy új Azure Static Web App és a társított GitHub Actions, amely lehetővé teszi az alkalmazás létrehozásának és közzétételének szabályozását.
Ebben az oktatóanyagban az alábbiakkal fog megismerkedni:
- Hugo-alkalmazás létrehozása
- Azure Static Web Apps beállítása
- A Hugo-alkalmazás üzembe helyezése az Azure-ban
Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.
Előfeltételek
- Egy Azure-fiók, aktív előfizetéssel. Ha nem rendelkezik ilyen fiókkal, ingyenesen létrehozhat fiókot.
- Egy GitHub-fiók. Ha nem rendelkezik ilyen fiókkal, ingyenesen létrehozhat fiókot.
- Telepítve van egy Git-beállítás. Ha nincs ilyenje, telepítheti a Gitet.
Hugo-alkalmazás létrehozása
Hugo-alkalmazás létrehozása a Hugo parancssori felületével (CLI):
Kövesse az operációs rendszeren található Hugo telepítési útmutatóját .
Terminál megnyitása
Futtassa a Hugo CLI-t egy új alkalmazás létrehozásához.
hugo new site static-app
Nyissa meg az újonnan létrehozott alkalmazást.
cd static-app
Git-adattár inicializálása.
git init
Győződjön meg arról, hogy az ág neve el van nevezve
main
.git branch -M main
Ezután vegyen fel egy témát a webhelyre egy téma git-almodulként való telepítésével, majd adja meg a Hugo konfigurációs fájljában.
git submodule add https://github.com/budparr/gohugo-theme-ananke.git themes/ananke echo 'theme = "ananke"' >> config.toml
Véglegesítse a módosításokat.
git add -A git commit -m "initial commit"
Alkalmazás leküldése a GitHubra
Az Azure Static Web Appshez való csatlakozáshoz szüksége van egy GitHub-adattárra. Az alábbi lépések bemutatják, hogyan hozhat létre adattárat a webhelyéhez.
Hozzon létre egy üres GitHub-adattárat (ne hozzon létre README-t) a hugo-static-app nevű alkalmazásból.https://github.com/new
Adja hozzá a GitHub-adattárat távoliként a helyi adattárhoz. Az alábbi parancsban adja hozzá a GitHub-felhasználónevet a
<YOUR_USER_NAME>
helyőrző helyett.git remote add origin https://github.com/<YOUR_USER_NAME>/hugo-static-app
A helyi adattár leküldése a GitHubra.
git push --set-upstream origin main
A webalkalmazás üzembe helyezése
Az alábbi lépések bemutatják, hogyan hozhat létre új statikus helyalkalmazást, és hogyan helyezheti üzembe éles környezetben.
Az alkalmazás létrehozása
Nyissa meg az Azure Portalt
Válassza az Erőforrás létrehozása lehetőséget
Keressen rá a Static Web Apps kifejezésre
Statikus webalkalmazások kiválasztása
Válassza a Létrehozás elemet
Az Alapismeretek lapon adja meg a következő értékeket.
Tulajdonság Érték Előfizetés Az Azure-előfizetés neve. Erőforráscsoport my-hugo-group Név hugo-static-app Terv típusa Ingyenes Régió az Azure Functions API-hoz és az előkészítési környezetekhez Válasszon ki egy Önhöz legközelebbi régiót. Forrás GitHub Válassza a Bejelentkezés a GitHubbal lehetőséget, és hitelesítés a GitHubon.
Adja meg a következő GitHub-értékeket.
Tulajdonság Érték Szervezet Válassza ki a kívánt GitHub-szervezetet. Adattár Válassza ki a hugo-static-app lehetőséget. Ág Válassza ki a fő elemet. Feljegyzés
Ha nem lát tárházakat, lehetséges, hogy engedélyeznie kell az Azure Static Web Appst a GitHubon. Keresse meg a GitHub-adattárat, és nyissa meg Gépház > Alkalmazások > engedélyezett OAuth-alkalmazásait, válassza az Azure Static Web Apps lehetőséget, majd válassza a Grant lehetőséget. A szervezeti adattárak esetében az engedélyek megadásához a szervezet tulajdonosának kell lennie.
A Build Details (Összeállítás részletei) szakaszban válassza ki a Hugo elemet a Build Presets legördülő listából, és tartsa meg az alapértelmezett értékeket.
Áttekintés és létrehozás
Válassza a Véleményezés + Létrehozás lehetőséget , ha ellenőrizni szeretné, hogy a részletek helyesek-e.
Válassza a Létrehozás lehetőséget az App Service Static Web App létrehozásának megkezdéséhez, és üzembe helyezéshez kiépíthet egy GitHub Actionst.
Az üzembe helyezés befejezése után válassza az Ugrás az erőforrásra lehetőséget.
Az erőforrás képernyőjén válassza az URL-hivatkozást az üzembe helyezett alkalmazás megnyitásához. Előfordulhat, hogy várnia kell egy-két percet, amíg a GitHub Actions befejeződik.
Egyéni Hugo-verzió
Statikus webalkalmazás létrehozásakor létrejön egy munkafolyamat-fájl , amely tartalmazza az alkalmazás közzétételi konfigurációs beállításait. Egy adott Hugo-verziót a munkafolyamat-fájlban úgy jelölhet ki, hogy megad egy értéket HUGO_VERSION
a env
szakaszban. Az alábbi példakonfiguráció bemutatja, hogyan állíthatja be Hugot egy adott verzióra.
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@v3
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
A Git Info funkció használata a Hugo-alkalmazásban
Ha a Hugo-alkalmazás a Git Info funkciót használja, a statikus webalkalmazáshoz létrehozott alapértelmezett munkafolyamat-fájl a pénztári GitHub-művelettel kéri le a Git-adattár egy sekély verzióját, amelynek alapértelmezett mélysége 1. Ebben a forgatókönyvben Hugo úgy látja, hogy az összes tartalomfájl egyetlen véglegesítésből származik, így ugyanazzal a szerzővel, utolsó módosítási időbélyegzővel és más .GitInfo
változókkal rendelkeznek.
Frissítse a munkafolyamat-fájlt, hogy lekérje a teljes Git-előzményt úgy, hogy hozzáad egy új paramétert a actions/checkout
lépéshez, amely a következőre állítja a fetch-depth
következőt 0
(nincs korlát):
- uses: actions/checkout@v3
with:
submodules: true
fetch-depth: 0
A teljes előzmény lekérése növeli a GitHub Actions-munkafolyamat buildelési idejét, de a .Lastmod
.GitInfo
változók pontosak és elérhetők az egyes tartalomfájlokhoz.
Az erőforrások eltávolítása
Ha nem folytatja az alkalmazás használatát, az alábbi lépések végrehajtásával törölheti az Azure Static Web App-erőforrást:
- Nyissa meg az Azure Portalt
- A felső keresősávon keresse meg az alkalmazást a korábban megadott név alapján
- Kattintson az alkalmazásra
- Kattintson a Törlés gombra
- Kattintson az Igen gombra a törlési művelet megerősítéséhez