5 ms·
Completely agree, my wish is that anything that risks getting complex uses a Ruby-based DSL. For example, I like using Capistrano, which is wrapper around rake
by speleding 3y ago
Completely agree, my wish is that anything that risks getting complex uses a Ruby-based DSL.
For example, I like using Capistrano, which is wrapper around rake, which is a Ruby based DSL. That means that if things get tricky I can just drop down to using a programming language. Split stuff into logical parts that I load where needed and, for example, I can do something like YAML.load(..file..).dig('attribute name') or JSON.load from somewhere else.
Yes, you risk someone building spaghetti that way, but the flip side is that a good devops can build something much easier to maintain than dozens of YAML and JSON files, and you get all the power from your IDE and linters that are already available for the programming language, so silly syntax errors are caught without needing to run anything.