Merge pull request #14 from yriveiro/docker-tests #48
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Cherry picked from https://github.com/nvim-telescope/telescope.nvim/blob/master/.github/workflows/docgen.yml | |
name: Generate docs | |
on: | |
push: | |
branches-ignore: | |
- master | |
jobs: | |
build-sources: | |
name: Generate docs | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os: ubuntu-latest | |
url: https://github.com/neovim/neovim/releases/download/nightly/nvim-linux64.tar.gz | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Todays Data | |
run: date +%F > todays-date | |
- name: Restore cache for today's nightly. | |
uses: actions/cache@v3 | |
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 | |
git clone --depth 1 https://github.com/neovim/nvim-lspconfig ~/.local/share/nvim/site/pack/vendor/start/nvim-lspconfig | |
git clone --depth 1 https://github.com/mfussenegger/nvim-dap ~/.local/share/nvim/site/pack/vendor/start/nvim-dap | |
ln -s $(pwd) ~/.local/share/nvim/site/pack/vendor/start | |
- name: Tree Sitter Cli | |
uses: actions-rs/[email protected] | |
with: | |
crate: tree-sitter-cli | |
version: latest | |
- 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 | |
make build_parser | |
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: | | |
feat(docgen): Update doc/dap-go.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}) |