Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

73 lines (66 sloc) 1.708 kb
Here are three approaches to a config file format:
- Hierarchical
Sections are organized in a single file in a hierarchy
A backup-set can have sub-sections that define the config
for various plugins:
...
[backupsets]
[[default_backup]]
key = value
...
[[[mysql-plugin]]]
host = remote-host
...
- Directory
Hierarchy is broken down into different files in
different directories:
holland.conf
# backupset configs
backupsets/
default_backup.conf
# global backup-plugin configs
providers/
mysqldump.conf
lvm.conf
pgdump.conf
...
# global helper plugin library configs
helpers/
mysqlclient.conf
lvmlib.conf
...
- Namespaces
Single file, with standard ini sections named in a special
way to denote namespaces.
holland.conf:
[holland]
backup_directory = /<somepath>/
[holland:logging]
filename = /var/log/holland.log
...
[backup:default_backup]
provider = mysqldump
<mysqldump settings for 'default_backup'>
[backup:default_backup:mysqlclient]
# mysqldump backups utilize the mysqlclient lib
host = 192.168.100.15 # some remote host
user = remote-backup-user
password = ...
[backup:default_backup:compression]
# suppose some general compression plugin we want to override
cmd = lzop -U --fast
[plugins:backup:mysqldump]
# global options for the mysqldump backup plugin ("provider")
# these are overriden in [backup:<name>]
file_per_database = yes
# exclude_databases = test
# include_databases = production_db
# regex = production_*
# extra_args = --flush-privileges --ignore-table production_db.sessions
[plugins:lib:mysqlclient]
host = localhost
socket = /var/lib/mysql/mysql.sock
user = backup_user
password = password
ssl = no
compress = no
Jump to Line
Something went wrong with that request. Please try again.