Added a new section entitled 'A dynamic config file'.
It explains the use of environment variables in the config file to dynamically retrieve parameters.
This commit is contained in:
@@ -115,6 +115,53 @@ individual renders to apply to just those renders.
|
|||||||
See the ``sample_config.py`` file included in the repository for another
|
See the ``sample_config.py`` file included in the repository for another
|
||||||
example.
|
example.
|
||||||
|
|
||||||
|
A dynamic config file
|
||||||
|
=====================
|
||||||
|
|
||||||
|
It might be handy to dynamically retrieve parameters. For instance, if you
|
||||||
|
periodically render your last map backup which is located in a timestamped
|
||||||
|
directory, it is not convenient to edit the config file each time to fit the
|
||||||
|
new directory name.
|
||||||
|
|
||||||
|
Using environment variables, you can easily retrieve a parameter which has
|
||||||
|
been set by, for instance, your map backup script. In this example, Overviewer is
|
||||||
|
called from a *bash* script, but it can be done from other shell scripts and
|
||||||
|
languages.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
## The bash script
|
||||||
|
|
||||||
|
# Setting up an environment variable that child processes will inherit
|
||||||
|
MYWORLD_DIR=/path/to/map/backup/$yourtimestamp/YourWorld
|
||||||
|
export MYWORLD_DIR
|
||||||
|
|
||||||
|
# Running the Overviwer
|
||||||
|
overviewer.py --config=/path/to/yourConfig.py
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
The environment variable will only be local to the process and its child
|
||||||
|
processes. In this example, the Overviewer will be able to access the
|
||||||
|
variable since it becomes a child process.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
## The config file
|
||||||
|
|
||||||
|
# Importing the os python module
|
||||||
|
import os
|
||||||
|
|
||||||
|
# Retrieving the environment variable
|
||||||
|
worlds["My world"] = os.environ['MYWORLD_DIR']
|
||||||
|
|
||||||
|
renders["normalrender"] = {
|
||||||
|
"world": "My world",
|
||||||
|
"title": "Normal Render of My World",
|
||||||
|
}
|
||||||
|
|
||||||
|
outputdir = "/home/username/mcmap"
|
||||||
|
|
||||||
Config File Specifications
|
Config File Specifications
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user