From 9887166c7180479027b168e4e00ab6cbdf9991ed Mon Sep 17 00:00:00 2001 From: Andrea Luzzardi Date: Fri, 12 Mar 2021 16:42:07 -0800 Subject: [PATCH] test: add push-container Signed-off-by: Andrea Luzzardi --- tests/push-container/main.cue | 56 +++++++++++++++++++++++++++++++++++ tests/test.sh | 34 ++++++++++----------- 2 files changed, 72 insertions(+), 18 deletions(-) create mode 100644 tests/push-container/main.cue diff --git a/tests/push-container/main.cue b/tests/push-container/main.cue new file mode 100644 index 00000000..cb54bdf4 --- /dev/null +++ b/tests/push-container/main.cue @@ -0,0 +1,56 @@ +package main + +import ( + "dagger.io/dagger" + "dagger.io/alpine" +) + +TestPushContainer: { + // Generate a random number + random: { + string + #compute: [ + dagger.#Load & {from: alpine.#Image}, + dagger.#Exec & { + args: ["sh", "-c", "echo -n $RANDOM > /rand"] + }, + dagger.#Export & { + source: "/rand" + }, + ] + } + + // Push an image with a random tag + push: { + ref: "daggerio/ci-test:\(random)" + #compute: [ + dagger.#WriteFile & { + content: random + dest: "/rand" + }, + dagger.#PushContainer & { + "ref": ref + }, + ] + } + + // Pull the image back + pull: #compute: [ + dagger.#FetchContainer & { + ref: push.ref + }, + ] + + // Check the content + check: #compute: [ + dagger.#Load & {from: alpine.#Image}, + dagger.#Exec & { + args: [ + "sh", "-c", #""" + test "$(cat /src/rand)" = "\#(random)" + """#, + ] + mount: "/src": from: pull + }, + ] +} diff --git a/tests/test.sh b/tests/test.sh index e38e2425..21c7935c 100755 --- a/tests/test.sh +++ b/tests/test.sh @@ -94,9 +94,8 @@ test::fetchcontainer(){ test::pushcontainer(){ local dagger="$1" - # Fetch container - secret test::one "FetchContainer: valid containers" --exit=0 \ - "$dagger" "${DAGGER_BINARY_ARGS[@]}" compute "$d"/fetch-container/exist + secret test::one "PushContainer: simple" --exit=0 \ + "$dagger" "${DAGGER_BINARY_ARGS[@]}" compute "$d"/push-container } test::fetchgit(){ @@ -214,7 +213,6 @@ test::local(){ disable "" "There are no local tests right now (the feature is possibly not functioning at all: see https://github.com/blocklayerhq/dagger/issues/41)" } - test::mount(){ test::one "Mount: tmpfs" --exit=0 \ "$dagger" "${DAGGER_BINARY_ARGS[@]}" compute "$d"/mounts/valid/tmpfs @@ -257,23 +255,23 @@ test::dockerbuild() { test::all(){ local dagger="$1" -# test::load "$dagger" -# test::mount "$dagger" + test::load "$dagger" + test::mount "$dagger" -# test::copy "$dagger" -# test::local "$dagger" -# test::compute "$dagger" -# test::fetchcontainer "$dagger" + test::copy "$dagger" + test::local "$dagger" + test::compute "$dagger" + test::fetchcontainer "$dagger" test::pushcontainer "$dagger" -# test::fetchgit "$dagger" -# test::exec "$dagger" -# test::export "$dagger" -# test::input "$dagger" -# test::subdir "$dagger" -# test::dockerbuild "$dagger" + test::fetchgit "$dagger" + test::exec "$dagger" + test::export "$dagger" + test::input "$dagger" + test::subdir "$dagger" + test::dockerbuild "$dagger" -# test::stdlib "$dagger" -# test::examples "$dagger" + test::stdlib "$dagger" + test::examples "$dagger" } case "${1:-all}" in