Merge pull request #1865 from TheLocehiliosan/puppet-options

Support options for puppet parser validate
This commit is contained in:
w0rp 2018-08-29 14:22:01 +01:00 committed by GitHub
commit ea01cc708b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 32 additions and 2 deletions

View File

@ -1,5 +1,8 @@
" Author: Alexander Olofsson <alexander.olofsson@liu.se> " Author: Alexander Olofsson <alexander.olofsson@liu.se>
call ale#Set('puppet_puppet_executable', 'puppet')
call ale#Set('puppet_puppet_options', '')
function! ale_linters#puppet#puppet#Handle(buffer, lines) abort function! ale_linters#puppet#puppet#Handle(buffer, lines) abort
" Matches patterns like the following: " Matches patterns like the following:
" Error: Could not parse for environment production: Syntax error at ':' at /root/puppetcode/modules/nginx/manifests/init.pp:43:12 " Error: Could not parse for environment production: Syntax error at ':' at /root/puppetcode/modules/nginx/manifests/init.pp:43:12
@ -20,10 +23,16 @@ function! ale_linters#puppet#puppet#Handle(buffer, lines) abort
return l:output return l:output
endfunction endfunction
function! ale_linters#puppet#puppet#GetCommand(buffer) abort
return '%e parser validate --color=false '
\ . ale#Pad(ale#Var(a:buffer, 'puppet_puppet_options'))
\ . ' %t'
endfunction
call ale#linter#Define('puppet', { call ale#linter#Define('puppet', {
\ 'name': 'puppet', \ 'name': 'puppet',
\ 'executable': 'puppet', \ 'executable_callback': ale#VarFunc('puppet_puppet_executable'),
\ 'output_stream': 'stderr', \ 'output_stream': 'stderr',
\ 'command': 'puppet parser validate --color=false %t', \ 'command_callback': 'ale_linters#puppet#puppet#GetCommand',
\ 'callback': 'ale_linters#puppet#puppet#Handle', \ 'callback': 'ale_linters#puppet#puppet#Handle',
\}) \})

View File

@ -2,6 +2,26 @@
ALE Puppet Integration *ale-puppet-options* ALE Puppet Integration *ale-puppet-options*
===============================================================================
puppet *ale-puppet-puppet*
g:ale_puppet_puppet_executable *g:ale_puppet_puppet_executable*
*b:ale_puppet_puppet_executable*
Type: |String|
Default: `'puppet'`
This variable can be changed to specify the executable used for puppet.
g:ale_puppet_puppet_options *g:ale_puppet_puppet_options*
*b:ale_puppet_puppet_options*
Type: |String|
Default: `''`
This variable can be changed to add command-line arguments to the
puppet parser validate invocation.
=============================================================================== ===============================================================================
puppetlint *ale-puppet-puppetlint* puppetlint *ale-puppet-puppetlint*

View File

@ -204,6 +204,7 @@ CONTENTS *ale-contents*
pug...................................|ale-pug-options| pug...................................|ale-pug-options|
puglint.............................|ale-pug-puglint| puglint.............................|ale-pug-puglint|
puppet................................|ale-puppet-options| puppet................................|ale-puppet-options|
puppet..............................|ale-puppet-puppet|
puppetlint..........................|ale-puppet-puppetlint| puppetlint..........................|ale-puppet-puppetlint|
puppet-languageserver...............|ale-puppet-languageserver| puppet-languageserver...............|ale-puppet-languageserver|
pyrex (cython)........................|ale-pyrex-options| pyrex (cython)........................|ale-pyrex-options|