Während ich nie versucht, eine Mischung Aufgabe über Mix.shell.cmd
aus innerhalb einer anderen Mischung Aufgabe ausgeführt wird, und ich bin nicht sicher, ob es am beste Praxis ist, wie es scheint, so etwas wie, was Sie streben funktionieren würde:
def run(args) do
Mix.Shell.cmd("mix test", fn(output) -> IO.write(output) end)
# (...)
end
Der obige Code führt die Tests über mix test
aus und gibt ihre Ausgabe aus. Hinweis: Der obige Code basiert auf Mix 1.3.4, die Oberfläche unterscheidet sich geringfügig in 1.4.0.
Was könnte einen eleganteren Ansatz sein, obwohl ein mix alias für eine „Verbund“ Aufgabe erstellen, bestehend aus den Aufgaben, die Sie auf Ihrem individuellen abhängen würde man sein:
# inside mix.exs
def project do
[
# (...)
aliases: [
"composite.task": [
"test",
"edeliver build release",
"my.custom.task",
]
]
]
end
Jetzt mix composite.task
laufen die beide laufen soll andere Aufgaben vor my.custom.task
.