You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by rn...@apache.org on 2020/08/04 11:21:00 UTC
[couchdb] 01/01: Optionally add a key manager application as a
dependency
This is an automated email from the ASF dual-hosted git repository.
rnewson pushed a commit to branch aegis_key_manager_app
in repository https://gitbox.apache.org/repos/asf/couchdb.git
commit 514af2491a6fd8d4b6e961ccab7adf9c9fbcd054
Author: Robert Newson <rn...@apache.org>
AuthorDate: Tue Aug 4 12:18:40 2020 +0100
Optionally add a key manager application as a dependency
---
src/aegis/rebar.config.script | 9 ++++++++-
.../src/{aegis.app.src => aegis.app.src.script} | 23 +++++++++++++++-------
2 files changed, 24 insertions(+), 8 deletions(-)
diff --git a/src/aegis/rebar.config.script b/src/aegis/rebar.config.script
index ef148bf..81ea517 100644
--- a/src/aegis/rebar.config.script
+++ b/src/aegis/rebar.config.script
@@ -26,10 +26,17 @@ AegisKeyManager = case lists:keyfind(aegis_key_manager, 1, CouchConfig) of
aegis_noop_key_manager
end,
+AegisKeyManagerOpt = case lists:keyfind(aegis_key_manager_app, 1, CouchConfig) of
+ {aegis_key_manager_app, AppName} when AppName /= "" ->
+ [{d, 'AEGIS_KEY_MANAGER_APP', list_to_atom(AppName)}];
+ _ ->
+ []
+end,
+
CurrentOpts = case lists:keyfind(erl_opts, 1, CONFIG) of
{erl_opts, Opts} -> Opts;
false -> []
end,
-AegisOpts = {d, 'AEGIS_KEY_MANAGER', AegisKeyManager},
+AegisOpts = AegisKeyManagerOpt ++ [{d, 'AEGIS_KEY_MANAGER', AegisKeyManager}],
lists:keystore(erl_opts, 1, CONFIG, {erl_opts, [AegisOpts | CurrentOpts]}).
diff --git a/src/aegis/src/aegis.app.src b/src/aegis/src/aegis.app.src.script
similarity index 78%
rename from src/aegis/src/aegis.app.src
rename to src/aegis/src/aegis.app.src.script
index deb1526..3d6b842 100644
--- a/src/aegis/src/aegis.app.src
+++ b/src/aegis/src/aegis.app.src.script
@@ -10,6 +10,21 @@
% License for the specific language governing permissions and limitations under
% the License.
+AegisKeyManagerApp = case os:getenv("AEGIS_KEY_MANAGER_APP") of
+ false -> [];
+ AppName -> [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 +33,7 @@
{registered, [
aegis_server
]},
- {applications,
- [kernel,
- stdlib,
- crypto,
- couch_log,
- erlfdb
- ]},
+ {applications, Applications},
{env,[]},
{modules, []},
{maintainers, []},