Para garantizar que su sitio se beneficie de las funciones y correcciones más recientes, es fundamental mantenerlo actualizado con la última versión del tema. Este artículo te guiará a través del proceso de establecimiento de un GitHub workflow que actualizará automáticamente la versión del tema. Esta acción realizará comprobaciones diarias de cualquier actualización del tema. Si se detecta una actualización, se generará un Pull Request para actualizar su sitio a la versión más reciente del tema.

Configurando Github Workflow

Ahora, crea un archivo theme-update.yml dentro del directorio .github/workflows de tu repositorio con el siguiente contenido:

name: "Theme Update"

on:
  schedule:
    - cron: "0 0 * * *"

jobs:
  update-theme:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          ref: main

      - name: Setup Node
        uses: actions/setup-node@v4
        with:
          node-version: 20

      - name: Setup Hugo
        uses: peaceiris/actions-hugo@v3
        with:
          hugo-version: "latest"
          extended: true

      - name: Update hugo modules
        run: |
          # update to latest version of all modules
          hugo mod get -u

          # update the npm dependencies
          hugo mod npm pack

          # cleanup go.sum file
          hugo mod tidy          

      - name: Install node modules
        run: npm install

      - name: Build
        run: |
          # build the site
          hugo --minify
          # remove file generated by the build
          rm -rf public/          

      - name: Create Pull Request
        uses: peter-evans/create-pull-request@v7
        with:
          base: main
          title: Update theme
          labels: automerge

Ahora está listo. De hora en adelante, esta acción se ejecutará diariamente y generará un Pull Request si se detecta alguna actualización del tema.