Skip to content

Auto updater using Github Actions for my blogs created in Hugo and deployed to Netlify.

License

Notifications You must be signed in to change notification settings

abtris/hugo-netlify-autoupdater

Repository files navigation

Build Status

Hugo Netlify Autoupdater

  • using cron for run .github/workflows/scheduler.yml
  • compare current deployed version of Hugo in all blogs
  • create PR's for update version netlify.toml config
  • available settings are in config.toml - source repository, target repositories and branch

Dependencies

GITHUB_TOKEN

  • as GITHUB_TOKEN you need personal one that have scope repo for all your repositories that you want create PR's. Default in Github Action have access only to current repo.

Install

git clone https://github.com/abtris/hugo-netlify-autoupdater.git
cd hugo-netlify-autoupdater
go mod download

Config

Configuration is in config.toml file.

source_repo_releases = "gohugoio/hugo"

[[target_repos]]
  repo = "owner/repo"
  target_file = "netlify.toml"
  target_variable = "HUGO_VERSION"
  branch = "master"

Run

make run

How that works

sequenceDiagram
    autonumber
loop Every week           
    Scheduler (GitHub Actions)->>Hugo repository: Do you have a new release?
    Hugo repository-->>Scheduler (GitHub Actions): Yes, I have a new $HUGO_VERSION!
opt Fail response
    Hugo repository-->>Scheduler (GitHub Actions): No.
end        
    Scheduler (GitHub Actions)->>Blog repositories: Is this $HUGO_VERSION newer than your Hugo version?    
    Blog repositories-->>Scheduler (GitHub Actions): Yes, I have old version.
opt Fail response
    Blog repositories-->>Scheduler (GitHub Actions): No, I already have this version.
end    
    Scheduler (GitHub Actions)->>Blog repositories: I will create PR with update to you!
end    
Loading

License

MIT

About

Auto updater using Github Actions for my blogs created in Hugo and deployed to Netlify.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •