Hooks (https://git-scm.com/docs/githooks) together with templates (https://coderwall.com/p/jp7d5q/create-a-global-git-commit-ho...) sound like a good alternative.
Edit: I can see where your solution has an advantage. When one accepts contributions, all of that can be automated with web hooks via github. Still, having to run lambda/similar for this is a bit heavy weight.
Edit 2: Considering that for a release, I would opt in for release from a tag or explicit commit, that would be a non issue. Pull when needed, for redundancy, use another, self hosted bare repo. Push there in case of github down.