How do I create an installer for a macOS app? I want to create an installer for a Apache Mesos for Mac. I don't want to use brew since that needs several steps and an internet connection and packaging makes one definite version we can push and also isolate from version changes. 

Furthermore, Mesos has dependencies on java, git, autoconf, automake, libtool, subversion, and maven.  

How do I start with packaging all these dependencies?
For a simple package where you just want to pack up one folder (or three) of files, you can use a quick and easy tool and often make good packages.

For something more on the complicated side, you may need a book or couple of tutorials as well as the ability to have a virtual OS so you can test your package on a clean macOS or test Mac.

The best book I know on how to package is this one by Armin Briegel 


https://itunes.apple.com/us/book/packaging-for-apple-administrators/id1173928620?mt=11


Packages on macOS can contain pre-install scripts, several layers of files and post-install scripts and the second chapter of the book goes over all of those in detail.

In your case, I would try to leverage a community packaging resource like AutoPKG recipe for every dependency you can find and hopefully mesos itself:


http://autopkg.github.io/autopkg


Here is a very nice list of starte recipes you can examine and inspect to learn how to layer in many files or take apart a simple package vs a complex one:


https://github.com/autopkg/recipes


If all this git and scripting and tools is too much learning (for ever or just for now), you could also do far worse than get a great tool to help you just build the package manually using an app to guide you in the process:


http://s.sudre.free.fr/Software/Packages/about.html