diff options
Diffstat (limited to 'tools/build_defs/docker/build_test.sh')
-rwxr-xr-x | tools/build_defs/docker/build_test.sh | 61 |
1 files changed, 8 insertions, 53 deletions
diff --git a/tools/build_defs/docker/build_test.sh b/tools/build_defs/docker/build_test.sh index c0aabebbaf..82df66bb82 100755 --- a/tools/build_defs/docker/build_test.sh +++ b/tools/build_defs/docker/build_test.sh @@ -35,10 +35,6 @@ function EXPECT_CONTAINS() { || fail "$message" } -function no_check() { - echo "${@}" -} - function check_property() { local property="${1}" local tarball="${2}" @@ -52,18 +48,6 @@ function check_property() { EXPECT_CONTAINS "${metadata}" "\"${property}\": ${expected}" } -function check_manifest_property() { - local property="${1}" - local tarball="${2}" - local expected="${3}" - local test_data="${TEST_DATA_DIR}/${tarball}.tar" - - local metadata="$(tar xOf "${test_data}" "./manifest.json")" - - # This would be much more accurate if we had 'jq' everywhere. - EXPECT_CONTAINS "${metadata}" "\"${property}\": ${expected}" -} - function check_no_property() { local property="${1}" local tarball="${2}" @@ -148,8 +132,6 @@ function check_user() { } function check_layers_aux() { - local ancestry_check=${1} - shift 1 local input=${1} shift 1 local expected_layers=(${*}) @@ -194,7 +176,7 @@ function check_layers_aux() { # Check that the layer contains its predecessor as its parent in the JSON. if [[ -n "${parent}" ]]; then - "${ancestry_check}" "${input}" "${layer}" "\"${parent}\"" + check_parent "${input}" "${layer}" "\"${parent}\"" fi # Check that the layer's size metadata matches the layer's tarball's size. @@ -209,8 +191,8 @@ function check_layers_aux() { function check_layers() { local input=$1 shift - check_layers_aux "check_parent" "$input" "$@" - check_layers_aux "check_parent" "notop_$input" "$@" + check_layers_aux "$input" "$@" + check_layers_aux "notop_$input" "$@" } function test_gen_image() { @@ -221,7 +203,7 @@ function test_gen_image() { function test_dummy_repository() { local layer="0279f3ce8b08d10506abcf452393b3e48439f5eca41b836fae59a0d509fbafea" local test_data="${TEST_DATA_DIR}/dummy_repository.tar" - check_layers_aux "check_parent" "dummy_repository" "$layer" + check_layers_aux "dummy_repository" "$layer" local repositories="$(tar xOf "${test_data}" "./repositories")" @@ -359,11 +341,6 @@ function test_with_env() { check_env "with_env" \ "42a1bd0f449f61a23b8a7776875ffb6707b34ee99c87d6428a7394f5e55e8624" \ '["bar=blah blah blah", "foo=/asdf"]' - - # We should have a tag in our manifest, otherwise it will be untagged - # when loaded in newer clients. - check_manifest_property "RepoTags" "with_env" \ - "[\"bazel/${TEST_DATA_TARGET_BASE}:with_env\"]" } function test_with_double_env() { @@ -419,10 +396,10 @@ function test_data_path() { local absolute_data_path_sha="f196c42ab4f3eb850d9655b950b824db2c99c01527703ac486a7b48bb2a34f44" local root_data_path_sha="19d7fd26d67bfaeedd6232dcd441f14ee163bc81c56ed565cc20e73311c418b6" - check_layers_aux "check_parent" "no_data_path_image" "${no_data_path_sha}" - check_layers_aux "check_parent" "data_path_image" "${data_path_sha}" - check_layers_aux "check_parent" "absolute_data_path_image" "${absolute_data_path_sha}" - check_layers_aux "check_parent" "root_data_path_image" "${root_data_path_sha}" + check_layers_aux "no_data_path_image" "${no_data_path_sha}" + check_layers_aux "data_path_image" "${data_path_sha}" + check_layers_aux "absolute_data_path_image" "${absolute_data_path_sha}" + check_layers_aux "root_data_path_image" "${root_data_path_sha}" # Without data_path = "." the file will be inserted as `./test` # (since it is the path in the package) and with data_path = "." @@ -477,26 +454,4 @@ function test_extras_with_deb() { ./usr/titi" } -function test_bundle() { - # Check that we have these layers, but ignore the parent check, since - # this is a tree not a list. - check_layers_aux "no_check" "bundle_test" \ - "125e7cfb9d4a6d803a57b88bcdb05d9a6a47ac0d6312a8b4cff52a2685c5c858" \ - "42a1bd0f449f61a23b8a7776875ffb6707b34ee99c87d6428a7394f5e55e8624" \ - "4acbeb0495918726c0107e372b421e1d2a6fd4825d58fc3f0b0b2a719fb3ce1b" \ - "576a9fd9c690be04dc7aacbb9dbd1f14816e32dbbcc510f4d42325bbff7163dd" \ - "82ca3945f7d07df82f274d7fafe83fd664c2154e5c64c988916ccd5b217bb710" \ - "e5cfc312de72ce09488d789f525189a26a686d60fcc1c74249a3d7ce62986a82" - - # Our bundle should have the following aliases. - check_manifest_property "RepoTags" "bundle_test" \ - "[\"bazel/${TEST_DATA_TARGET_BASE}:base_with_entrypoint\", \"docker.io/ubuntu:latest\"]" - - check_manifest_property "RepoTags" "bundle_test" \ - "[\"bazel/${TEST_DATA_TARGET_BASE}:link_with_files_base\", \"us.gcr.io/google-appengine/base:fresh\"]" - - check_manifest_property "RepoTags" "bundle_test" \ - "[\"bazel/${TEST_DATA_TARGET_BASE}:with_double_env\", \"gcr.io/google-containers/pause:2.0\"]" -} - run_suite "build_test" |