(t *testing.T)
| 170 | } |
| 171 | |
| 172 | func TestBuilderBroken(t *testing.T) { |
| 173 | ctx := t.Context() |
| 174 | |
| 175 | dir := fs.NewDir(t, t.Name(), |
| 176 | fs.WithFile(pluginFilename, `#!/bin/sh exit 1`, fs.WithMode(0o777)), |
| 177 | ) |
| 178 | defer dir.Remove() |
| 179 | |
| 180 | b := bytes.NewBuffer(nil) |
| 181 | |
| 182 | dockerCli, err := command.NewDockerCli( |
| 183 | command.WithBaseContext(ctx), |
| 184 | command.WithAPIClient(&fakeClient{}), |
| 185 | command.WithInputStream(discard), |
| 186 | command.WithCombinedStreams(b), |
| 187 | ) |
| 188 | assert.NilError(t, err) |
| 189 | assert.NilError(t, dockerCli.Initialize(flags.NewClientOptions())) |
| 190 | dockerCli.ConfigFile().CLIPluginsExtraDirs = []string{dir.Path()} |
| 191 | |
| 192 | tcmd := newDockerCommand(dockerCli) |
| 193 | tcmd.SetArgs([]string{"build", "."}) |
| 194 | |
| 195 | cmd, args, err := tcmd.HandleGlobalFlags() |
| 196 | assert.NilError(t, err) |
| 197 | |
| 198 | var envs []string |
| 199 | args, os.Args, envs, err = processBuilder(dockerCli, cmd, args, os.Args) |
| 200 | assert.NilError(t, err) |
| 201 | assert.DeepEqual(t, []string{"build", "."}, args) |
| 202 | assert.Check(t, len(envs) == 0) |
| 203 | |
| 204 | output.Assert(t, b.String(), map[int]func(string) error{ |
| 205 | 0: output.Prefix("failed to fetch metadata:"), |
| 206 | 2: output.Suffix("DEPRECATED: The legacy builder is deprecated and will be removed in a future release."), |
| 207 | }) |
| 208 | } |
| 209 | |
| 210 | func TestBuilderBrokenEnforced(t *testing.T) { |
| 211 | t.Setenv("DOCKER_BUILDKIT", "1") |
nothing calls this directly
no test coverage detected
searching dependent graphs…