material.nvim
material.nvim copied to clipboard
ci: semver luarocks releases
Hey :wave:
Summary
This PR is part of a push to get neovim plugins on LuaRocks.
- See this blog post, which follows up on a series of posts by @teto.
- See also: rocks.nvim, a new luarocks-based plugin manager.
Things done:
- Add a release-please workflow that creates release PRs with SemVer versioning based on conventional commits.
- Add a workflow that publishes tags to LuaRocks when a tag or release is pushed.
The workflows are based on this guide by @vhyrro.
Notes:
- On each merge to
main, therelease-pleaseworkflow creates (or updates an existing) release PR. - You decide when to merge release PRs.
Doing so will result in a SemVer tag, and a GitHub release, which will trigger the
luarocksworkflow. - Tagged releases are installed locally and then published to luarocks.org. On PRs, a test release is installed, but not published.
- For the luarocks workflow to work, someone with a luarocks.org account will have to add their API key to this repo's GitHub actions secrets.
- Due to a shortcoming in LuaRocks (https://github.com/luarocks/luarocks-site/issues/188), the
neovimand/orvimlabels have to be added to the LuaRocks package manually (after the first upload), for this plugin to show up in https://luarocks.org/labels/neovim or https://luarocks.org/labels/vim, respectively.