Packages
dagger
0.18.17
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/env.ex
# This file generated by `dagger_codegen`. Please DO NOT EDIT.
defmodule Dagger.Env do
@moduledoc """
Dagger.Env
"""
use Dagger.Core.Base, kind: :object, name: "Env"
alias Dagger.Core.Client
alias Dagger.Core.QueryBuilder, as: QB
@derive Dagger.ID
defstruct [:query_builder, :client]
@type t() :: %__MODULE__{}
@doc """
A unique identifier for this Env.
"""
@spec id(t()) :: {:ok, Dagger.EnvID.t()} | {:error, term()}
def id(%__MODULE__{} = env) do
query_builder =
env.query_builder |> QB.select("id")
Client.execute(env.client, query_builder)
end
@doc """
retrieve an input value by name
"""
@spec input(t(), String.t()) :: Dagger.Binding.t()
def input(%__MODULE__{} = env, name) do
query_builder =
env.query_builder |> QB.select("input") |> QB.put_arg("name", name)
%Dagger.Binding{
query_builder: query_builder,
client: env.client
}
end
@doc """
return all input values for the environment
"""
@spec inputs(t()) :: {:ok, [Dagger.Binding.t()]} | {:error, term()}
def inputs(%__MODULE__{} = env) do
query_builder =
env.query_builder |> QB.select("inputs") |> QB.select("id")
with {:ok, items} <- Client.execute(env.client, query_builder) do
{:ok,
for %{"id" => id} <- items do
%Dagger.Binding{
query_builder:
QB.query()
|> QB.select("loadBindingFromID")
|> QB.put_arg("id", id),
client: env.client
}
end}
end
end
@doc """
retrieve an output value by name
"""
@spec output(t(), String.t()) :: Dagger.Binding.t()
def output(%__MODULE__{} = env, name) do
query_builder =
env.query_builder |> QB.select("output") |> QB.put_arg("name", name)
%Dagger.Binding{
query_builder: query_builder,
client: env.client
}
end
@doc """
return all output values for the environment
"""
@spec outputs(t()) :: {:ok, [Dagger.Binding.t()]} | {:error, term()}
def outputs(%__MODULE__{} = env) do
query_builder =
env.query_builder |> QB.select("outputs") |> QB.select("id")
with {:ok, items} <- Client.execute(env.client, query_builder) do
{:ok,
for %{"id" => id} <- items do
%Dagger.Binding{
query_builder:
QB.query()
|> QB.select("loadBindingFromID")
|> QB.put_arg("id", id),
client: env.client
}
end}
end
end
@doc """
Create or update a binding of type CacheVolume in the environment
"""
@spec with_cache_volume_input(t(), String.t(), Dagger.CacheVolume.t(), String.t()) ::
Dagger.Env.t()
def with_cache_volume_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withCacheVolumeInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired CacheVolume output to be assigned in the environment
"""
@spec with_cache_volume_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_cache_volume_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withCacheVolumeOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type Cloud in the environment
"""
@spec with_cloud_input(t(), String.t(), Dagger.Cloud.t(), String.t()) :: Dagger.Env.t()
def with_cloud_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withCloudInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired Cloud output to be assigned in the environment
"""
@spec with_cloud_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_cloud_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withCloudOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type Container in the environment
"""
@spec with_container_input(t(), String.t(), Dagger.Container.t(), String.t()) :: Dagger.Env.t()
def with_container_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withContainerInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired Container output to be assigned in the environment
"""
@spec with_container_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_container_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withContainerOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type Directory in the environment
"""
@spec with_directory_input(t(), String.t(), Dagger.Directory.t(), String.t()) :: Dagger.Env.t()
def with_directory_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withDirectoryInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired Directory output to be assigned in the environment
"""
@spec with_directory_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_directory_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withDirectoryOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type Env in the environment
"""
@spec with_env_input(t(), String.t(), Dagger.Env.t(), String.t()) :: Dagger.Env.t()
def with_env_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withEnvInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired Env output to be assigned in the environment
"""
@spec with_env_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_env_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withEnvOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type File in the environment
"""
@spec with_file_input(t(), String.t(), Dagger.File.t(), String.t()) :: Dagger.Env.t()
def with_file_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withFileInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired File output to be assigned in the environment
"""
@spec with_file_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_file_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withFileOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type GitRef in the environment
"""
@spec with_git_ref_input(t(), String.t(), Dagger.GitRef.t(), String.t()) :: Dagger.Env.t()
def with_git_ref_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withGitRefInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired GitRef output to be assigned in the environment
"""
@spec with_git_ref_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_git_ref_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withGitRefOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type GitRepository in the environment
"""
@spec with_git_repository_input(t(), String.t(), Dagger.GitRepository.t(), String.t()) ::
Dagger.Env.t()
def with_git_repository_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withGitRepositoryInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired GitRepository output to be assigned in the environment
"""
@spec with_git_repository_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_git_repository_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withGitRepositoryOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type JSONValue in the environment
"""
@spec with_json_value_input(t(), String.t(), Dagger.JSONValue.t(), String.t()) :: Dagger.Env.t()
def with_json_value_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withJSONValueInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired JSONValue output to be assigned in the environment
"""
@spec with_json_value_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_json_value_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withJSONValueOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type LLM in the environment
"""
@spec with_llm_input(t(), String.t(), Dagger.LLM.t(), String.t()) :: Dagger.Env.t()
def with_llm_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withLLMInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired LLM output to be assigned in the environment
"""
@spec with_llm_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_llm_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withLLMOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type ModuleConfigClient in the environment
"""
@spec with_module_config_client_input(
t(),
String.t(),
Dagger.ModuleConfigClient.t(),
String.t()
) :: Dagger.Env.t()
def with_module_config_client_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withModuleConfigClientInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired ModuleConfigClient output to be assigned in the environment
"""
@spec with_module_config_client_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_module_config_client_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withModuleConfigClientOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type Module in the environment
"""
@spec with_module_input(t(), String.t(), Dagger.Module.t(), String.t()) :: Dagger.Env.t()
def with_module_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withModuleInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired Module output to be assigned in the environment
"""
@spec with_module_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_module_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withModuleOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type ModuleSource in the environment
"""
@spec with_module_source_input(t(), String.t(), Dagger.ModuleSource.t(), String.t()) ::
Dagger.Env.t()
def with_module_source_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withModuleSourceInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired ModuleSource output to be assigned in the environment
"""
@spec with_module_source_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_module_source_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withModuleSourceOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type SearchResult in the environment
"""
@spec with_search_result_input(t(), String.t(), Dagger.SearchResult.t(), String.t()) ::
Dagger.Env.t()
def with_search_result_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withSearchResultInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired SearchResult output to be assigned in the environment
"""
@spec with_search_result_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_search_result_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withSearchResultOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type SearchSubmatch in the environment
"""
@spec with_search_submatch_input(t(), String.t(), Dagger.SearchSubmatch.t(), String.t()) ::
Dagger.Env.t()
def with_search_submatch_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withSearchSubmatchInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired SearchSubmatch output to be assigned in the environment
"""
@spec with_search_submatch_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_search_submatch_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withSearchSubmatchOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type Secret in the environment
"""
@spec with_secret_input(t(), String.t(), Dagger.Secret.t(), String.t()) :: Dagger.Env.t()
def with_secret_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withSecretInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired Secret output to be assigned in the environment
"""
@spec with_secret_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_secret_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withSecretOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type Service in the environment
"""
@spec with_service_input(t(), String.t(), Dagger.Service.t(), String.t()) :: Dagger.Env.t()
def with_service_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withServiceInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired Service output to be assigned in the environment
"""
@spec with_service_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_service_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withServiceOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update a binding of type Socket in the environment
"""
@spec with_socket_input(t(), String.t(), Dagger.Socket.t(), String.t()) :: Dagger.Env.t()
def with_socket_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withSocketInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", Dagger.ID.id!(value))
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Declare a desired Socket output to be assigned in the environment
"""
@spec with_socket_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_socket_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withSocketOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update an input value of type string
"""
@spec with_string_input(t(), String.t(), String.t(), String.t()) :: Dagger.Env.t()
def with_string_input(%__MODULE__{} = env, name, value, description) do
query_builder =
env.query_builder
|> QB.select("withStringInput")
|> QB.put_arg("name", name)
|> QB.put_arg("value", value)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
@doc """
Create or update an input value of type string
"""
@spec with_string_output(t(), String.t(), String.t()) :: Dagger.Env.t()
def with_string_output(%__MODULE__{} = env, name, description) do
query_builder =
env.query_builder
|> QB.select("withStringOutput")
|> QB.put_arg("name", name)
|> QB.put_arg("description", description)
%Dagger.Env{
query_builder: query_builder,
client: env.client
}
end
end
defimpl Jason.Encoder, for: Dagger.Env do
def encode(env, opts) do
{:ok, id} = Dagger.Env.id(env)
Jason.Encode.string(id, opts)
end
end
defimpl Nestru.Decoder, for: Dagger.Env do
def decode_fields_hint(_struct, _context, id) do
{:ok, Dagger.Client.load_env_from_id(Dagger.Global.dag(), id)}
end
end