Skip to content

chunked_publish

chunked_publish #3960

Workflow file for this run

name: Publish Dev Release LuaRocks
on:
repository_dispatch:
types: [chunked_publish]
jobs:
publish:
runs-on: ubuntu-latest
strategy:
fail-fast: false
max-parallel: 10 # Don't DDOS the luarocks servers
matrix:
plugin: ${{ github.event.client_payload.plugins }}
name: Pushing ${{ matrix.plugin.shorthand }} (dev)
steps:
- name: Install tree-sitter CLI
uses: baptiste0928/cargo-install@v3
with:
crate: tree-sitter-cli
- uses: actions/setup-node@v4
if: ${{ matrix.parsers.install_info.generate }}
- name: Install C/C++ Compiler
uses: rlalik/setup-cpp-compiler@master
with:
compiler: clang-latest
- name: Checkout plugin repository
uses: actions/checkout@v4
with:
repository: ${{ matrix.plugin.name }}
ref: ${{ matrix.plugin.ref }}
path: .
- run: |
echo "GITHUB_REPOSITORY_OVERRIDE=${{ matrix.plugin.name }}" >> $GITHUB_ENV
echo "GITHUB_SHA_OVERRIDE=$(git rev-parse HEAD)" >> $GITHUB_ENV
- name: Convert JSON list to multiline string
id: convert
run: |
# https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#multiline-strings
{
echo "multiline<<EOF"
echo -e "${{ join(matrix.plugin.dependencies, '\n') }}"
echo EOF
} >> "$GITHUB_OUTPUT"
- name: Get resources
uses: actions/checkout@v4
with:
sparse-checkout: |
resources
path: nurr
- name: Publish Development LuaRock
uses: nvim-neorocks/luarocks-tag-release@v7
env:
LUAROCKS_API_KEY: ${{ secrets.LUAROCKS_API_KEY }}
with:
name: ${{ matrix.plugin.shorthand }}
dependencies: ${{ steps.convert.outputs.multiline }}
version: "scm"
summary: ${{ matrix.plugin.summary }}
license: ${{ matrix.plugin.license }}
labels: neovim
copy_directories: |
{{ neovim.plugin.dirs }}
${{ matrix.plugin.extra_directories }}
extra_luarocks_args: |
--namespace=neorocks
--force
--dev
template: ${{ matrix.plugin.rockspec_template }}