TwiN 3059e3e028
feat: Support multiple configuration files (#396)
* Revert "Revert "feat: Support multiple configuration files" (#395)"

This reverts commit 87740e74a6a352ab433c59d90edebda8014cacad.

* feat: Properly implement support for config directory
2023-01-08 17:53:37 -05:00
..

deepmerge

test

Go library for deep merging YAML files.

Usage

package main

import (
	"github.com/TwiN/deepmerge"
)

func main() {
	dst := `
debug: true
client:
  insecure: true
users:
  - id: 1
    firstName: John
    lastName: Doe
  - id: 2
    firstName: Jane
    lastName: Doe`
	src := `
client:
  timeout: 5s
users:
  - id: 3
    firstName: Bob
    lastName: Smith`

	output, err := deepmerge.YAML([]byte(dst), []byte(src))
	if err != nil {
		panic(err)
	}
	println(string(output))
}

Output:

client:
    insecure: true
    timeout: 5s
debug: true
users:
    - firstName: John
      id: 1
      lastName: Doe
    - firstName: Jane
      id: 2
      lastName: Doe
    - firstName: Bob
      id: 3
      lastName: Smith