• Stars
    star
    20
  • Rank 1,119,140 (Top 23 %)
  • Language
    Python
  • License
    BSD 3-Clause "New...
  • Created over 1 year ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Merge Butane configurations

bumerge

Merge Butane configurations

This is a simple Python script that will merge Butane configurations from multiple files into one. Makes your job easier when you manage servers.

  • merges multiple .bu files into one
  • inlines external files into the configs
  • checks source configs for errors

bumerge currently supports Fedora CoreOS Specification v1.5.0. Support for other distributions is planned, but not prioritized.

Install

pipx install bumerge  # or pip, or conda, or pipsi, or ...

Use

Just pass the list of the files to the app

bumerge root.bu modules/time.bu modules/user.bu

Important: bumerge will perform a deep merge. If there are key conflicts, the latter file takes precedence.

Command-line arguments

usage: bumerge [-h] [--version] [--output FILE] [--variant {fcos}]
               [--spec-version {1.5.0}]
               FILE [FILE ...]

positional arguments:
  FILE                  config files to merge

options:
  -h, --help               show this help message and exit
  --version, -V            show program's version number and exit
  --output FILE, -o FILE   output file. Outputs to stdout by default
  --variant {fcos}         Butane specification variant
  --spec-version {1.5.0}   Butane specification version

Licence

© 2023 Nikita Karamov
Licensed under the BSD 3-Clause "New" or "Revised" License.

This README can also be licensed under the Creative Commons Attribution 4.0 International


This project is hosted on GitHub: https://github.com/kytta/bumerge.git