diff options
author | max397574 <[email protected]> | 2021-12-09 18:41:23 +0100 |
---|---|---|
committer | max397574 <[email protected]> | 2021-12-09 18:41:23 +0100 |
commit | 4595f296ce2040847510302d4d7da994358f9bf5 (patch) | |
tree | cd8895b6323b72ea4464ee1fc77089268e12ad70 /.github/workflows | |
parent | 174c29615c106b72ce4a151afe1644683d61d03f (diff) |
feat(github): added docgen workflow
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/docgen.yml | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/.github/workflows/docgen.yml b/.github/workflows/docgen.yml new file mode 100644 index 0000000..d1d8cbf --- /dev/null +++ b/.github/workflows/docgen.yml @@ -0,0 +1,61 @@ +name: Generate docs + +on: workflow_dispatch + +jobs: + build-sources: + name: Generate docs + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + include: + - os: ubuntu-20.04 + url: https://github.com/neovim/neovim/releases/download/nightly/nvim-linux64.tar.gz + steps: + - uses: actions/checkout@v2 + - run: date +%F > todays-date + - name: Restore cache for today's nightly. + uses: actions/cache@v2 + with: + path: _neovim + key: ${{ runner.os }}-${{ matrix.url }}-${{ hashFiles('todays-date') }} + + - name: Prepare + run: | + test -d _neovim || { + mkdir -p _neovim + curl -sL ${{ matrix.url }} | tar xzf - --strip-components=1 -C "${PWD}/_neovim" + } + mkdir -p ~/.local/share/nvim/site/pack/vendor/start + git clone --depth 1 https://github.com/nvim-lua/plenary.nvim ~/.local/share/nvim/site/pack/vendor/start/plenary.nvim + git clone --depth 1 https://github.com/tjdevries/tree-sitter-lua ~/.local/share/nvim/site/pack/vendor/start/tree-sitter-lua + ln -s $(pwd) ~/.local/share/nvim/site/pack/vendor/start + - name: Build parser + run: | + # We have to build the parser every single time to keep up with parser changes + cd ~/.local/share/nvim/site/pack/vendor/start/tree-sitter-lua + mkdir -p build parser + cc -o ./build/parser.so -I./src src/parser.c src/scanner.cc -shared -Os -lstdc++ -fPIC + ln -s ../build/parser.so parser/lua.so + cd - + - name: Generating docs + run: | + export PATH="${PWD}/_neovim/bin:${PATH}" + export VIM="${PWD}/_neovim/share/nvim/runtime" + nvim --version + make docgen + # inspired by nvim-lspconfigs + - name: Update documentation + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + COMMIT_MSG: | + [docgen] Update doc/startup.txt + skip-checks: true + run: | + git config user.email "actions@github" + git config user.name "Github Actions" + git remote set-url origin https://x-access-token:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git + git add doc/ + # Only commit and push if we have changes + git diff --quiet && git diff --staged --quiet || (git commit -m "${COMMIT_MSG}"; git push origin HEAD:${GITHUB_REF}) |