From b3c29acb3476ffaee8bbbaee599e204d7e40bb8e Mon Sep 17 00:00:00 2001 From: Tom Chauveau Date: Thu, 22 Apr 2021 20:57:00 +0200 Subject: [PATCH] Add tests on AWS s3 upload directory Signed-off-by: Tom Chauveau --- tests/stdlib.bats | 2 +- tests/stdlib/aws/s3/s3.cue | 23 ++++++++++++++++++++++- tests/stdlib/aws/s3/testdata/bar/foo.txt | 1 + tests/stdlib/aws/s3/testdata/dirFile.txt | 1 + tests/stdlib/aws/s3/verify.cue | 6 ++++-- 5 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 tests/stdlib/aws/s3/testdata/bar/foo.txt create mode 100644 tests/stdlib/aws/s3/testdata/dirFile.txt diff --git a/tests/stdlib.bats b/tests/stdlib.bats index 0d7c2aca..106de816 100644 --- a/tests/stdlib.bats +++ b/tests/stdlib.bats @@ -41,5 +41,5 @@ setup() { @test "stdlib: s3" { skip_unless_secrets_available "$TESTDIR"/stdlib/aws/inputs.yaml - "$DAGGER" compute "$TESTDIR"/stdlib/aws/s3 --input-yaml "$TESTDIR"/stdlib/aws/inputs.yaml + "$DAGGER" compute "$TESTDIR"/stdlib/aws/s3 --input-dir TestDirectory="$TESTDIR"/stdlib/aws/s3/testdata --input-yaml "$TESTDIR"/stdlib/aws/inputs.yaml } \ No newline at end of file diff --git a/tests/stdlib/aws/s3/s3.cue b/tests/stdlib/aws/s3/s3.cue index 92786264..1949c1db 100644 --- a/tests/stdlib/aws/s3/s3.cue +++ b/tests/stdlib/aws/s3/s3.cue @@ -1,6 +1,7 @@ package s3 import ( + "dagger.io/dagger" "dagger.io/aws" "dagger.io/aws/s3" ) @@ -20,5 +21,25 @@ TestS3UploadFile: { target: "s3://\(bucket)/test.txt" } - verify: #VerifyS3 + verify: #VerifyS3 & { + file: "test.txt" + } +} + +TestDirectory: dagger.#Artifact + +TestS3UploadDir: { + deploy: s3.#Put & { + config: TestConfig.awsConfig + source: TestDirectory + target: "s3://\(bucket)/" + } + + verifyFile: #VerifyS3 & { + file: "dirFile.txt" + } + + verifyDir: #VerifyS3 & { + file: "foo.txt" + } } diff --git a/tests/stdlib/aws/s3/testdata/bar/foo.txt b/tests/stdlib/aws/s3/testdata/bar/foo.txt new file mode 100644 index 00000000..616e65a3 --- /dev/null +++ b/tests/stdlib/aws/s3/testdata/bar/foo.txt @@ -0,0 +1 @@ +Test recursivity \ No newline at end of file diff --git a/tests/stdlib/aws/s3/testdata/dirFile.txt b/tests/stdlib/aws/s3/testdata/dirFile.txt new file mode 100644 index 00000000..590f5066 --- /dev/null +++ b/tests/stdlib/aws/s3/testdata/dirFile.txt @@ -0,0 +1 @@ +Test directory \ No newline at end of file diff --git a/tests/stdlib/aws/s3/verify.cue b/tests/stdlib/aws/s3/verify.cue index 90befbcb..b84380d3 100644 --- a/tests/stdlib/aws/s3/verify.cue +++ b/tests/stdlib/aws/s3/verify.cue @@ -19,12 +19,14 @@ import ( // Script aws.#Script & { code: """ - aws s3 ls \(target) > /contents + aws s3 ls --recursive \(target) >> /contents """ } } #VerifyS3: { + file: string + lists: #List & { config: TestConfig.awsConfig target: "s3://\(bucket)" @@ -32,7 +34,7 @@ import ( #CheckFiles: """ - grep -q test.txt /test + grep -q \(file) /test """ test: #up: [