64 lines
1.0 KiB
CUE
64 lines
1.0 KiB
CUE
|
package main
|
||
|
|
||
|
import (
|
||
|
"alpha.dagger.io/europa/dagger/engine"
|
||
|
)
|
||
|
|
||
|
engine.#Plan & {
|
||
|
actions: {
|
||
|
image: engine.#Pull & {
|
||
|
source: "alpine:3.15.0@sha256:e7d88de73db3d3fd9b2d63aa7f447a10fd0220b7cbf39803c803f2af9ba256b3"
|
||
|
}
|
||
|
|
||
|
sharedCache: engine.#CacheDir & {
|
||
|
id: "mycache"
|
||
|
}
|
||
|
|
||
|
exec: engine.#Exec & {
|
||
|
input: image.output
|
||
|
mounts: cache: {
|
||
|
dest: "/cache"
|
||
|
contents: sharedCache
|
||
|
}
|
||
|
args: [
|
||
|
"sh", "-c",
|
||
|
#"""
|
||
|
echo -n hello world > /cache/output.txt
|
||
|
"""#,
|
||
|
]
|
||
|
}
|
||
|
|
||
|
verify: engine.#Exec & {
|
||
|
input: image.output
|
||
|
mounts: cache: {
|
||
|
dest: "/cache"
|
||
|
contents: sharedCache
|
||
|
}
|
||
|
args: [
|
||
|
"sh", "-c",
|
||
|
#"""
|
||
|
test -f /cache/output.txt
|
||
|
test "$(cat /cache/output.txt)" = "hello world"
|
||
|
"""#,
|
||
|
]
|
||
|
}
|
||
|
|
||
|
otherCache: engine.#CacheDir & {
|
||
|
id: "othercache"
|
||
|
}
|
||
|
verifyOtherCache: engine.#Exec & {
|
||
|
input: image.output
|
||
|
mounts: cache: {
|
||
|
dest: "/cache"
|
||
|
contents: otherCache
|
||
|
}
|
||
|
args: [
|
||
|
"sh", "-c",
|
||
|
#"""
|
||
|
test ! -f /cache/output.txt
|
||
|
"""#,
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
}
|