mirror of
https://github.com/neovim/neovim.git
synced 2024-12-29 14:41:06 -07:00
a3df012845
Since we're not running tests or other things that are more sensitive to changes in the VM environment, use ubuntu-latest to avoid the busy work of updating the VM image.
53 lines
1.7 KiB
YAML
53 lines
1.7 KiB
YAML
name: vim-patches
|
|
on:
|
|
schedule:
|
|
- cron: '3 3 * * *'
|
|
|
|
jobs:
|
|
update-vim-patches:
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: write
|
|
pull-requests: write
|
|
env:
|
|
VIM_SOURCE_DIR: ${{ format('{0}/vim-src', github.workspace) }}
|
|
VERSION_BRANCH: marvim/ci-version-update
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: vim/vim
|
|
path: ${{ env.VIM_SOURCE_DIR }}
|
|
fetch-depth: 0
|
|
|
|
- run: |
|
|
gh release download -R neovim/neovim -p nvim.appimage
|
|
chmod a+x nvim.appimage
|
|
mkdir -p $HOME/.local/bin
|
|
mv nvim.appimage $HOME/.local/bin/nvim
|
|
printf '%s\n' "$HOME/.local/bin" >> $GITHUB_PATH
|
|
|
|
- name: Setup git config
|
|
run: |
|
|
git config --global user.name 'marvim'
|
|
git config --global user.email 'marvim@users.noreply.github.com'
|
|
|
|
- name: Update src/version.c
|
|
id: update-version
|
|
run: |
|
|
git checkout -b ${VERSION_BRANCH}
|
|
nvim -i NONE -u NONE --headless +'luafile scripts/vimpatch.lua' +q
|
|
printf '::set-output name=NEW_PATCHES::%s\n' $([ -z "$(git diff)" ]; echo $?)
|
|
|
|
- name: Automatic PR
|
|
if: ${{ steps.update-version.outputs.NEW_PATCHES != 0 }}
|
|
run: |
|
|
git add -u
|
|
git commit -m 'version.c: update [skip ci]'
|
|
git push --force https://${GITHUB_ACTOR}:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY} ${VERSION_BRANCH}
|
|
gh pr create --draft --fill --label vim-patch --base ${GITHUB_REF#refs/heads/} --head ${VERSION_BRANCH} || true
|