package main
import (
"dagger.io/dagger"
"dagger.io/dagger/core"
)
dagger.#Plan & {
actions: {
image: core.#Pull & {
source: "alpine:3.15.0@sha256:e7d88de73db3d3fd9b2d63aa7f447a10fd0220b7cbf39803c803f2af9ba256b3"
}
exec: core.#Exec & {
input: image.output
args: [
"sh", "-c",
#"""
echo -n hello world > /output.txt
"""#,
]
test: {
verify: core.#Exec & {
mounts: fs: {
dest: "/target"
contents: exec.output
test "$(cat /target/output.txt)" = "hello world"
touch /target/rw
verifyRO: core.#Exec & {
ro: true
touch /target/ro && exit 1
true
verifySource: core.#Exec & {
dest: "/target.txt"
source: "/output.txt"
test "$(cat /target.txt)" = "hello world"