You're correct in that *-attach-daemon definitely does not read sym:// links (at least as far as I could read the source in daemons.c). Even if it did, there's difficulty in that any given daemon program can't read the sym:// syntax to read its config (consider "cat sym://myfile" -- doesn't make much sense).
I think the most generic solution to this problem would be a new configuration option/action, something like extract-symbol=daemon_conf=placeholder_name extract-symbol-to=daemon_conf=/tmp/foo wherein the first option would extract a symbol to some temporary, randomly generated file (tmpnam or equivalent) and save its path into the given configuration placeholder, and the second one obviously would extract the symbol to a concrete path (caveat configurator regarding multiple instances). This way you could do [uwsgi] extract-symbol=daemon=daemon-bin extract-symbol=daemon-conf=daemon-conf smart-attach-daemon = /tmp/daemon.pid %(daemon-bin) -pid=/tmp/daemon.pid -conf=%(daemon-conf) Feel free to shoot this idea down! :) -Aarni ps. I don't think sym:// is Linux specific; after all (afaicr) those just refer to ELF symbols, and FreeBSD uses ELF binary images too. > -----Original Message----- > From: [email protected] [mailto:[email protected]] On > Behalf Of Vladislav Manchev > Sent: 26. maaliskuuta 2014 15:13 > To: uWSGI developers and users list > Subject: [uWSGI] Embedding files on FreeBSD > > Hi guys, > > I've been following the list in the last few years and just dug through it but > found no usable solution to my problem. > > Basically my use case is this: I have a bunch of daemons that I want to embed > (embed_files) in uWSGI and start them with a predefined configuration > which is also embedded (embed_config). I already tried this on Linux with > this build config and intial configuration: > > uwsgi/buildconf/daemons.ini > [uwsgi] > bin_name = daemons > plugin_dir = . > embed_files = daemon,daemon2,daemon.conf embed_config = > daemons_config.ini > > uwsgi/daemons_config.ini > [uwsgi] > socket = :3031 > master = true > smart-attach-daemon = /tmp/daemon.pid sym://daemon - > pid=/tmp/daemon.pid -conf=sym://daemon_conf > > It more or less works (or at least reads the embedded configuration) > although I think uWSGI does not parse the sym:// links in smart-attach- > daemon option. > > I found an old email on the mailing list about section:// and data:// > embedding, but as far as I can tell section:// embedding is Linux specific > (sym:// seems to be too) and there's not too much information about data:// > embedding either. > > So, is there any way to run a uWSGI binary with a bunch of embedded > binaries and a configuration like the one above on FreeBSD? > > > Best, > Vladislav > _______________________________________________ > uWSGI mailing list > [email protected] > http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi _______________________________________________ uWSGI mailing list [email protected] http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi
