Conceptos Dependencias entre recetas
Dependencias entre recetas
El grafo de dependencias, independiente de carpetas y grupos, y lo que el prototipo ya puede mostrar de él.
Una receta puede indicar que necesita el resultado de otra. Estos vínculos forman el grafo de dependencias (un DAG): qué receta va después de cuál.
Dos estructuras distintas
En Anchor, las recetas aparecen en un árbol: proyecto, grupos del usuario, recetas. Es solo una disposición por comodidad. El orden de ejecución lo determina el grafo de dependencias, no la posición en el árbol.
- Se puede mover una receta a otro grupo sin que cambie el orden de ejecución.
- Dos recetas en la misma carpeta no dependen una de otra mientras una no haga referencia explícita a la otra.
Qué puede hacer hoy el prototipo
A partir de las entradas dependsOn declaradas con nombres entre comillas, el prototipo construye un grafo para la vista previa e informa de los casos problemáticos: un ciclo y una referencia a una receta que no existe. Las recetas no se ejecutan.
recipe "BuildShops" {
dependsOn("CheckGit")
}
Qué sigue abierto
- Cómo accede una receta al resultado de otra: la forma y el nombre de la propiedad no están aprobados.
- Si una receta puede tener varias salidas.
- Cómo se describen los argumentos de una receta.
Cada uno de estos puntos se discute primero y solo después aparece aquí.