Skip to content

Configuration file

This is the default configuration file for plugin template: openresty

```ini

GENERAL SECTION

(plugin metadatas)

[general]

Notes about the name of the plugin:

- the name of the plugin is given by the content of .layerapi2_label

in this directory (format: plugin_{name of the plugin}@mfserv)

- the old "name" key in this file is not used anymore

Version of the plugin (X.Y.Z)

If the value is {{MFMODULE_VERSION}},

the current module version is used

_version=0.0.1

Release of the plugin

_release=1

Summary (one line) of the goal of the plugin

_summary=one line summary

License of the plugin

_license=Proprietary

URL of the plugin homepage

_url=http://yourpluginhomepage

Name of the maintainer of the plugin on the form "Firstname FAMILYNAME "

_maintainer=Firstname FAMILYNAME

Vendor of the plugin

_vendor=Vendor

!!! ADVANCED SETTING !!!

Use this only if you are sure about what you are doing

extra nginx configuration filename inside your plugin directory

null => no extra configuration

The content will be included directly in "http" section

If you want to include some configuration fragments specific to an app

don't use this key (in [general] section] but extra_nginx_conf_filename

in [app_xxxxx] section.

Note: if you use this key, you can break the whole mfserv module

=> so there will be a warning at plugin installation about that

Note: the difference between this key and the one just below is that

the configuration fragment will be inserted in "http" section

(for this one) and in "server" section (for the one below)

_extra_nginx_http_conf_filename=nginx_extra_http.conf

!!! ADVANCED SETTING !!!

Use this only if you are sure about what you are doing

extra nginx configuration filename inside your plugin directory

null => no extra configuration

The content will be included directly in "server" section

If you want to include some configuration fragments specific to an app

don't use this key (in [general] section] but extra_nginx_conf_filename

in [app_xxxxx] section.

Note: this key is not used with virtualdomain_based_routing

Note: if you use this key, you can break the whole mfserv module

=> so there will be a warning at plugin installation about that

Note: the difference between this key and the one just above is that

the configuration fragment will be inserted in "server" section

(for this one) and in "http" section (for the one above)

_extra_nginx_server_conf_filename=nginx_extra_server.conf

!!! ADVANCED SETTING !!!

Use this only if you are sure about what you are doing

extra nginx configuration filename inside your plugin directory

null => no extra configuration

The content will be included directly in "init_worker_by_lua_block" section

and must be valid LUA code!

Note: if you use this key, you can break the whole mfserv module

=> so there will be a warning at plugin installation about that

_extra_nginx_init_worker_by_lua_block_filename=init_worker_by_lua.lua

if set to false, don't add the plugin directory in "lua packages path"

(so you have to require your lua files with require("{your plugin name}.{your lua file}")

don't change this unless you know exactly what you are doing

(if you set to false, you can introduce some path collisions when using multiple

openresty plugins even it was the default with mfserv <= 1.0.4)

_add_plugin_dir_to_lua_path=false

If true, add plugin directory to python path

_add_plugin_dir_to_python_path=true

!!! ADVANCED SETTINGS !!!

You can add extra daemons which will be launched within your plugin

by providing configuration blocks [extra_daemon_*]

You have to provide a command to daemonize (the command must run in

foreground and not daemonize by itself)

[extra_daemon_foo]

_cmd_and_args = /your/foreground/command command_arg1 command_arg2

numprocesses=1

graceful_timeout = 30

rlimit_as = 1000000000

rlimit_nofile = 1000

rlimit_stack = 10000000

rlimit_fsize = 100000000

log_split_stdout_stderr=AUTO

log_split_multiple_workers=AUTO

max_age=0

[custom]

Here is a space for your public configuration keys

(ie. overridable by administrator after deployment)

Your keys shouldn't start with an underscore (as they are public)

and you have to read their value through the corresponding env variable

and NOT by parsing this file

A key named "foo_bar" here will generate (in plugin_env) an env var called

MFSERV_CURRENT_PLUGIN_CUSTOM_FOO_BAR

(MFSERV_CURRENT_PLUGIN_CUSTOM_{YOUR KEY IN UPPERCASE})

with the corresponding value inside

```