// OS operations package os import ( "alpha.dagger.io/dagger" "alpha.dagger.io/dagger/op" ) // Built-in file implementation, using buildkit // A single file #File: { from: dagger.#Artifact | *[op.#Mkdir & {dir: "/", path: "/"}] path: string // Optionally write data to the file write: *null | { data: string // FIXME: append // FIXME: create + mode } // The contents of the file // If a write operation is specified, it is applied first. contents: { string #up: [ op.#Load & { "from": from }, if write != null { op.#WriteFile & { dest: path content: write.data } }, op.#Export & { source: path format: "string" }, ] } }