Skip to main content

Merge Butane configurations

Project description

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

Alternatively, with Homebrew:

brew install kytta/python/bumerge

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bumerge-0.2.1.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

bumerge-0.2.1-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file bumerge-0.2.1.tar.gz.

File metadata

  • Download URL: bumerge-0.2.1.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for bumerge-0.2.1.tar.gz
Algorithm Hash digest
SHA256 8e5276fcb3eb8d1e146d613b4739dd9f664ff72a694b1a3d9b666c91b3c921b6
MD5 a37b28dab78a377974fd557d320b46f7
BLAKE2b-256 aa6a1cbadab3d1b5e4147bce5c8c14abb3aef7f114cf21fe93fd99f7ea326a9f

See more details on using hashes here.

File details

Details for the file bumerge-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: bumerge-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for bumerge-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 03b767285d3090a2c8e7b43686897a889a54a70bb00a0fb8f269e3f73048458f
MD5 0c2ddccf3859bf33678dee46505781a6
BLAKE2b-256 71503fed90d28a6ee6b9a519efbc6b445276f5f363ac561cccc519793fbc3116

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page