{"id":13495801,"url":"https://github.com/leafo/gh-actions-lua","last_synced_at":"2025-04-13T11:47:44.824Z","repository":{"id":38392950,"uuid":"206710645","full_name":"leafo/gh-actions-lua","owner":"leafo","description":"GitHub action for Lua/LuaJIT","archived":false,"fork":false,"pushed_at":"2025-02-27T20:54:22.000Z","size":5954,"stargazers_count":90,"open_issues_count":22,"forks_count":28,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-06T08:11:27.722Z","etag":null,"topics":["github-actions","lua","luajit"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leafo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-06T04:09:24.000Z","updated_at":"2025-04-04T18:01:14.000Z","dependencies_parsed_at":"2024-01-16T09:53:27.244Z","dependency_job_id":"36866d3f-b146-4c13-abe8-8f0e885350f0","html_url":"https://github.com/leafo/gh-actions-lua","commit_stats":{"total_commits":137,"total_committers":8,"mean_commits":17.125,"dds":0.1970802919708029,"last_synced_commit":"ef9239997afff6d2d8b42ec9729c1d4b7f2f1302"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leafo%2Fgh-actions-lua","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leafo%2Fgh-actions-lua/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leafo%2Fgh-actions-lua/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leafo%2Fgh-actions-lua/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leafo","download_url":"https://codeload.github.com/leafo/gh-actions-lua/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248710409,"owners_count":21149186,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github-actions","lua","luajit"],"created_at":"2024-07-31T19:01:38.366Z","updated_at":"2025-04-13T11:47:44.797Z","avatar_url":"https://github.com/leafo.png","language":"JavaScript","readme":"# Github Action for Lua and LuaJIT\n\n### `leafo/gh-actions-lua`\n\n[![Actions Status](https://github.com/leafo/gh-actions-lua/workflows/test/badge.svg)](https://github.com/leafo/gh-actions-lua/actions)\n\n**Note**: You must use version 8 or greater as GitHub has\ndeprecated older versions of the actions core libraries.\n\nBuilds and installs Lua into the `.lua/` directory in the working directory.\nAdds the `.lua/bin` to the `PATH` environment variable so `lua` can be called\ndirectly in workflows.\n\nOther Lua GitHub actions:\n\n* [`leafo/gh-actions-luarocks`](https://github.com/leafo/gh-actions-luarocks)\n  * inputs: `luarocksVersion`\n\n\n## Usage\n\nInstall Lua: (Will typically default to the latest release, 5.4.4 as of this readme)\n\n```yaml\n- uses: leafo/gh-actions-lua@v11\n```\n\nInstall specific version of Lua:\n\n```yaml\n- uses: leafo/gh-actions-lua@v11\n  with:\n    luaVersion: \"5.1.5\"\n```\n\nInstall specific version of LuaJIT:\n\n```yaml\n- uses: leafo/gh-actions-lua@v11\n  with:\n    luaVersion: \"luajit-2.1.0-beta3\"\n```\n\nWhen using Windows the following prerequisite action must be run before\nbuilding Lua: [`ilammy/msvc-dev-cmd@v1`](https://github.com/ilammy/msvc-dev-cmd). It is safe to\ninclude this line on non-Windows platforms, as the action will do nothing in those cases.\n\n```yaml\n- uses: ilammy/msvc-dev-cmd@v1\n- uses: leafo/gh-actions-lua@v11\n```\n\n## Inputs\n\n### `luaVersion`\n\n**Default**: `\"5.4\"`\n\nSpecifies the version of Lua to install. The version name instructs the action\nwhere to download the source from.\n\nExamples of versions:\n\n* `\"5.1.5\"`\n* `\"5.2.4\"`\n* `\"5.3.5\"`\n* `\"5.4.1\"`\n* `\"luajit-2.0\"`\n* `\"luajit-2.1\"`\n* `\"luajit-master\"`\n* `\"luajit-openresty\"`\n\nThe version specifies where the source is downloaded from:\n\n* `luajit-openresty` — will always pull master from https://github.com/openresty/luajit2\n* Anything else starting with `luajit-` — pulls a master or version branch from https://github.com/luajit/luajit\n* Anything else — from https://www.lua.org/ftp/\n\n**Version aliases**\n\nYou can use shorthand `5.1`, `5.2`, `5.3`, `5.4`, `luajit` version aliases to point to the\nlatest (or recent) version of Lua for that version.\n\n### `luaCompileFlags`\n\n**Default**: `\"\"`\n\nAdditional flags to pass to `make` when building Lua.\n\nExample value:\n\n```yaml\n- uses: leafo/gh-actions-lua@master\n  with:\n    luaVersion: 5.3\n    luaCompileFlags: LUA_CFLAGS=\"-DLUA_INT_TYPE=LUA_INT_INT\"\n```\n\n\u003e Note that compile flags may work differently across Lua and LuaJIT.\n\n## Full Example\n\nThis example is for running tests on a Lua module that uses LuaRocks for\ndependencies and [busted](https://olivinelabs.com/busted/) for a test suite.\n\nCreate `.github/workflows/test.yml` in your repository:\n\n```yaml\nname: test\n\non: [push]\n\njobs:\n  test:\n    runs-on: ubuntu-latest\n\n    steps:\n    - uses: actions/checkout@master\n\n    - uses: leafo/gh-actions-lua@v11\n      with:\n        luaVersion: \"5.1.5\"\n\n    - uses: leafo/gh-actions-luarocks@v4\n\n    - name: build\n      run: |\n        luarocks install busted\n        luarocks make\n\n    - name: test\n      run: |\n        busted -o utfTerminal\n```\n\nThis example:\n\n* Uses Lua 5.1.5 — You can use another version by chaning the `luaVersion` varible. LuaJIT versions can be used by prefixing the version with `luajit-`, i.e. `luajit-2.1.0-beta3`\n* Uses a `.rockspec` file the root directory of your repository to install dependencies and test packaging the module via `luarocks make`\n\n\nView the documentation for the individual actions (linked above) to learn more about how they work.\n\n### Version build matrix\n\nYou can test against multiple versions of Lua using a matrix strategy:\n\n```yaml\njobs:\n  test:\n    strategy:\n      matrix:\n        luaVersion: [\"5.1.5\", \"5.2.4\", \"luajit-2.1.0-beta3\"]\n\n    steps:\n    - uses: actions/checkout@master\n    - uses: leafo/gh-actions-lua@v11\n      with:\n        luaVersion: ${{ matrix.luaVersion }}\n\n    # ...\n```\n","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleafo%2Fgh-actions-lua","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleafo%2Fgh-actions-lua","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleafo%2Fgh-actions-lua/lists"}