diff --git a/.github/workflows/hugo-version-update.yml b/.github/workflows/hugo-version-update.yml new file mode 100644 index 00000000..b1982d8d --- /dev/null +++ b/.github/workflows/hugo-version-update.yml @@ -0,0 +1,53 @@ +name: Update Hugo version + +on: + schedule: + - cron: '0 6 * * *' + + workflow_dispatch: + +jobs: + updateBlowfish: + runs-on: ubuntu-latest + steps: + + - name: Check out code into the Go module directory + uses: actions/checkout@v4 + with: + ref: dev + submodules: true # Fetch Hugo themes (true OR recursive) + fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod + + - name: Fetch release version + id: fetch-release + run: | + curl -sL https://api.github.com/repos/gohugoio/hugo/releases/latest | \ + jq -r ".tag_name" > release-versions/hugo-latest.txt + + - name: Check for modified files + id: git-check + run: echo ::set-output name=modified::$([ -z "`git status --porcelain`" ] && echo "false" || echo "true") + + - name: Update config.toml + id: update-config + if: steps.git-check.outputs.modified == 'true' + run: | + cat release-versions/hugo-latest.txt | \ + while read version; do sed -i'' -E "s/(max = \")[0-9]+\.[0-9]+\.[0-9]+(\")/\1${version#v}\2/g" config.toml; done + + - name: Create Pull Request + if: steps.git-check.outputs.modified == 'true' + uses: peter-evans/create-pull-request@v6 + with: + commit-message: Update Hugo supported version + title: ⚙️ Update Hugo supported version + body: | + Updates [Hugo][1] support + + Auto-generated by [create-pull-request][2] + + [1]: https://github.com/gohugoio/hugo + [2]: https://github.com/peter-evans/create-pull-request + labels: dependencies, automated pr + branch: hugo-new-version + base: dev diff --git a/release-versions/hugo-latest.txt b/release-versions/hugo-latest.txt index 4b401344..f888e116 100644 --- a/release-versions/hugo-latest.txt +++ b/release-versions/hugo-latest.txt @@ -1 +1 @@ -v0.123.8 +v0.123.8 \ No newline at end of file