diff --git a/mix.exs b/mix.exs index 7c167df..2b7557c 100644 --- a/mix.exs +++ b/mix.exs @@ -6,7 +6,28 @@ defmodule Guildhall.MixProject do apps_path: "apps", version: "0.1.0", start_permanent: Mix.env() == :prod, - deps: deps() + deps: deps(), + releases: releases() + ] + end + + # Release configuration. Umbrella projects require an explicit + # `releases:` block — mix release cannot infer a default from the + # umbrella root because there is no single "application" to release. + # The `:guildhall` release bundles all five umbrella children in a + # startup order that respects the dep graph: ops_db first (the Repo + # other apps use), then infra apps, then the web endpoint last. + defp releases do + [ + guildhall: [ + applications: [ + guildhall_ops_db: :permanent, + guildhall_chronicle: :permanent, + guildhall_orchestrator: :permanent, + guildhall_graph_bridge: :permanent, + guildhall_web: :permanent + ] + ] ] end