Configuration
June 27, 2019 · View on GitHub
Files can be put in two places.
${HOME}/.config/mainframeror${XDG_CONFIG_HOME}if available — the global configuration;.mainframer— the project configuration.
It is posssible to declare common configuration using the global one and fine-tune it using the project one.
.mainframer
The directory contains following files.
| Name | Required | Keep in VCS | Description |
|---|---|---|---|
config.yml | Yes | No | Configuration options. |
ignore.yml | No | Yes | Ignore rules for copying files. |
.mainframer/config.yml
remote:
host: "{SSH machine host}"
push:
compression: {level}
pull:
compression: {level}
| Name | Required | Value | Default | Description |
|---|---|---|---|---|
remote.host | Yes | string | — | Remote machine name from SSH config or hostname / IP address. |
push.compression | No | 0..9 | 0 | Compression level used to copy files from local machine to remote one. |
pull.compression | No | 0..9 | 0 | Compression level used to copy files from remote machine to local one. |
pull.mode | No | serial | parallel | serial | Pull mode. serial pulls once remote command has finished, parallel pulls in parallel to remote command execution. |
Compression level is inherited from underlying rsync
which uses zlib values:
The compression level must be between
0and9:1gives best speed,9gives best compression,0gives no compression at all (the input data is simply copied a block at a time).
.mainframer/ignore.yml
push:
- "pattern"
- "..."
pull:
- "pattern"
- "..."
both:
- "pattern"
- "..."
| Name | Description | Suggestions |
|---|---|---|
push | Patterns used to copy files from local machine to remote one. | Build results. |
pull | Patterns used to copy files from remote machine to local one. | Source code. |
both | Patterns used to copy files both ways. | VCS, IDE-related directories. |
Ignore patterns are inherited from underlying rsync.
Please refer to rsync documentation —
see the Include/Exclude Pattern Rules section.
The format is very similar to .gitignore.