如何解决获取所有依赖关系,返回Terratest无法识别的导入路径
配置
- go1.15.2 darwin / amd64
- macOS Catalina v10.15.7
.zshrc
文件
export GOPATH=$HOME/go
export GOROOT=/usr/local/opt/go/libexec
export PATH=$PATH:$GOPATH/bin
export PATH=$PATH:$GOROOT/bin
我要做什么
我是Go的新手,并试图使用Terratest为Packer构建编写测试。
尝试运行go test my_test.go
时,我不断收到错误消息,提示我需要安装缺少的软件包。
../../../../../ go / src / github.com / gruntwork-io / terratest / modules / aws / sqs.go:10:2:找不到软件包“ github。 com / google / uuid”中的任何一个:
/usr/local/opt/go/libexec/src/github.com/google/uuid(来自$ GOROOT) /Users/username/go/src/github.com/google/uuid(来自$ GOPATH)。
FAIL命令行参数[设置失败]
失败
谷歌搜索发现从测试文件所在的目录运行go get -u ./...
应该安装这些软件包
问题
运行go get -u ./...
时出现以下错误:
package _ / Users / username / github.com / my-org / my-repo / packer / tests:无法识别的导入路径“ _ / Users / username / github.com / my-org / my-repo / packer /测试”:导入路径不是以主机名开头
对于其他上下文,这是我正在使用的目录结构:
~
github.com/my-org/my-repo/
packer/
tests/
my_test.go
这是测试文件,我使用this terratest example作为参考创建了该文件:
package test
import (
"testing"
"github.com/gruntwork-io/terratest/modules/packer"
"github.com/stretchr/testify/assert"
terratest_aws "github.com/gruntwork-io/terratest/modules/aws"
)
func TestMyAmiBuild( t *testing.T) {
awsRegion := "us-east-1"
packerOptions := &packer.Options{
// Path to the Packer template under test
Template: "../template/template.json",// Variables to pass to Packer build
Vars: map[string]string{
"ami_name": "my-ami"
},// Only build the AWS AMI
Only: "amazon-ebs",}
// Build the Packer template
amiID := packer.BuildArtifact(t,packerOptions)
// Clean up the AMI after we're done
defer terratest_aws.DeleteAmiAndAllSnapshots(t,awsRegion,amiID)
// Check if AMI is private
amiIsPublic := terratest_aws.GetAmiPubliclyAccessible(t,amiID)
assert.False(t,amiIsPublic)
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。