如何提供配置文件以及用golang编写的lambda函数。我在项目根目录下创建了一个名为config的文件夹并提供了配置,但不幸的是,在项目构建后该文件夹不起作用,而且我知道这是因为我们将其构建为二进制文件。方式或方法为golang提供配置文件以及lambda函数?
var config map[string]string
var filename string
//Checks the stage and loads the Configuration file
if len(event.Stage) > 0 {
filename = "configs/config.json"
}
configFile, err := os.Open(filename)
defer configFile.Close()
if err != nil {
log.Printf(err.Error())
return config, err
}
jsonParser := json.NewDecoder(configFile)
err = jsonParser.Decode(&config)
return config, err
答案 0 :(得分:0)
将配置文件添加到包含Go二进制文件的zip
例如,假设您有一个Handler.go,其configs目录包含configs.json,然后
go build -o Handler Handler.go && chmod +x Handler && zip -r handler.zip Handler configs
应制作一个包含configs目录和Handler二进制文件的zip文件,可以将其上传到Lambda
您可能希望考虑使用诸如AWS Parameter Store这样的文件的替代方法