Features
Dockerfile-Like
Familiar syntax for anyone who's written a Dockerfile
ADD Directive
Map local files/directories into container paths
Reproducible
Same Borgfile → same container every time
Encryption Ready
Output directly to encrypted STIM format
Installation
# Compile Borgfile to TIM
borg compile -f Borgfile -o app.tim
# Compile to encrypted STIM
borg compile -f Borgfile -e "password" -o app.stim
Usage
Borgfile Syntax
# Comments start with #
# Add single file
ADD ./config.json /etc/app/config.json
# Add directory
ADD ./bin/ /usr/local/bin/
# Add with rename
ADD ./myapp /app/server
Parsing
lines := strings.Split(content, "\n")
for _, line := range lines {
parts := strings.Fields(line)
switch parts[0] {
case "ADD":
// parts[1] = source, parts[2] = destination
}
}
Quick Links
More from Lethean R&D Labs
Fancy helping out?
Spotted a bug? Got an idea? We'd love to hear from you.
Read the contributing guide →