Skip to content

A simple command line tool to load a configuration file template and fill placeholders with environment variables.

License

Notifications You must be signed in to change notification settings

tlcowling/confmake

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

confmake Build Status Dependency Status Code Climate Gem Version

Confmake makes configuration files.

Its a command line tool which procedurally generates configuration files from a template.

So far, you can use

  1. Shell environment variables
  2. Property Lists

Usage

``

Requirements

Requires ruby version >= 2.0

Developments

Please feel free to fork and whatnot...

Get the dependencies bundle install

Run the tests rake spec rake features

Thoughts?

###The point?

I had the need to procedurally create configuration files when automating the deployment of particular services.

###Why not just use sed and replace in some kind of bash script?

I originally used this approach but the script grew unwieldy, maybe I don't do good bash or maybe its just because of lack of testing. Whilst the benefit of a bash script is that it will run as-is on many systems, I find it better to treat a tool like this as software and therefore use the ecosystems already available to manage dependencies and deploy. I also enjoy programming in ruby :)

Tasks to do and improvement ideas

  • error message when config contains env variable that doesnt exist Version 0.0.2
  • Read config from properties file Version 0.0.4
  • verbose command Version 0.0.5
  • YAML Version 0.1.0

Roadmap

  • JSON Version 0.1.1

  • proper logging! 0.1.2

  • improve verbose messages

  • summary of what will change? dry-run maybe?

  • diff on what has changed in a config if overwriting?

About

A simple command line tool to load a configuration file template and fill placeholders with environment variables.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages