Add all known outstanding yaml config options as of process-compose v1.7.3
- per-process
descriptionthat displays in the UI - global and per-process
log_configuration, includingrotation - global and per-process
varsfor supporting Go template expansion on configs -
env_cmdsallows running host commands to populate env variables -
ordered_shutdowncontrols the order of process shutdown -
is_strictdoes additional checking on configuration files at startup -
disable_env_expansionto not propagate .env variables to processes -
http_get.{headers,status_code}andworking_dirfor probe commands -
replicasto run multiple copies of processes -
entrypointalternate tocommand -
is_elevatedfor sudo/runas priviledged processes -
extends,is_disabled,is_dotenv_disabledfor multi-file fragments and overrides. -
launch_timeout_secondsfor daemon processes
NixCI is ready to run on this PR.
Maintainer: Comment nix-ci run to run now.
@shivaraj-bh Does this look good to be merged?
I want to use the options defined in this PR. Aside from 3 comments from @adrian-gierakowski and a small nit (about args) from me, this PR looks good.
@daroot Would you like to address these, so we can merge your PR?
I've updated the missing env vars and addressing the args nit.
I'm less sure about adding all the individual cli options separately. Given you can do nix run -- <any command or options>, does it make sense to add any of these that are not critical to consistent functions across multiple invocations (like uds and port) or that can also already be set via env variables?
I'm less sure about adding all the individual cli options separately. Given you can do nix run --
, does it make sense to add any of these that are not critical to consistent functions across multiple invocations (like uds and port) or that can also already be set via env variables?
@daroot
It is nice to define all the possible CLI options for the sake of completeness of the process-compose.cli module.
It might seems like a rather strange use-case, but:
I often use these settings to enforce certain cli options on the users of the app. For example,process-compose.cli.unix-socket = “<my-path>"; will prevent users (IIRC) from shooting oneself in the foot with PC_SOCKET_PATH env var that (unknowingly) might point to some other path in the users environment.
It is nice to define all the possible CLI options for the sake of completeness of the process-compose.cli module.
These are not very crucial (as one can still use CLI args). Can be added later if needed