Skip to content

Instantly share code, notes, and snippets.

View reset's full-sized avatar

Jamie Stormbreaker reset

View GitHub Profile
@reset
reset / gist:54024097da2c190d7e88
Created June 10, 2014 22:51
Dependencies in OTP releases

I have an umbrella application which contains a router and a number of different services. Currently everything is deployed as a single OTP release and on a single machine. Now I'm splitting everything apart to live on separate nodes.

A few of these services depend on each other for 1) testing purposes, 2) "public helper" functions are exposed for how to send messages to an erlang process. This works well when you want all of the services started on the same node, but what if you don't want to start the dependant application? Just listing the module in the .app file will ensure that it is started.

Do people typically not depend on an application just to have access to those "public helper" functions? Here is an example to try and explain what I mean:

%
% Public API
%
@jb55
jb55 / default.nix
Last active July 30, 2023 21:45
deploy dotnet core apps on nixos
{ stdenv, lib, bash, callPackage, writeText, makeWrapper, writeScript, dotnet-sdk,
patchelf, libunwind, coreclr, libuuid, curl, zlib, icu }:
let
config = "Staging";
project = "RazorCx.Api";
target = "linux-x64";
rpath = stdenv.lib.makeLibraryPath [ libunwind coreclr libuuid stdenv.cc.cc curl zlib icu ];