defmodule Mix.Tasks.Compile.NervesPackage do use Mix.Task import Mix.Nerves.IO require Logger @moduledoc """ Build a Nerves Artifact from a Nerves Package """ @shortdoc "Nerves Package Compiler" @recursive true def run(_args) do debug_info "Compile.NervesPackage start" config = Mix.Project.config Nerves.Env.start Nerves.Env.ensure_loaded(Mix.Project.config[:app]) package = Nerves.Env.package(config[:app]) toolchain = Nerves.Env.toolchain ret = if Nerves.Env.enabled? and Nerves.Artifact.stale?(package) do Nerves.Artifact.build(package, toolchain) :ok else :noop end debug_info "Compile.NervesPackage end" ret end end