By chrstphfrtz
Hey everyone!
So I am playing around with serverless functions and Go but as soon as I add a module from Github the build.sh script fails. Here is a minimal example:
package main
import (
"net/http"
"github.com/digitalocean/godo"
)
type Request struct {
Token string `json:"token"`
}
type Response struct {
StatusCode int `json:"statusCode,omitempty"`
Body string `json:"body,ommitempty"`
}
func Main(in Request) (*Response, error) {
client := godo.NewFromToke(in.Token)
return &Response{
StatusCode: http.StatusOK,
Body: "Yay!",
}, nil
}
The error when executing doctl serverless deploy <folder> is
Deploying '/user/sample/test'
to namespace '...'
on host '...'
Submitted action 'test' for remote building and deployment in runtime go:default (id: ...)
Transcript of remote build session for 'test':
Output of failed build in /tmp/slices/builds/.../sample_test/2022-07-23T22-30-16.224Z/packages/sample/test
initializing modules
go: creating new go.mod: module exec
go: to add module requirements and sums:
go mod tidy
building
test.go:6:2: no required module provides package github.com/digitalocean/godo; to add it:
go get github.com/digitalocean/godo
Failures:
Error: While deploying action 'sample/test': './build.sh' exited with code 1
Does anyone have an idea what I am doing wrong? Thanks a lot for the help I really appreciate it :)
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
You have to put your go.mod and go.sum files directly in the package where you have the function’s code, in your case /tmp/slices/builds/.../sample_test/2022-07-23T22-30-16.224Z/packages/sample/test
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.