Skip to content

Stale Go buildchain under Docker

Summary

Go buildchain available under Docker is fatally out of date.

Steps to reproduce

Write a CI job that include the command "go versin". Observe that it reports 1.3.3

Example Project

You can observe this bug in the pipeline logs for the reposurgeon project. Look for this:

go version go1.3.3 linux/amd64
GOPATH=/builds/esr/reposurgeon go get -u golang.org/x/crypto/ssh/terminal
# golang.org/x/sys/unix
src/golang.org/x/sys/unix/env_unix.go:30: undefined: syscall.Unsetenv
src/golang.org/x/sys/unix/ioctl.go:18: undefined: runtime.KeepAlive
src/golang.org/x/sys/unix/ioctl.go:28: undefined: runtime.KeepAlive
Makefile:62: recipe for target 'gosetup' failed
make: *** [gosetup] Error 2
ERROR: Job failed: exit code 1

What is the current bug behavior?

Code valid under Go 1.10 fails to link due to sale library.

What is the expected correct behavior?

The CI job should have priceeded to an end-to-end test of the code.

Relevant logs and/or screenshots

go version go1.3.3 linux/amd64
GOPATH=/builds/esr/reposurgeon go get -u golang.org/x/crypto/ssh/terminal
# golang.org/x/sys/unix
src/golang.org/x/sys/unix/env_unix.go:30: undefined: syscall.Unsetenv
src/golang.org/x/sys/unix/ioctl.go:18: undefined: runtime.KeepAlive
src/golang.org/x/sys/unix/ioctl.go:28: undefined: runtime.KeepAlive
Makefile:62: recipe for target 'gosetup' failed
make: *** [gosetup] Error 2
ERROR: Job failed: exit code 1

Output of checks

This bug happens on GitLab.com

Possible fixes

Upgrade to a recent version of Golang. 1.10 is out in major distributions now.

Edited by Eric S. Raymond