У меня есть приложение go, структурированное так:
cmd|отчеты|main.go
main.go импортирует пакет internal/reports
и имеет единственную функцию main (), которая делегирует вызов функции aws-lambda-go/lambda.Start()
.
Код выполняется с помощью команд (фрагмент)):
cd internal/reports && go build handler.go
cd ../..
go build -o reports ../cmd/reports/main.go && chmod +x reports && zip reports.zip reports
reports.zip
загружается в AWS Lambda, что в свою очередь выдает ошибку при нажатии кнопки Test
:
{
"errorMessage": "fork/exec /var/task/reports: exec format error",
"errorType": "PathError"
}
reports
устанавливается как лямбдаHandler
.
Кроме того, код собран на компьютере с Ubuntu 14.04, как часть aws/codebuild/ubuntu-base:14.04
Docker Image, на AWS CodeBuild .Здесь не должно быть проблем со средой, даже если ошибка указывает на кросс-платформенную проблему.
Есть идеи?