logo Buffalo slack logo
Tareas
Guías

Tareas

Las tareas son pequeños scripts que a menudo se necesitan al escribir una aplicación. Estos tasks pueden ser similares a la inicialización de una base de datos, analizar un archivo de registro, o incluso el lanzamiento de un script. Buffalo usa la librería grift para simplificar la escritura de estas tareas.

Escribiendo tareas

Las tareas deben estar en el paquete grift. Una tarea simple ser;ia la siguiente:

var _ = grift.Add("hello", func(c *grift.Context) error {
  fmt.Println("Hello!")
  return nil
})

Generador de tareas

$ buffalo g task foo:bar

--> grifts/bar.go
// grifts/bar.go
package grifts

import (
	. "github.com/markbates/grift/grift"
)

var _ = Namespace("foo", func() {

	Desc("bar", "Task Description")
	Add("bar", func(c *Context) error {
		return nil
	})

})

Listing Available Tasks

$ buffalo task list

Available grifts
================
buffalo task db:seed       # Seeds a database
buffalo task middleware    # Prints out your middleware stack
buffalo task routes        # Print out all defined routes
buffalo task secret        # Generate a cryptographically secure secret key

Ejecutando Tareas

Development

Las tareas pueden ser ejecutadas en el entorno de development usando el comando buffalo task.

$ buffalo task hello

Desde un binario construido

Después que un binario sea construido, las tareas se pueden ejecutar con el subcomando task:

$ myapp task hello