walter-cd / walter

Tiny deployment pipeline
http://walter-cd.net
Apache License 2.0
438 stars 39 forks source link

Enhancement to support HCL and JSON configuration file formats #128

Closed jacec closed 9 years ago

jacec commented 9 years ago

Pull request adding support for HCL and JSON configuration as discussed in #127

Note: HCL and JSON configuration is converted to YAML and existing parsing code is therefore unchanged. See HCL for more information.

hclconfig.go added hclconfig_test.go added Readme updated to reflect configuration language options. minor modification to walter that now assumes files with a suffix of ".hcl" or ".json" are config files in those formats. ALL other suffixes are assumed to be YAML and thus this shouldn't break any existing usage. Added HCL and JSON test files

build and all tests complete successfully.

jacec commented 9 years ago

also referenced in #18

takahi-i commented 9 years ago

Hello @jacec. Thank you very much for the contribution!

We think HCL is a good format and consider to support the HCL format in the past (#18) but we think that supporting two format is too much for Walter team because of our resource. Therefore at this point we will stick with supporting only YAML for a while (at least major version update)...

Deeply sorry that we are not able to merge this PR...

jacec commented 9 years ago

That's the reason I didn't change the parsing code and simply converted the HCL/JSON []map[string]interface{} to the YAML []map[interface{}]interface to minimize the changes and support you needed. That being said, I understand your hesitation, but would urge you to consider this enhancement in the next major release as it opens up a number of benefits around pipeline configuration. Thanks!

takahi-i commented 9 years ago

I will close this issue since the pr is not be merged currently following the previous discussion of this thread.