package main
import (
"fmt"
"github.com/micro/go-micro/config"
"github.com/micro/go-micro/config/source/memory"
)
var configData = []byte(`
---
a: 1234
`)
func main() {
memorySource := memory.NewSource(
memory.WithYAML(configData),
)
// Create new config
conf := config.NewConfig()
// Load file source
conf.Load(memorySource)
fmt.Println(string(conf.Bytes()))
}
Memory Source
The memory source provides in-memory data as a source
Memory Format
The expected data format is json
data := []byte(`{
"hosts": {
"database": {
"address": "10.0.0.1",
"port": 3306
},
"cache": {
"address": "10.0.0.2",
"port": 6379
}
}
}`)
New Source
Specify source with data
memorySource := memory.NewSource(
memory.WithJSON(data),
)
Load Source
Load the source into config
// Create new config
conf := config.NewConfig()
// Load file source
conf.Load(memorySource)