build: validate build args and labels

Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
This commit is contained in:
CrazyMax
2023-09-11 16:35:57 +02:00
committed by CrazyMax
parent 66e6dab26b
commit 73ea0826ca
2 changed files with 43 additions and 14 deletions

View File

@ -42,6 +42,8 @@ var buildTests = []func(t *testing.T, sb integration.Sandbox){
testBuildDetailsLink,
testBuildProgress,
testBuildAnnotations,
testBuildBuildArgNoKey,
testBuildLabelNoKey,
}
func testBuild(t *testing.T, sb integration.Sandbox) {
@ -358,3 +360,19 @@ func testBuildAnnotations(t *testing.T, sb integration.Sandbox) {
require.NotNil(t, img.Desc)
assert.Equal(t, "zzz", img.Desc.Annotations["example4"])
}
func testBuildBuildArgNoKey(t *testing.T, sb integration.Sandbox) {
dir := createTestProject(t)
cmd := buildxCmd(sb, withArgs("build", "--build-arg", "=TEST_STRING", dir))
out, err := cmd.CombinedOutput()
require.Error(t, err, string(out))
require.Equal(t, strings.TrimSpace(string(out)), `ERROR: invalid key-value pair "=TEST_STRING": empty key`)
}
func testBuildLabelNoKey(t *testing.T, sb integration.Sandbox) {
dir := createTestProject(t)
cmd := buildxCmd(sb, withArgs("build", "--label", "=TEST_STRING", dir))
out, err := cmd.CombinedOutput()
require.Error(t, err, string(out))
require.Equal(t, strings.TrimSpace(string(out)), `ERROR: invalid key-value pair "=TEST_STRING": empty key`)
}