diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..8c3895f --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,36 @@ +name: Publish to LuaRocks + +on: + workflow_dispatch: + inputs: + version: + description: 'Version to publish (e.g. 0.1.5)' + required: true + push: + tags: + - "*" + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Install LuaRocks + uses: hishamhm/gh-actions-lua@master + with: + luaVersion: "5.1" + + - uses: hishamhm/gh-actions-luarocks@master + + - name: Upload to LuaRocks + env: + LUAROCKS_API_KEY: ${{ secrets.LUAROCKS_API_KEY }} + run: | + TAG="${{ github.event.inputs.version || github.ref_name }}" + ROCKSPEC="lua-reqwest-${TAG}-1.rockspec" + if [ ! -f "$ROCKSPEC" ]; then + echo "Error: $ROCKSPEC not found" + exit 1 + fi + luarocks upload "$ROCKSPEC" --api-key="$LUAROCKS_API_KEY" diff --git a/lua-reqwest-0.1.5-1.rockspec b/lua-reqwest-0.1.5-1.rockspec new file mode 100644 index 0000000..805487e --- /dev/null +++ b/lua-reqwest-0.1.5-1.rockspec @@ -0,0 +1,28 @@ +package = "lua-reqwest" +version = "0.1.5-1" + +source = { + url = "git+https://github.com/oowl/lua-reqwest", + tag = "0.1.5", +} + +description = { + summary = "A Lua HTTP client based on rust reqwest", + detailed = [[ + A Lua HTTP client based on rust reqwest + ]], + homepage = "https://github.com/oowl/lua-reqwest", + license = "MIT" +} + +dependencies = { + "lua >= 5.1", + "luarocks-build-rust-mlua", +} + +build = { + type = "rust-mlua", + modules = { + "reqwest" + }, +}