- Se crea el directorio resources y el fichero nombre_recurso.rb
- Se invoca desde las recetas.
- Como es una dependencia de apache, se crea una receta nueva y se añade al rol base.
- Descargamos el cookbook ohai
- Creamos un fichero atributos para definir las rutas.
- Se crea un fichero en : apache/files/default/plugins/modules.rb con DSL de ohai
- Se crea la receta del plugin cookbooks/apache/recipes/ohai_plugin.rb
- Añadir la receta ohai al role web
- Miramos que pinta tienen las recetas:
$foodcritic cookbooks/apache
- Podemos quitar avisos
$foodcritic cookbooks/apache -t ~FC064 -t ~FC065
-t style (todas de estlos) -t FC008 (mirame solo es) - Pero lo mejor es crear un fichero .foodcritic para definir que reglas no muetre .foodcritic (1 regla por linea)
- Lista de reglas Se pueden generar reglas propias
- !!! Se pueden deshabilitar Reglas in-line. Se pone un comentarion el la linea de una receta que queremos que no de warning.
- cd cokbooks/apache
$ rubocop
- Se genera fichero de excepciones.yml Cops
$ rubocop --auto-gen-config
- Se modifica el fichero generado para ir filtrando.
- 3.4. Se puede ir personalizando. Por ej:
SupportedStyles: double_quotes - 3.5. Lo lanzamos contra ese fichero de configuración:
$ rubocop --config .rubocop_todo.yml
- 3.6. Algunos de los cops admiten auto-corrección . Lo mejor es ir caso por caso, es decir, primero pongo a true un fallo en el .yml y pruebo el auto-correct contra ese fallo.
$ rubocop --config .rubocop_todo.yml
- 3.4. Se puede ir personalizando. Por ej:
- Lo ideal es crear un archivo .rubocop.yml (ayudandose del .rubocop_todo-yml) para ignorar/definir cambios y se mete el contenido igual que en el de configuracion.
- Rubocop Manual
- Lo ideal es tener en el workstation un fichero .rubocop.yml general y en cada receta otro rubocop.yml que hereda del general.
- !!! Se pueden deshabilitar Reglas in-line. Se pone un comentarion el la linea de una receta que queremos que no de warning. Ir
- Se pueden personalizar hooks para que si no pasa las reglas no se permiten hacer commits u otras operaciones:
Nota: (gestión de issues)
Bugzilla
redmina
JIRH