Build Bulma 4 Hugo #38
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This is a basic workflow to help you get started with Actions | |
name: Build Bulma 4 Hugo | |
# Controls when the workflow will run | |
on: | |
# Triggers the workflow on push or pull request events but only for the "main" branch | |
push: | |
branches: ["main"] | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
jobs: | |
build: | |
runs-on: windows-latest | |
env: | |
GH_TOKEN: ${{ github.token }} | |
permissions: | |
contents: write | |
steps: | |
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | |
- uses: actions/checkout@v4 | |
# Runs a set of commands using the runners shell | |
- name: Configure Git | |
run: | | |
git fetch --tags | |
git config --local core.autocrlf "false" | |
git config --local user.name ${{ secrets.GH_USERNAME }} | |
git config --global user.email ${{ secrets.GH_USERMAIL }} | |
git config --global user.signingkey ${{ secrets.GH_SIGNING_KEY }} | |
- name: Init scripts | |
run: | | |
[void](New-Item -Type Directory ./src -ErrorAction Stop) | |
Copy-Item ./build.ps1 ./src -ErrorAction Stop | |
- name: Prepare repository | |
run: | | |
Remove-Item -Recurse .\assets -ErrorAction SilentlyContinue | |
Remove-Item -Recurse .\.github -ErrorAction SilentlyContinue | |
Remove-Item .\.gitignore -ErrorAction SilentlyContinue | |
Remove-Item .\build.ps1 -ErrorAction SilentlyContinue | |
if (Test-Path .\assets) { throw ".\assets should not exist"} | |
if (Test-Path .\build.ps1) { throw ".\build.ps1 should not exist"} | |
if (Test-Path .\.gitignore) { throw ".\assets should not exist"} | |
if (Test-Path .\.github) { throw ".\assets should not exist"} | |
- name: Download Bulma | |
run: | | |
$BULMA_URL = "https://api.github.com/repos/jgthms/bulma" | |
{ | |
$BulmaReleases = Invoke-RestMethod -FollowRelLink -Uri "$BULMA_URL/releases?per_page=100" | %{$_}| ForEach-Object { | |
if ($_.tag_name) { | |
[PSCustomObject]@{ | |
version = [version]$_.tag_name | |
archive = [string]$_.assets.name | |
download = [string]$_.assets.browser_download_url | |
} | |
} else { | |
Write-Warning "found untagged release for $($_.assets.name)" | |
} | |
} | Sort-Object -Property version | |
} | |
$BulmaReleases | Format-Table | |
./sr/build.ps1 -ErrorAction Stop | |
- name: Create Release | |
run: | | |
git add assets\bulma | |
Write-Output "committing..." | |
git commit -m "add $bulmaFolder" | |
git push --tags | |
git tag "v$($release.version)" | |
Write-Output "Cleanup ..." | |
git checkout main | |
git branch -D $bulmaFolder | |
git log --oneline -n 5 | |
git tag | |
git branch | |
gh release create "v$($release.version)" | |
- name: Cleanup | |
run: | | |
Remove-Item -Recurse -Force .\src |