package docker import ( "alpha.dagger.io/dagger" "alpha.dagger.io/dagger/op" ) TestSourceBuild: dagger.#Artifact @dagger(input) TestBuild: { image: #Build & { source: TestSourceBuild } verify: #up: [ op.#Load & { from: image }, op.#Exec & { always: true args: [ "sh", "-c", """ grep -q "test" /test.txt """, ] }, ] } TestBuildWithArgs: { image: #Build & { dockerfile: """ FROM alpine ARG TEST ENV TEST=$TEST RUN echo "$TEST" > /test.txt """ source: "" args: TEST: "test" } verify: #up: [ op.#Load & { from: image }, op.#Exec & { always: true args: [ "sh", "-c", """ grep -q "test" /test.txt """, ] }, ] } TestSourceImageFromDockerfile: dagger.#Artifact @dagger(input) TestImageFromDockerfile: { image: #Build & { dockerfile: """ FROM alpine COPY test.txt /test.txt """ source: TestSourceImageFromDockerfile } verify: #up: [ op.#Load & { from: image }, op.#Exec & { always: true args: [ "sh", "-c", """ grep -q "test" /test.txt """, ] }, ] }