barniz configtest

¿Hay alguna forma de verificar la syntax de configuration del barniz sin utilizar realmente la nueva versión?

Estoy buscando un equivalente de barniz nativo de apache2ctl configtest

Puede pedirle a Varnish que compile su file VLC en un file temporal. Esto es parte de nuestro script que carga una nueva configuration en nuestros serveres de barniz:

 tmpfile=$(mktemp) trap 'rm -f $tmpfile' 0 varnishd -C -f /srv/web/fe/varnish/default.vcl > $tmpfile echo if [ ! -s $tmpfile ]; then echo "ERROR: There are errors in the varnish configuration." >&2 exit 1 fi 

Esto funciona porque varnishd -C no generará ninguna salida en stdout si hay errores en la VCL.

¿Qué pasa con varnish_reload_vcl ?

Algunos ejemplos:

  1. Sin problemas en su file VCL

     $ varnish_reload_vcl Loading vcl from /etc/varnish/default.vcl Current running config name is reload_2016-01-28T15:18:23 Using new config name reload_2016-01-28T15:19:57 VCL compiled. VCL 'reload_2016-01-28T15:19:57' now active available 0 boot available 0 reload_2016-01-28T14:40:04 available 0 reload_2016-01-28T14:42:07 available 0 reload_2016-01-28T14:42:32 available 0 reload_2016-01-28T14:47:45 available 0 reload_2016-01-28T14:48:45 available 0 reload_2016-01-28T14:50:26 available 0 reload_2016-01-28T14:55:55 available 0 reload_2016-01-28T15:18:23 active 0 reload_2016-01-28T15:19:57 Done 
  2. Con un error en su file VCL

     $ varnish_reload_vcl Loading vcl from /etc/varnish/default.vcl Current running config name is reload_2016-01-28T15:19:57 Using new config name reload_2016-01-28T15:21:51 Message from VCC-compiler: Symbol not found: 'b1' (expected type BACKEND): ('input' Line 77 Pos 32) set req.backend_hint = b1; -------------------------------##- Running VCC-compiler failed, exited with 2 VCL comstacktion failed Command failed with error code 106 varnishadm -S /etc/varnish/secret -T 127.0.0.1:6082 vcl.load failed 
    Intereting Posts