summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Newson <rnewson@apache.org>2020-08-04 12:18:40 +0100
committerRobert Newson <robert.newson@uk.ibm.com>2020-08-04 14:32:26 +0100
commitbd536782778ff9bfd7ed2d7022915942389151b6 (patch)
treeb908dc0347c401da64deb9869a3f5b1e1561cd8b
parent8b49b0d63485afe68d559f3532be4827eee5bd8c (diff)
downloadcouchdb-aegis_key_manager_app.tar.gz
Optionally add a key manager application as a dependencyaegis_key_manager_app
-rw-r--r--src/aegis/src/aegis.app.src.script (renamed from src/aegis/src/aegis.app.src)33
1 files changed, 26 insertions, 7 deletions
diff --git a/src/aegis/src/aegis.app.src b/src/aegis/src/aegis.app.src.script
index deb152674..f54688cf2 100644
--- a/src/aegis/src/aegis.app.src
+++ b/src/aegis/src/aegis.app.src.script
@@ -10,6 +10,31 @@
% License for the specific language governing permissions and limitations under
% the License.
+CouchConfig = case filelib:is_file(os:getenv("COUCHDB_CONFIG")) of
+ true ->
+ {ok, Result} = file:consult(os:getenv("COUCHDB_CONFIG")),
+ Result;
+ false ->
+ []
+end.
+
+AegisKeyManagerApp = case lists:keyfind(aegis_key_manager_app, 1, CouchConfig) of
+ {aegis_key_manager_app, AppName} when AppName /= "" ->
+ [list_to_atom(AppName)];
+ _ ->
+ []
+end.
+
+BaseApplications = [
+ kernel,
+ stdlib,
+ crypto,
+ couch_log,
+ erlfdb
+].
+
+Applications = AegisKeyManagerApp ++ BaseApplications.
+
{application, aegis,
[
{description, "If it's good enough for Zeus, it's good enough for CouchDB"},
@@ -18,13 +43,7 @@
{registered, [
aegis_server
]},
- {applications,
- [kernel,
- stdlib,
- crypto,
- couch_log,
- erlfdb
- ]},
+ {applications, Applications},
{env,[]},
{modules, []},
{maintainers, []},