Packages
dagger
0.9.10
0.21.7
0.21.6
0.21.5
0.21.4
0.21.3
0.21.2
0.21.1
0.21.0
0.20.8
0.20.7
0.20.6
0.20.5
0.20.4
0.20.3
0.20.2
0.20.1
0.20.0
0.19.11
0.19.10
0.19.9
0.19.8
0.19.7
0.19.6
0.19.5
0.19.4
0.19.3
0.19.2
0.19.1
0.19.0
0.18.19
0.18.18
0.18.17
0.18.16
0.18.15
0.18.14
0.18.13
0.18.12
0.18.11
0.18.10
0.18.9
0.18.8
0.18.7
0.18.5
0.18.4
0.18.3
0.18.2
0.18.1
0.18.0
0.17.2
0.17.1
0.17.0
0.16.3
0.16.2
0.16.1
0.16.0
0.15.4
0.15.3
0.15.2
0.15.1
0.15.0
0.14.0
0.13.7
0.13.6
0.13.5
0.13.4
0.13.3
0.13.2
0.13.1
0.13.0
0.12.7
0.12.6
0.12.5
0.12.4
0.12.3
0.12.2
0.12.1
0.12.0
0.11.9
0.11.8
0.11.7
0.11.6
0.11.5
0.11.4
0.11.3
0.11.2
0.11.1
0.11.0
0.10.3
0.10.2
0.10.1
0.10.0
0.9.11
0.9.10
0.9.9
0.9.8
0.9.7
0.9.6
0.9.5
0.9.4
0.9.3
0.9.2
0.9.1
0.9.0
0.8.8
0.8.7
0.8.6
0.8.5
0.8.4
0.8.2
0.0.0
retired
Dagger SDK for Elixir
Current section
Files
Jump to
Current section
Files
lib/dagger/gen/file.ex
# This file generated by `mix dagger.gen`. Please DO NOT EDIT.
defmodule Dagger.File do
@moduledoc "A file."
use Dagger.Core.QueryBuilder
@type t() :: %__MODULE__{}
@derive Dagger.Sync
defstruct [:selection, :client]
(
@doc "Retrieves the contents of the file."
@spec contents(t()) :: {:ok, Dagger.String.t()} | {:error, term()}
def contents(%__MODULE__{} = file) do
selection = select(file.selection, "contents")
execute(selection, file.client)
end
)
(
@doc "Writes the file to a file path on the host.\n\n## Required Arguments\n\n* `path` - Location of the written directory (e.g., \"output.txt\").\n\n## Optional Arguments\n\n* `allow_parent_dir_path` - If allowParentDirPath is true, the path argument can be a directory path, in which case the file will be created in that directory."
@spec export(t(), Dagger.String.t(), keyword()) ::
{:ok, Dagger.Boolean.t()} | {:error, term()}
def export(%__MODULE__{} = file, path, optional_args \\ []) do
selection = select(file.selection, "export")
selection = arg(selection, "path", path)
selection =
if is_nil(optional_args[:allow_parent_dir_path]) do
selection
else
arg(selection, "allowParentDirPath", optional_args[:allow_parent_dir_path])
end
execute(selection, file.client)
end
)
(
@doc "A unique identifier for this File."
@spec id(t()) :: {:ok, Dagger.FileID.t()} | {:error, term()}
def id(%__MODULE__{} = file) do
selection = select(file.selection, "id")
execute(selection, file.client)
end
)
(
@doc "Retrieves the name of the file."
@spec name(t()) :: {:ok, Dagger.String.t()} | {:error, term()}
def name(%__MODULE__{} = file) do
selection = select(file.selection, "name")
execute(selection, file.client)
end
)
(
@doc "Retrieves the size of the file, in bytes."
@spec size(t()) :: {:ok, Dagger.Int.t()} | {:error, term()}
def size(%__MODULE__{} = file) do
selection = select(file.selection, "size")
execute(selection, file.client)
end
)
(
@doc "Force evaluation in the engine."
@spec sync(t()) :: {:ok, Dagger.FileID.t()} | {:error, term()}
def sync(%__MODULE__{} = file) do
selection = select(file.selection, "sync")
execute(selection, file.client)
end
)
(
@doc "Retrieves this file with its created/modified timestamps set to the given time.\n\n## Required Arguments\n\n* `timestamp` - Timestamp to set dir/files in.\n\nFormatted in seconds following Unix epoch (e.g., 1672531199)."
@spec with_timestamps(t(), Dagger.Int.t()) :: Dagger.File.t()
def with_timestamps(%__MODULE__{} = file, timestamp) do
selection = select(file.selection, "withTimestamps")
selection = arg(selection, "timestamp", timestamp)
%Dagger.File{selection: selection, client: file.client}
end
)
end