Skip to content

Commit 8683664

Browse files
authored
Merge pull request docker#6238 from thaJeztah/e2e_touchups
e2e: minor cleanups in `TestPromptExitCode`
2 parents f2c64c1 + d3c23a2 commit 8683664

File tree

3 files changed

+22
-19
lines changed

3 files changed

+22
-19
lines changed

e2e/global/cli_test.go

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -145,14 +145,14 @@ func TestPromptExitCode(t *testing.T) {
145145
t.Helper()
146146
skip.If(t, versions.LessThan(environment.DaemonAPIVersion(t), "1.44"))
147147

148-
pluginDir := testutils.SetupPlugin(t, ctx)
149-
t.Cleanup(pluginDir.Remove)
150-
151-
plugin := "registry:5000/plugin-content-trust-install:latest"
148+
const plugin = "registry:5000/plugin-install-test:latest"
152149

153-
icmd.RunCommand("docker", "plugin", "create", plugin, pluginDir.Path()).Assert(t, icmd.Success)
150+
pluginDir := testutils.SetupPlugin(t, ctx)
151+
icmd.RunCommand("docker", "plugin", "create", plugin, pluginDir).Assert(t, icmd.Success)
154152
icmd.RunCmd(icmd.Command("docker", "plugin", "push", plugin), defaultCmdOpts...).Assert(t, icmd.Success)
155153
icmd.RunCmd(icmd.Command("docker", "plugin", "rm", "-f", plugin), defaultCmdOpts...).Assert(t, icmd.Success)
154+
155+
// Test prompt to grant privileges.
156156
return icmd.Command("docker", "plugin", "install", plugin)
157157
},
158158
},
@@ -162,20 +162,22 @@ func TestPromptExitCode(t *testing.T) {
162162
t.Helper()
163163
skip.If(t, versions.LessThan(environment.DaemonAPIVersion(t), "1.44"))
164164

165-
pluginLatestDir := testutils.SetupPlugin(t, ctx)
166-
t.Cleanup(pluginLatestDir.Remove)
167-
pluginNextDir := testutils.SetupPlugin(t, ctx)
168-
t.Cleanup(pluginNextDir.Remove)
169-
170-
plugin := "registry:5000/plugin-content-trust-upgrade"
165+
const plugin = "registry:5000/plugin-upgrade-test"
171166

172-
icmd.RunCommand("docker", "plugin", "create", plugin+":latest", pluginLatestDir.Path()).Assert(t, icmd.Success)
173-
icmd.RunCommand("docker", "plugin", "create", plugin+":next", pluginNextDir.Path()).Assert(t, icmd.Success)
167+
pluginLatestDir := testutils.SetupPlugin(t, ctx)
168+
icmd.RunCommand("docker", "plugin", "create", plugin+":latest", pluginLatestDir).Assert(t, icmd.Success)
174169
icmd.RunCmd(icmd.Command("docker", "plugin", "push", plugin+":latest"), defaultCmdOpts...).Assert(t, icmd.Success)
175-
icmd.RunCmd(icmd.Command("docker", "plugin", "push", plugin+":next"), defaultCmdOpts...).Assert(t, icmd.Success)
176170
icmd.RunCmd(icmd.Command("docker", "plugin", "rm", "-f", plugin+":latest"), defaultCmdOpts...).Assert(t, icmd.Success)
171+
172+
pluginNextDir := testutils.SetupPlugin(t, ctx)
173+
icmd.RunCommand("docker", "plugin", "create", plugin+":next", pluginNextDir).Assert(t, icmd.Success)
174+
icmd.RunCmd(icmd.Command("docker", "plugin", "push", plugin+":next"), defaultCmdOpts...).Assert(t, icmd.Success)
177175
icmd.RunCmd(icmd.Command("docker", "plugin", "rm", "-f", plugin+":next"), defaultCmdOpts...).Assert(t, icmd.Success)
176+
177+
// Using "--grant-all-permissions" to disable prompting for confirmation.
178178
icmd.RunCmd(icmd.Command("docker", "plugin", "install", "--disable", "--grant-all-permissions", plugin+":latest"), defaultCmdOpts...).Assert(t, icmd.Success)
179+
180+
// Test prompting for upgrade.
179181
return icmd.Command("docker", "plugin", "upgrade", plugin+":latest", plugin+":next")
180182
},
181183
},

e2e/plugin/trust_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,8 @@ func TestInstallWithContentTrust(t *testing.T) {
2929
t.Cleanup(cancel)
3030

3131
pluginDir := testutils.SetupPlugin(t, ctx)
32-
t.Cleanup(pluginDir.Remove)
3332

34-
icmd.RunCommand("docker", "plugin", "create", pluginName, pluginDir.Path()).Assert(t, icmd.Success)
33+
icmd.RunCommand("docker", "plugin", "create", pluginName, pluginDir).Assert(t, icmd.Success)
3534
result := icmd.RunCmd(icmd.Command("docker", "plugin", "push", pluginName),
3635
fixtures.WithConfig(dir.Path()),
3736
fixtures.WithTrust,

e2e/testutils/plugins.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,10 @@ import (
2222
var plugins embed.FS
2323

2424
// SetupPlugin builds a plugin and creates a temporary
25-
// directory with the plugin's config.json and rootfs.
26-
func SetupPlugin(t *testing.T, ctx context.Context) *fs.Dir {
25+
// directory with the plugin's config.json and rootfs,
26+
// which will be removed in [t.Cleanup]. It returns
27+
// the location of the temporary directory.
28+
func SetupPlugin(t *testing.T, ctx context.Context) (pluginDir string) {
2729
t.Helper()
2830

2931
p := &plugin.Config{
@@ -52,7 +54,7 @@ func SetupPlugin(t *testing.T, ctx context.Context) *fs.Dir {
5254
)
5355

5456
icmd.RunCommand("/bin/cp", binPath, dir.Join("rootfs", p.Entrypoint[0])).Assert(t, icmd.Success)
55-
return dir
57+
return dir.Path()
5658
}
5759

5860
// buildPlugin uses Go to build a plugin from one of the source files in the plugins directory.

0 commit comments

Comments
 (0)