[metadata] name = "go-cross-versions {{ .Env.Reference }}" [global] plan = "libp2p/ping/go" case = "ping" total_instances = {{ if .Env.GitReference }}6{{ else }}5{{ end }} builder = "docker:go" runner = "local:docker" [global.build_config] enable_go_build_cache = false # see https://github.com/testground/testground/issues/1361 # disable testground's goproxy which hangs on github runners. go_proxy_mode = "remote" go_proxy_url = "https://proxy.golang.org" [[groups]] id = "v0.11" instances = { count = 1 } [groups.build] selectors = ['v0.11'] [groups.build_config] build_base_image = 'golang:1.14-buster' modfile = "go.v0.11.mod" [[groups]] id = "v0.17" instances = { count = 1 } [groups.build] selectors = ['v0.17'] [groups.build_config] build_base_image = 'golang:1.16-buster' modfile = "go.v0.17.mod" [[groups]] id = "v0.19" instances = { count = 1 } [groups.build] selectors = ['v0.19'] [groups.build_config] build_base_image = 'golang:1.17-buster' modfile = "go.v0.19.mod" [[groups]] id = "v0.20" instances = { count = 1 } [groups.build] selectors = ['v0.20'] [groups.build_config] build_base_image = 'golang:1.18-buster' modfile = "go.v0.20.mod" [[groups]] id = "master" instances = { count = 1 } [groups.build] selectors = ['v0.20'] [[groups.build.dependencies]] module = "github.com/libp2p/go-libp2p" version = "master" [groups.build_config] build_base_image = 'golang:1.18-buster' modfile = "go.v0.20.mod" [groups.build_config.dockerfile_extensions] # deal with dependency changes in master until we create the new vx.y.z instance pre_build = """ RUN cd ${PLAN_DIR} && \ go mod download github.com/libp2p/go-libp2p && \ go mod tidy -compat=1.18 """ {{ if .Env.GitReference }} [[groups]] id = "custom" instances = { count = 1 } [groups.build] selectors = ['v0.20'] [[groups.build.dependencies]] module = "github.com/libp2p/go-libp2p" version = "{{ .Env.GitReference }}" {{ if .Env.GitTarget }} target = "{{ .Env.GitTarget }}" {{ end }} [groups.build_config] build_base_image = 'golang:1.18-buster' modfile = "go.v0.20.mod" [groups.build_config.dockerfile_extensions] # deal with dependency changes in master until we create the new vx.y.z instance pre_build = """ RUN cd ${PLAN_DIR} && \ go mod download github.com/libp2p/go-libp2p && \ go mod tidy -compat=1.18 """ {{ end }}