@Pierre Buyle there is no real reason for not doing it in JS except for the fact that I really enjoy Lua. I also find it easier to use Lua instead of JS for things that would usually be the domain of shell scripting because Lua has no callback hell and is not heavily built around asynchronous mechanisms. Most shell scripts don't benefit from callback-passing-style libraries and concurrency. I can still use coroutines in Lua if I need concurrency, but usually I don't need it.
Keeping the deploy script in JS would make it easier for people to reuse it, but it doesn't prevent them for deploying LWP on their own. The deploy script just automate some tasks for my own personal case. LWP is a static website, the build system is JS-based and once you've built it, it is just a matter of placing the static files in whatever host you want.
The deploy script just automates some tedious GH workflow for me.