bazelbuild / bazelbuild/bazel-toolchains

Why do image paths start with docker://?

Open
#988 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
202
Forks
100
PR merge metrics
No merged PRs in 30d

Description

The `container-image` property creates URIs that start with `docker://`.
```
pkg/rbeconfigsgen/rbeconfigsgen.go
87: "container-image": "docker://{{.ToolchainContainer}}",
```
I can't find any documentation online about the origins of using this prefix.

In fact, it doesn't seem to work using docker cli:
```
docker pull docker://l.gcr.io/google/rbe-ubuntu16-04@sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1
invalid reference format
```
My solution is to simply remove the prefix, but perhaps I'm missing something as to why it exists.

For context, we are ingesting the `container-image` as an `exec_property` in [bazel buildfarm](https://github.com/bazelbuild/bazel-buildfarm), but our implementation fails due to the same cli error I've shown. Should I just remove the prefix when we ingest the URI, or should it work as is? I'm wondering if I need to configure my system or docker to understand what `docker://` means.

Contributor guide

Open the contributing guide

Research direction

Start in pkg/rbeconfigsgen/rbeconfigsgen.go at line 87 and compare the generated container-image value with how bazel-buildfarm ingests it as an exec_property. Check the documented or expected meaning of the docker:// prefix and the Docker CLI behavior shown in the report. Done means the expected URI format and any required handling are clearly established.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
build-system
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.