Signed-off-by: Vasek - Tom C <tom.chauveau@epitech.eu>
This commit is contained in:
Vasek - Tom C 2022-02-11 17:31:36 +01:00
parent 73829fd9a7
commit ce4c1f036f
No known key found for this signature in database
GPG Key ID: 175D82E572427960
5 changed files with 44 additions and 28 deletions

View File

@ -32,7 +32,7 @@ dagger.#Plan & {
filename: "hello.sh" filename: "hello.sh"
} }
} }
output: run.export.files."/out.txt".contents & "Hello, world\n" output: run.export.files."/out.txt" & "Hello, world\n"
} }
// Run a script from string // Run a script from string
@ -42,7 +42,7 @@ dagger.#Plan & {
export: files: "/output.txt": _ export: files: "/output.txt": _
script: contents: "echo 'Hello, inlined world!' > /output.txt" script: contents: "echo 'Hello, inlined world!' > /output.txt"
} }
output: run.export.files."/output.txt".contents & "Hello, inlined world!\n" output: run.export.files."/output.txt" & "Hello, inlined world!\n"
} }
} }

View File

@ -84,14 +84,26 @@ import (
export: { export: {
rootfs: dagger.#FS & _exec.output rootfs: dagger.#FS & _exec.output
files: [path=string]: { files: [path=string]: string
_files: {
for path, _ in files {
"\(path)": {
contents: string & _read.contents contents: string & _read.contents
_read: dagger.#ReadFile & { _read: dagger.#ReadFile & {
input: _exec.output input: _exec.output
"path": path "path": path
} }
} }
directories: [path=string]: { }
}
for path, output in _files {
files: "\(path)": output.contents
}
directories: [path=string]: dagger.#FS
_directories: {
for path, _ in directories {
"\(path)": {
contents: dagger.#FS & _subdir.output contents: dagger.#FS & _subdir.output
_subdir: dagger.#Subdir & { _subdir: dagger.#Subdir & {
input: _exec.output input: _exec.output
@ -100,6 +112,11 @@ import (
} }
} }
} }
for path, output in _directories {
directories: "\(path)": output.contents
}
}
}
// For compatibility with #Build // For compatibility with #Build
output: #Image & { output: #Image & {

View File

@ -32,7 +32,8 @@ dagger.#Plan & {
} }
// Test: export a file // Test: export a file
exportFile: docker.#Run & { exportFile: {
run: docker.#Run & {
input: _image input: _image
command: { command: {
name: "sh" name: "sh"
@ -40,9 +41,7 @@ dagger.#Plan & {
echo -n hello world >> /output.txt echo -n hello world >> /output.txt
"""# """#
} }
export: files: "/output.txt": _ & { export: files: "/output.txt": string & "hello world"
// Assert content
contents: "hello world"
} }
} }
@ -61,7 +60,7 @@ dagger.#Plan & {
} }
verify: dagger.#ReadFile & { verify: dagger.#ReadFile & {
input: run.export.directories."/test".contents input: run.export.directories."/test"
path: "/output.txt" path: "/output.txt"
} }
verify: contents: "hello world" verify: contents: "hello world"

View File

@ -99,11 +99,11 @@ import (
} }
// URL of the deployed site // URL of the deployed site
url: container.export.files."/netlify/url".contents url: container.export.files."/netlify/url"
// URL of the latest deployment // URL of the latest deployment
deployUrl: container.export.files."/netlify/deployUrl".contents deployUrl: container.export.files."/netlify/deployUrl"
// URL for logs of the latest deployment // URL for logs of the latest deployment
logsUrl: container.export.files."/netlify/logsUrl".contents logsUrl: container.export.files."/netlify/logsUrl"
} }

View File

@ -116,5 +116,5 @@ import (
} }
// The final contents of the package after build // The final contents of the package after build
output: container.export.directories."/build".contents output: container.export.directories."/build"
} }