で HCL フィールドを設定しgolang
ます。ここに例を示します。
package main
import (
"log"
"os"
"github.com/hashicorp/hcl"
)
const (
EXAMPLE_HCL = `config = "/etc/test.conf"`
)
type HCLConfig struct {
ConfigFile string `hcl:"config"`
}
func main() {
cfg := &HCLConfig{}
hclTree, err := hcl.Parse(EXAMPLE_HCL)
if err != nil {
os.Exit(1)
}
// how to modify tree to override config field
if err := hcl.DecodeObject(&cfg, hclTree); err != nil {
os.Exit(1)
}
log.Printf("%+v\n", cfg)
}
config
関数を呼び出した後にフィールドをオーバーライドすることができますhcl.DecodeObject
。
ただし、 を呼び出す前にそのフィールドをオーバーライドしますhcl.DecodeObject
。
HCL ツリーを変更する方法はありますか?