Packages

Librería base para ejecución de comandos del sistema y gestión de tareas asíncronas con resultados estructurados.

Retired package: Release invalid - Versión publicada por error

Current section

Files

Jump to
argos lib config.ex
Raw

lib/config.ex

defmodule Argos.Config do
@moduledoc """
Configuración centralizada de Argos.
Proporciona helpers de entorno y banderas para controlar el arranque del
sistema paralelo y su configuración básica.
"""
@spec start_parallel_system? :: boolean
def start_parallel_system? do
Application.get_env(:argos, :start_parallel_system, true)
end
@spec env :: atom
def env do
Application.get_env(:argos, :env, :dev)
end
@spec test? :: boolean
def test? do
env() == :test
end
@spec dev? :: boolean
def dev? do
env() == :dev
end
@spec prod? :: boolean
def prod? do
env() == :prod
end
@spec parallel_config :: keyword
def parallel_config do
Application.get_env(:argos, :parallel, [])
end
@spec should_start_supervisor? :: boolean
def should_start_supervisor? do
case Keyword.fetch(parallel_config(), :start_supervisor) do
{:ok, value} -> value
:error -> start_parallel_system?()
end
end
end