Azure DevOps deploy Jekyll to Azure Static Web Apps
Ha valaki szeretne egy honlapot indítani, akkor elsők között a WordPress szokott feljönni. Részemről szerettem volna kerülni ezt a világot, mivel sok olyan szolgáltatást hoz, amire nincs szükségem, cserébe nagyobb az erőforrás igénye, több karbantartást igényel és mindig találnak benne valami hibát… Alternatívaként találtam több statikus oldal generátorra, majd ezek közül a “Jekyll”-t választottam “Chirpy” témával.
Alapértelmezetten a “Github Pages” illetve self hostot támogatja, de ha már Azure-al foglalkozom, egyértelmű volt hogy ilyen eszközöket fogok használni.
Előfeltételek
- Jekyll Chrispy témával
https://github.com/cotes2020/jekyll-theme-chirpy
- Azure DevOps
https://dev.azure.com/
- Azure Staic web apps
https://docs.microsoft.com/en-us/azure/static-web-apps/overview
Static Web App
Hozzunk létre egy üres Static Web App-ot
Az ingyenes változat elég egyszerű szerkezet, nincs sok beállítás :)
Ez a token kell majd DevOps Pipeline-ba
DevOps
https://dev.azure.com/
Ezután Azure DevOps-ban hozzunk létre egy új projektet és importáljuk Jekyll-t
https://github.com/cotes2020/jekyll-theme-chirpy.git
Ide kell beilleszteni a “Manage deployment token”
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
trigger:
branches:
include:
- master
paths:
exclude:
- README.md
- LICENSE.txt
pool:
vmImage: ubuntu-latest
steps:
- script: |
touch Gemfile.lock
chmod a+w Gemfile.lock
mkdir .jekyll-cache _site
rm azure-pipelines.yml
- task: Docker@0
displayName: 'Run Jekyll'
inputs:
containerRegistryType: 'Container Registry'
action: 'Run an image'
imageName: 'jekyll/builder:latest'
volumes: |
$(build.sourcesDirectory):/srv/jekyll
containerCommand: 'jekyll build --future'
detached: false
- task: AzureStaticWebApp@0
inputs:
app_location: '/_site'
azure_static_web_apps_api_token: 'Manage deployment token'