如何禁用CGO进行测试

时间:2018-11-26 10:53:42

标签: docker go

我使用Docker将项目添加到其中,现在我想对其进行一些测试,但我收到测试失败的错误

知道我在这里想念什么吗?

$(document).ready(function(){
        var dayDates = $("input.dayDates")[0].value;
        $(this).html("Hello <b>world!</b> " + dayDates );
});

现在,我构建成功完成的docker,现在我要在其上运行测试。

我确实在docker运行# build stage FROM golang:1.11.1-alpine3.8 AS builder RUN apk add --update --no-cache make \ git ADD https://github.com/golang/dep/releases/download/v0.5.0/dep-linux-amd64 /usr/bin/dep RUN chmod +x /usr/bin/dep RUN mkdir -p $GOPATH/src/github.company/user/go-application WORKDIR $GOPATH/src/github.company/user/go-application COPY Gopkg.toml Gopkg.lock ./ RUN dep ensure --vendor-only COPY . ./ 并成功运行

现在我使用命令docker run -it goapp并出现错误

go test -v ./...

有什么办法解决这个问题吗?

我尝试在docker文件中执行另一步,如下面的步骤无济于事

# runtime/cgo
exec: "gcc": executable file not found in $PATH
FAIL    github.company/user/go-application [build failed]
FAIL    github.company/user/go-application/integration [build failed]

1 个答案:

答案 0 :(得分:2)

您已为构建禁用了CGO,但没有为测试禁用CGO,您必须执行以下操作:

CGO_ENABLED=0 GOOS=linux go test -v ./...