Move universe integration tests to universe dir.

Signed-off-by: Solomon Hykes <solomon@dagger.io>
This commit is contained in:
Solomon Hykes
2021-06-09 19:08:03 +00:00
parent b0d571562d
commit fcbdfe178a
37 changed files with 124 additions and 91 deletions

71
stdlib/.dagger/env/aws-s3/plan/s3.cue vendored Normal file
View File

@@ -0,0 +1,71 @@
package s3
import (
"dagger.io/dagger"
"dagger.io/aws"
"dagger.io/aws/s3"
)
TestConfig: awsConfig: aws.#Config & {
region: "us-east-2"
}
bucket: "dagger-ci"
content: "A simple test sentence"
TestS3UploadFile: {
deploy: s3.#Put & {
config: TestConfig.awsConfig
sourceInline: content
target: "s3://\(bucket)/test.txt"
}
verify: #VerifyS3 & {
config: TestConfig.awsConfig
target: deploy.target
file: "test.txt"
}
}
TestDirectory: dagger.#Artifact
TestS3UploadDir: {
deploy: s3.#Put & {
config: TestConfig.awsConfig
source: TestDirectory
target: "s3://\(bucket)/"
}
verifyFile: #VerifyS3 & {
config: TestConfig.awsConfig
target: deploy.target
file: "dirFile.txt"
}
verifyDir: #VerifyS3 & {
config: TestConfig.awsConfig
target: deploy.target
file: "foo.txt"
}
}
TestS3Sync: {
deploy: s3.#Sync & {
config: TestConfig.awsConfig
source: TestDirectory
target: "s3://\(bucket)/"
}
verifyFile: #VerifyS3 & {
config: TestConfig.awsConfig
target: deploy.target
file: "dirFile.txt"
}
verifyDir: #VerifyS3 & {
config: TestConfig.awsConfig
target: deploy.target
file: "foo.txt"
}
}

View File

@@ -0,0 +1,83 @@
package s3
import (
"dagger.io/aws"
"dagger.io/alpine"
"dagger.io/dagger/op"
)
#List: {
// AWS Config
config: aws.#Config
// Target S3 URL (e.g. s3://<bucket-name>/<path>/<sub-path>)
target?: string
contents: {
string
#up: [
op.#Load & {
from: aws.#CLI & {
"config": config
}
},
op.#Exec & {
args: [
"/bin/bash",
"--noprofile",
"--norc",
"-eo",
"pipefail",
"-c",
#"""
aws s3 ls --recursive \#(target) > /contents
"""#,
]
},
op.#Export & {
source: "/contents"
format: "string"
},
]
}
}
#VerifyS3: {
file: string
config: aws.#Config
target: string
lists: #List & {
"config": config
"target": target
}
test: #up: [
op.#Load & {
from: alpine.#Image & {
package: bash: "~5.1"
}
},
op.#WriteFile & {
dest: "/test"
content: lists.contents
},
op.#Exec & {
always: true
args: [
"/bin/bash",
"--noprofile",
"--norc",
"-eo",
"pipefail",
"-c",
"grep -q \(file) /test",
]
},
]
}