-module(dagger@dsl@container). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/dagger/dsl/container.gleam"). -export([none/1, opt_platform/2, args/2, use_entrypoint/2, experimental_privileged_nesting/2, insecure_root_capabilities/2, expand/2, no_init/2, platform_variants/2, forced_compression/2, media_types/2, expected_type/2, do_not_follow_symlinks/2, tag/2, cmd/2, random/2, ports/2, exclude/2, include/2, gitignore/2, owner/2, keep_default_args/2, stdin/2, redirect_stdin/2, redirect_stdout/2, redirect_stderr/2, expect/2, protocol/2, description/2, experimental_skip_healthcheck/2, permissions/2, source/2, sharing/2, mode/2, size/2, container/1, as_service/2, as_tarball/2, combined_output/3, default_args/3, directory/3, entrypoint/3, env_variable/4, env_variables/4, exists/5, exit_code/3, experimental_with_all_g_p_us/1, experimental_with_g_p_u/2, export/5, export_image/5, exposed_ports/4, file/3, from/2, id/1, image_ref/3, import_/3, label/4, labels/4, mounts/3, platform/3, publish/5, rootfs/1, stat/3, stderr/3, stdout/3, sync/1, terminal/2, up/4, user/3, with_annotation/3, with_default_args/2, with_default_terminal_cmd/3, with_directory/4, with_entrypoint/3, with_env_file_variables/2, with_env_variable/4, with_error/2, with_exec/3, with_exposed_port/3, with_file/4, with_files/4, with_label/3, with_mounted_cache/4, with_mounted_directory/4, with_mounted_file/4, with_mounted_secret/4, with_mounted_temp/3, with_new_file/4, with_registry_auth/4, with_rootfs/2, with_secret_variable/3, with_service_binding/3, with_symlink/4, with_unix_socket/4, with_user/2, with_workdir/3, without_annotation/2, without_default_args/1, without_directory/3, without_entrypoint/2, without_env_variable/2, without_exposed_port/3, without_file/3, without_files/3, without_label/2, without_mount/3, without_registry_auth/2, without_secret_variable/2, without_unix_socket/3, without_user/1, without_workdir/1, workdir/3]). -export_type([opts/0]). -if(?OTP_RELEASE >= 27). -define(MODULEDOC(Str), -moduledoc(Str)). -define(DOC(Str), -doc(Str)). -else. -define(MODULEDOC(Str), -compile([])). -define(DOC(Str), -compile([])). -endif. -type opts() :: {opts, gleam@option:option(binary()), gleam@option:option(list(binary())), gleam@option:option(boolean()), gleam@option:option(boolean()), gleam@option:option(boolean()), gleam@option:option(boolean()), gleam@option:option(boolean()), gleam@option:option(list(dagger@dsl@types:container())), gleam@option:option(dagger@dsl@types:image_layer_compression()), gleam@option:option(dagger@dsl@types:image_media_types()), gleam@option:option(dagger@dsl@types:exists_type()), gleam@option:option(boolean()), gleam@option:option(binary()), gleam@option:option(list(binary())), gleam@option:option(boolean()), gleam@option:option(list(dagger@dsl@types:port_forward())), gleam@option:option(list(binary())), gleam@option:option(list(binary())), gleam@option:option(boolean()), gleam@option:option(binary()), gleam@option:option(boolean()), gleam@option:option(binary()), gleam@option:option(binary()), gleam@option:option(binary()), gleam@option:option(binary()), gleam@option:option(dagger@dsl@types:return_type()), gleam@option:option(dagger@dsl@types:network_protocol()), gleam@option:option(binary()), gleam@option:option(boolean()), gleam@option:option(integer()), gleam@option:option(dagger@dsl@types:directory()), gleam@option:option(dagger@dsl@types:cache_sharing_mode()), gleam@option:option(integer()), gleam@option:option(integer())}. -file("src/dagger/dsl/container.gleam", 49). -spec defaults() -> opts(). defaults() -> {opts, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none, none}. -file("src/dagger/dsl/container.gleam", 88). -spec none(opts()) -> opts(). none(Opts) -> Opts. -file("src/dagger/dsl/container.gleam", 92). -spec opt_platform(opts(), binary()) -> opts(). opt_platform(Opts, Val) -> {opts, {some, Val}, erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 96). -spec args(opts(), list(binary())) -> opts(). args(Opts, Val) -> {opts, erlang:element(2, Opts), {some, Val}, erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 100). -spec use_entrypoint(opts(), boolean()) -> opts(). use_entrypoint(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), {some, Val}, erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 104). -spec experimental_privileged_nesting(opts(), boolean()) -> opts(). experimental_privileged_nesting(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), {some, Val}, erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 108). -spec insecure_root_capabilities(opts(), boolean()) -> opts(). insecure_root_capabilities(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), {some, Val}, erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 112). -spec expand(opts(), boolean()) -> opts(). expand(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), {some, Val}, erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 116). -spec no_init(opts(), boolean()) -> opts(). no_init(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), {some, Val}, erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 120). -spec platform_variants(opts(), list(dagger@dsl@types:container())) -> opts(). platform_variants(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), {some, Val}, erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 124). -spec forced_compression(opts(), dagger@dsl@types:image_layer_compression()) -> opts(). forced_compression(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), {some, Val}, erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 128). -spec media_types(opts(), dagger@dsl@types:image_media_types()) -> opts(). media_types(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), {some, Val}, erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 132). -spec expected_type(opts(), dagger@dsl@types:exists_type()) -> opts(). expected_type(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), {some, Val}, erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 136). -spec do_not_follow_symlinks(opts(), boolean()) -> opts(). do_not_follow_symlinks(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), {some, Val}, erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 140). -spec tag(opts(), binary()) -> opts(). tag(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), {some, Val}, erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 144). -spec cmd(opts(), list(binary())) -> opts(). cmd(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), {some, Val}, erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 148). -spec random(opts(), boolean()) -> opts(). random(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), {some, Val}, erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 152). -spec ports(opts(), list(dagger@dsl@types:port_forward())) -> opts(). ports(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), {some, Val}, erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 156). -spec exclude(opts(), list(binary())) -> opts(). exclude(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), {some, Val}, erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 160). -spec include(opts(), list(binary())) -> opts(). include(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), {some, Val}, erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 164). -spec gitignore(opts(), boolean()) -> opts(). gitignore(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), {some, Val}, erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 168). -spec owner(opts(), binary()) -> opts(). owner(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), {some, Val}, erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 172). -spec keep_default_args(opts(), boolean()) -> opts(). keep_default_args(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), {some, Val}, erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 176). -spec stdin(opts(), binary()) -> opts(). stdin(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), {some, Val}, erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 180). -spec redirect_stdin(opts(), binary()) -> opts(). redirect_stdin(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), {some, Val}, erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 184). -spec redirect_stdout(opts(), binary()) -> opts(). redirect_stdout(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), {some, Val}, erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 188). -spec redirect_stderr(opts(), binary()) -> opts(). redirect_stderr(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), {some, Val}, erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 192). -spec expect(opts(), dagger@dsl@types:return_type()) -> opts(). expect(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), {some, Val}, erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 196). -spec protocol(opts(), dagger@dsl@types:network_protocol()) -> opts(). protocol(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), {some, Val}, erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 200). -spec description(opts(), binary()) -> opts(). description(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), {some, Val}, erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 204). -spec experimental_skip_healthcheck(opts(), boolean()) -> opts(). experimental_skip_healthcheck(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), {some, Val}, erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 208). -spec permissions(opts(), integer()) -> opts(). permissions(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), {some, Val}, erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 212). -spec source(opts(), dagger@dsl@types:directory()) -> opts(). source(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), {some, Val}, erlang:element(33, Opts), erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 216). -spec sharing(opts(), dagger@dsl@types:cache_sharing_mode()) -> opts(). sharing(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), {some, Val}, erlang:element(34, Opts), erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 220). -spec mode(opts(), integer()) -> opts(). mode(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), {some, Val}, erlang:element(35, Opts)}. -file("src/dagger/dsl/container.gleam", 224). -spec size(opts(), integer()) -> opts(). size(Opts, Val) -> {opts, erlang:element(2, Opts), erlang:element(3, Opts), erlang:element(4, Opts), erlang:element(5, Opts), erlang:element(6, Opts), erlang:element(7, Opts), erlang:element(8, Opts), erlang:element(9, Opts), erlang:element(10, Opts), erlang:element(11, Opts), erlang:element(12, Opts), erlang:element(13, Opts), erlang:element(14, Opts), erlang:element(15, Opts), erlang:element(16, Opts), erlang:element(17, Opts), erlang:element(18, Opts), erlang:element(19, Opts), erlang:element(20, Opts), erlang:element(21, Opts), erlang:element(22, Opts), erlang:element(23, Opts), erlang:element(24, Opts), erlang:element(25, Opts), erlang:element(26, Opts), erlang:element(27, Opts), erlang:element(28, Opts), erlang:element(29, Opts), erlang:element(30, Opts), erlang:element(31, Opts), erlang:element(32, Opts), erlang:element(33, Opts), erlang:element(34, Opts), {some, Val}}. -file("src/dagger/dsl/container.gleam", 228). -spec encode_container(opts()) -> list({binary(), dagger@types:value()}). encode_container(Opts) -> gleam@list:filter_map([case erlang:element(2, Opts) of {some, Val} -> {ok, {<<"platform"/utf8>>, {g_string, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 237). -spec container(fun((opts()) -> opts())) -> dagger@dsl@types:container(). container(With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"container"/utf8>>, encode_container(Opts), []}, {container, {pure, [Field]}}. -file("src/dagger/dsl/container.gleam", 243). -spec encode_as_service(opts()) -> list({binary(), dagger@types:value()}). encode_as_service(Opts) -> gleam@list:filter_map([case erlang:element(3, Opts) of {some, Val} -> {ok, {<<"args"/utf8>>, {g_list, gleam@list:map(Val, fun(X) -> {g_string, X} end)}}}; none -> {error, nil} end, case erlang:element(4, Opts) of {some, Val@1} -> {ok, {<<"useEntrypoint"/utf8>>, {g_bool, Val@1}}}; none -> {error, nil} end, case erlang:element(5, Opts) of {some, Val@2} -> {ok, {<<"experimentalPrivilegedNesting"/utf8>>, {g_bool, Val@2}}}; none -> {error, nil} end, case erlang:element(6, Opts) of {some, Val@3} -> {ok, {<<"insecureRootCapabilities"/utf8>>, {g_bool, Val@3}}}; none -> {error, nil} end, case erlang:element(7, Opts) of {some, Val@4} -> {ok, {<<"expand"/utf8>>, {g_bool, Val@4}}}; none -> {error, nil} end, case erlang:element(8, Opts) of {some, Val@5} -> {ok, {<<"noInit"/utf8>>, {g_bool, Val@5}}}; none -> {error, nil} end], fun(X@1) -> X@1 end). -file("src/dagger/dsl/container.gleam", 274). ?DOC( " Turn the container into a Service.\n" " Be sure to set any exposed ports before this conversion.\n" ). -spec as_service(dagger@dsl@types:container(), fun((opts()) -> opts())) -> dagger@dsl@types:service(). as_service(Parent, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"asService"/utf8>>, encode_as_service(Opts), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {service, New_op}. -file("src/dagger/dsl/container.gleam", 284). -spec encode_as_tarball(opts()) -> list({binary(), dagger@types:value()}). encode_as_tarball(Opts) -> gleam@list:filter_map([case erlang:element(9, Opts) of {some, Val} -> {ok, {<<"platformVariants"/utf8>>, {g_list, gleam@list:map( Val, fun(X) -> {g_deferred, erlang:element(2, X)} end )}}}; none -> {error, nil} end, case erlang:element(10, Opts) of {some, Val@1} -> {ok, {<<"forcedCompression"/utf8>>, {g_string, dagger@dsl@types:image_layer_compression_to_json( Val@1 )}}}; none -> {error, nil} end, case erlang:element(11, Opts) of {some, Val@2} -> {ok, {<<"mediaTypes"/utf8>>, {g_string, dagger@dsl@types:image_media_types_to_json( Val@2 )}}}; none -> {error, nil} end], fun(X@1) -> X@1 end). -file("src/dagger/dsl/container.gleam", 302). ?DOC(" Package the container state as an OCI image, and return it as a tar archive\n"). -spec as_tarball(dagger@dsl@types:container(), fun((opts()) -> opts())) -> dagger@dsl@types:file(). as_tarball(Parent, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"asTarball"/utf8>>, encode_as_tarball(Opts), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {file, New_op}. -file("src/dagger/dsl/container.gleam", 314). ?DOC( " The combined buffered standard output and standard error stream of the last executed command\n" " Returns an error if no command was executed\n" ). -spec combined_output( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HQJ) ) -> HQJ. combined_output(Parent, Client, Handler) -> Field = {field, <<"combinedOutput"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"combinedOutput"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 335). ?DOC(" Return the container's default arguments.\n"). -spec default_args( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, list(binary())} | {error, dagger@types:query_error()}) -> HQM) ) -> HQM. default_args(Parent, Client, Handler) -> Field = {field, <<"defaultArgs"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, gleam@dynamic@decode:list( {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"defaultArgs"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 355). -spec encode_directory(opts()) -> list({binary(), dagger@types:value()}). encode_directory(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 366). ?DOC( " Retrieve a directory from the container's root filesystem\n" " Mounts are included.\n" ). -spec directory(dagger@dsl@types:container(), binary(), fun((opts()) -> opts())) -> dagger@dsl@types:directory(). directory(Parent, Path, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"directory"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}], encode_directory(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {directory, New_op}. -file("src/dagger/dsl/container.gleam", 377). ?DOC(" Return the container's OCI entrypoint.\n"). -spec entrypoint( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, list(binary())} | {error, dagger@types:query_error()}) -> HQQ) ) -> HQQ. entrypoint(Parent, Client, Handler) -> Field = {field, <<"entrypoint"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, gleam@dynamic@decode:list( {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"entrypoint"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 398). ?DOC(" Retrieves the value of the specified environment variable.\n"). -spec env_variable( dagger@dsl@types:container(), binary(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HQS) ) -> HQS. env_variable(Parent, Name, Client, Handler) -> Field = {field, <<"envVariable"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"envVariable"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 419). ?DOC(" Retrieves the list of environment variables passed to commands.\n"). -spec env_variables( dagger@dsl@types:container(), fun((dagger@dsl@types:env_variable()) -> list(dagger@types:field())), dagger@types:client(), fun(({ok, list(dagger@dsl@types:env_variable())} | {error, dagger@types:query_error()}) -> HQW) ) -> HQW. env_variables(Parent, Select, Client, Handler) -> Subfields = Select({env_variable, {pure, []}}), Field = {field, <<"envVariables"/utf8>>, [], Subfields}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, gleam@dynamic@decode:list( {decoder, fun gleam@dynamic@decode:decode_dynamic/1} ) ) ) of {ok, Items} -> {pure, {ok, gleam@list:map( Items, fun(_) -> {env_variable, {pure, Full_query}} end )}}; {error, _} -> {pure, {error, {decoding_error, <<"envVariables"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 440). -spec encode_exists(opts()) -> list({binary(), dagger@types:value()}). encode_exists(Opts) -> gleam@list:filter_map([case erlang:element(12, Opts) of {some, Val} -> {ok, {<<"expectedType"/utf8>>, {g_string, dagger@dsl@types:exists_type_to_json(Val)}}}; none -> {error, nil} end, case erlang:element(13, Opts) of {some, Val@1} -> {ok, {<<"doNotFollowSymlinks"/utf8>>, {g_bool, Val@1}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 454). ?DOC(" check if a file or directory exists\n"). -spec exists( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()), dagger@types:client(), fun(({ok, boolean()} | {error, dagger@types:query_error()}) -> HQZ) ) -> HQZ. exists(Parent, Path, With_fn, Client, Handler) -> Opts = With_fn(defaults()), Field = {field, <<"exists"/utf8>>, lists:append([{<<"path"/utf8>>, {g_string, Path}}], encode_exists(Opts)), []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path@1 = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path@1, {decoder, fun gleam@dynamic@decode:decode_bool/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"exists"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 477). ?DOC( " The exit code of the last executed command\n" " Returns an error if no command was executed\n" ). -spec exit_code( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, integer()} | {error, dagger@types:query_error()}) -> HRB) ) -> HRB. exit_code(Parent, Client, Handler) -> Field = {field, <<"exitCode"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_int/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"exitCode"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 500). ?DOC( " EXPERIMENTAL API! Subject to change/removal at any time.\n" " Configures all available GPUs on the host to be accessible to this container.\n" " This currently works for Nvidia devices only.\n" ). -spec experimental_with_all_g_p_us(dagger@dsl@types:container()) -> dagger@dsl@types:container(). experimental_with_all_g_p_us(Parent) -> Field = {field, <<"experimentalWithAllGPUs"/utf8>>, [], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 512). ?DOC( " EXPERIMENTAL API! Subject to change/removal at any time.\n" " Configures the provided list of devices to be accessible to this container.\n" " This currently works for Nvidia devices only.\n" ). -spec experimental_with_g_p_u(dagger@dsl@types:container(), list(binary())) -> dagger@dsl@types:container(). experimental_with_g_p_u(Parent, Devices) -> Field = {field, <<"experimentalWithGPU"/utf8>>, [{<<"devices"/utf8>>, {g_list, gleam@list:map(Devices, fun(X) -> {g_string, X} end)}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 521). -spec encode_export(opts()) -> list({binary(), dagger@types:value()}). encode_export(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(9, Opts) of {some, Val@1} -> {ok, {<<"platformVariants"/utf8>>, {g_list, gleam@list:map( Val@1, fun(X) -> {g_deferred, erlang:element(2, X)} end )}}}; none -> {error, nil} end, case erlang:element(10, Opts) of {some, Val@2} -> {ok, {<<"forcedCompression"/utf8>>, {g_string, dagger@dsl@types:image_layer_compression_to_json( Val@2 )}}}; none -> {error, nil} end, case erlang:element(11, Opts) of {some, Val@3} -> {ok, {<<"mediaTypes"/utf8>>, {g_string, dagger@dsl@types:image_media_types_to_json( Val@3 )}}}; none -> {error, nil} end], fun(X@1) -> X@1 end). -file("src/dagger/dsl/container.gleam", 544). ?DOC( " Writes the container as an OCI tarball to the destination file path on the host.\n" " It can also export platform variants.\n" ). -spec export( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HRF) ) -> HRF. export(Parent, Path, With_fn, Client, Handler) -> Opts = With_fn(defaults()), Field = {field, <<"export"/utf8>>, lists:append([{<<"path"/utf8>>, {g_string, Path}}], encode_export(Opts)), []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path@1 = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path@1, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"export"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 565). -spec encode_export_image(opts()) -> list({binary(), dagger@types:value()}). encode_export_image(Opts) -> gleam@list:filter_map([case erlang:element(9, Opts) of {some, Val} -> {ok, {<<"platformVariants"/utf8>>, {g_list, gleam@list:map( Val, fun(X) -> {g_deferred, erlang:element(2, X)} end )}}}; none -> {error, nil} end, case erlang:element(10, Opts) of {some, Val@1} -> {ok, {<<"forcedCompression"/utf8>>, {g_string, dagger@dsl@types:image_layer_compression_to_json( Val@1 )}}}; none -> {error, nil} end, case erlang:element(11, Opts) of {some, Val@2} -> {ok, {<<"mediaTypes"/utf8>>, {g_string, dagger@dsl@types:image_media_types_to_json( Val@2 )}}}; none -> {error, nil} end], fun(X@1) -> X@1 end). -file("src/dagger/dsl/container.gleam", 583). ?DOC(" Exports the container as an image to the host's container image store.\n"). -spec export_image( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()), dagger@types:client(), fun(({ok, nil} | {error, dagger@types:query_error()}) -> HRI) ) -> HRI. export_image(Parent, Name, With_fn, Client, Handler) -> Opts = With_fn(defaults()), Field = {field, <<"exportImage"/utf8>>, lists:append( [{<<"name"/utf8>>, {g_string, Name}}], encode_export_image(Opts) ), []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_dynamic/1} ) ) of {ok, _} -> {pure, {ok, nil}}; {error, _} -> {pure, {error, {decoding_error, <<"exportImage"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 606). ?DOC( " Retrieves the list of exposed ports.\n" " This includes ports already exposed by the image, even if not explicitly added with dagger.\n" ). -spec exposed_ports( dagger@dsl@types:container(), fun((dagger@dsl@types:port_()) -> list(dagger@types:field())), dagger@types:client(), fun(({ok, list(dagger@dsl@types:port_())} | {error, dagger@types:query_error()}) -> HRM) ) -> HRM. exposed_ports(Parent, Select, Client, Handler) -> Subfields = Select({port, {pure, []}}), Field = {field, <<"exposedPorts"/utf8>>, [], Subfields}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, gleam@dynamic@decode:list( {decoder, fun gleam@dynamic@decode:decode_dynamic/1} ) ) ) of {ok, Items} -> {pure, {ok, gleam@list:map( Items, fun(_) -> {port, {pure, Full_query}} end )}}; {error, _} -> {pure, {error, {decoding_error, <<"exposedPorts"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 627). -spec encode_file(opts()) -> list({binary(), dagger@types:value()}). encode_file(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 638). ?DOC( " Retrieves a file at the given path.\n" " Mounts are included.\n" ). -spec file(dagger@dsl@types:container(), binary(), fun((opts()) -> opts())) -> dagger@dsl@types:file(). file(Parent, Path, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"file"/utf8>>, lists:append([{<<"path"/utf8>>, {g_string, Path}}], encode_file(Opts)), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {file, New_op}. -file("src/dagger/dsl/container.gleam", 649). ?DOC(" Download a container image, and apply it to the container state. All previous state will be lost.\n"). -spec from(dagger@dsl@types:container(), binary()) -> dagger@dsl@types:container(). from(Parent, Address) -> Field = {field, <<"from"/utf8>>, [{<<"address"/utf8>>, {g_string, Address}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 659). ?DOC(" A unique identifier for this Container.\n"). -spec id(dagger@dsl@types:container()) -> dagger@dsl@types:container(). id(Parent) -> Field = {field, <<"id"/utf8>>, [], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 669). ?DOC(" The unique image reference which can only be retrieved immediately after the 'Container.From' call.\n"). -spec image_ref( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HRP) ) -> HRP. image_ref(Parent, Client, Handler) -> Field = {field, <<"imageRef"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"imageRef"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 689). -spec encode_import_(opts()) -> list({binary(), dagger@types:value()}). encode_import_(Opts) -> gleam@list:filter_map([case erlang:element(14, Opts) of {some, Val} -> {ok, {<<"tag"/utf8>>, {g_string, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 699). ?DOC(" Reads the container from an OCI tarball.\n"). -spec import_( dagger@dsl@types:container(), dagger@dsl@types:file(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). import_(Parent, Source, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"import"/utf8>>, lists:append( [{<<"source"/utf8>>, {g_deferred, erlang:element(2, Source)}}], encode_import_(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 710). ?DOC(" Retrieves the value of the specified label.\n"). -spec label( dagger@dsl@types:container(), binary(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HRS) ) -> HRS. label(Parent, Name, Client, Handler) -> Field = {field, <<"label"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"label"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 731). ?DOC(" Retrieves the list of labels passed to container.\n"). -spec labels( dagger@dsl@types:container(), fun((dagger@dsl@types:label()) -> list(dagger@types:field())), dagger@types:client(), fun(({ok, list(dagger@dsl@types:label())} | {error, dagger@types:query_error()}) -> HRW) ) -> HRW. labels(Parent, Select, Client, Handler) -> Subfields = Select({label, {pure, []}}), Field = {field, <<"labels"/utf8>>, [], Subfields}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, gleam@dynamic@decode:list( {decoder, fun gleam@dynamic@decode:decode_dynamic/1} ) ) ) of {ok, Items} -> {pure, {ok, gleam@list:map( Items, fun(_) -> {label, {pure, Full_query}} end )}}; {error, _} -> {pure, {error, {decoding_error, <<"labels"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 753). ?DOC(" Retrieves the list of paths where a directory is mounted.\n"). -spec mounts( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, list(binary())} | {error, dagger@types:query_error()}) -> HRZ) ) -> HRZ. mounts(Parent, Client, Handler) -> Field = {field, <<"mounts"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, gleam@dynamic@decode:list( {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"mounts"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 774). ?DOC(" The platform this container executes and publishes as.\n"). -spec platform( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HSB) ) -> HSB. platform(Parent, Client, Handler) -> Field = {field, <<"platform"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"platform"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 794). -spec encode_publish(opts()) -> list({binary(), dagger@types:value()}). encode_publish(Opts) -> gleam@list:filter_map([case erlang:element(9, Opts) of {some, Val} -> {ok, {<<"platformVariants"/utf8>>, {g_list, gleam@list:map( Val, fun(X) -> {g_deferred, erlang:element(2, X)} end )}}}; none -> {error, nil} end, case erlang:element(10, Opts) of {some, Val@1} -> {ok, {<<"forcedCompression"/utf8>>, {g_string, dagger@dsl@types:image_layer_compression_to_json( Val@1 )}}}; none -> {error, nil} end, case erlang:element(11, Opts) of {some, Val@2} -> {ok, {<<"mediaTypes"/utf8>>, {g_string, dagger@dsl@types:image_media_types_to_json( Val@2 )}}}; none -> {error, nil} end], fun(X@1) -> X@1 end). -file("src/dagger/dsl/container.gleam", 813). ?DOC( " Package the container state as an OCI image, and publish it to a registry\n" " Returns the fully qualified address of the published image, with digest\n" ). -spec publish( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HSE) ) -> HSE. publish(Parent, Address, With_fn, Client, Handler) -> Opts = With_fn(defaults()), Field = {field, <<"publish"/utf8>>, lists:append( [{<<"address"/utf8>>, {g_string, Address}}], encode_publish(Opts) ), []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"publish"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 835). ?DOC(" Return a snapshot of the container's root filesystem. The snapshot can be modified then written back using withRootfs. Use that method for filesystem modifications.\n"). -spec rootfs(dagger@dsl@types:container()) -> dagger@dsl@types:directory(). rootfs(Parent) -> Field = {field, <<"rootfs"/utf8>>, [], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {directory, New_op}. -file("src/dagger/dsl/container.gleam", 844). -spec encode_stat(opts()) -> list({binary(), dagger@types:value()}). encode_stat(Opts) -> gleam@list:filter_map([case erlang:element(13, Opts) of {some, Val} -> {ok, {<<"doNotFollowSymlinks"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 854). ?DOC(" Return file status\n"). -spec stat(dagger@dsl@types:container(), binary(), fun((opts()) -> opts())) -> dagger@dsl@types:stat(). stat(Parent, Path, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"stat"/utf8>>, lists:append([{<<"path"/utf8>>, {g_string, Path}}], encode_stat(Opts)), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {stat, New_op}. -file("src/dagger/dsl/container.gleam", 866). ?DOC( " The buffered standard error stream of the last executed command\n" " Returns an error if no command was executed\n" ). -spec stderr( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HSH) ) -> HSH. stderr(Parent, Client, Handler) -> Field = {field, <<"stderr"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"stderr"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 888). ?DOC( " The buffered standard output stream of the last executed command\n" " Returns an error if no command was executed\n" ). -spec stdout( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HSJ) ) -> HSJ. stdout(Parent, Client, Handler) -> Field = {field, <<"stdout"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"stdout"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 910). ?DOC( " Forces evaluation of the pipeline in the engine.\n" " It doesn't run the default command if no exec has been set.\n" ). -spec sync(dagger@dsl@types:container()) -> dagger@dsl@types:container(). sync(Parent) -> Field = {field, <<"sync"/utf8>>, [], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 919). -spec encode_terminal(opts()) -> list({binary(), dagger@types:value()}). encode_terminal(Opts) -> gleam@list:filter_map([case erlang:element(5, Opts) of {some, Val} -> {ok, {<<"experimentalPrivilegedNesting"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(6, Opts) of {some, Val@1} -> {ok, {<<"insecureRootCapabilities"/utf8>>, {g_bool, Val@1}}}; none -> {error, nil} end, case erlang:element(15, Opts) of {some, Val@2} -> {ok, {<<"cmd"/utf8>>, {g_list, gleam@list:map( Val@2, fun(X) -> {g_string, X} end )}}}; none -> {error, nil} end], fun(X@1) -> X@1 end). -file("src/dagger/dsl/container.gleam", 937). ?DOC(" Opens an interactive terminal for this container using its configured default terminal command if not overridden by args (or sh as a fallback default).\n"). -spec terminal(dagger@dsl@types:container(), fun((opts()) -> opts())) -> dagger@dsl@types:container(). terminal(Parent, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"terminal"/utf8>>, encode_terminal(Opts), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 947). -spec encode_up(opts()) -> list({binary(), dagger@types:value()}). encode_up(Opts) -> gleam@list:filter_map([case erlang:element(3, Opts) of {some, Val} -> {ok, {<<"args"/utf8>>, {g_list, gleam@list:map(Val, fun(X) -> {g_string, X} end)}}}; none -> {error, nil} end, case erlang:element(4, Opts) of {some, Val@1} -> {ok, {<<"useEntrypoint"/utf8>>, {g_bool, Val@1}}}; none -> {error, nil} end, case erlang:element(5, Opts) of {some, Val@2} -> {ok, {<<"experimentalPrivilegedNesting"/utf8>>, {g_bool, Val@2}}}; none -> {error, nil} end, case erlang:element(6, Opts) of {some, Val@3} -> {ok, {<<"insecureRootCapabilities"/utf8>>, {g_bool, Val@3}}}; none -> {error, nil} end, case erlang:element(7, Opts) of {some, Val@4} -> {ok, {<<"expand"/utf8>>, {g_bool, Val@4}}}; none -> {error, nil} end, case erlang:element(8, Opts) of {some, Val@5} -> {ok, {<<"noInit"/utf8>>, {g_bool, Val@5}}}; none -> {error, nil} end, case erlang:element(16, Opts) of {some, Val@6} -> {ok, {<<"random"/utf8>>, {g_bool, Val@6}}}; none -> {error, nil} end, case erlang:element(17, Opts) of {some, Val@7} -> {ok, {<<"ports"/utf8>>, {g_list, gleam@list:map( Val@7, fun(X@1) -> {g_object, dagger@dsl@types:port_forward_to_json( X@1 )} end )}}}; none -> {error, nil} end], fun(X@2) -> X@2 end). -file("src/dagger/dsl/container.gleam", 986). ?DOC( " Starts a Service and creates a tunnel that forwards traffic from the caller's network to that service.\n" " Be sure to set any exposed ports before calling this api.\n" ). -spec up( dagger@dsl@types:container(), fun((opts()) -> opts()), dagger@types:client(), fun(({ok, nil} | {error, dagger@types:query_error()}) -> HSN) ) -> HSN. up(Parent, With_fn, Client, Handler) -> Opts = With_fn(defaults()), Field = {field, <<"up"/utf8>>, encode_up(Opts), []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_dynamic/1} ) ) of {ok, _} -> {pure, {ok, nil}}; {error, _} -> {pure, {error, {decoding_error, <<"up"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 1008). ?DOC(" Retrieves the user to be set for all commands.\n"). -spec user( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HSP) ) -> HSP. user(Parent, Client, Handler) -> Field = {field, <<"user"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"user"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)). -file("src/dagger/dsl/container.gleam", 1029). ?DOC(" Retrieves this container plus the given OCI annotation.\n"). -spec with_annotation(dagger@dsl@types:container(), binary(), binary()) -> dagger@dsl@types:container(). with_annotation(Parent, Name, Value) -> Field = {field, <<"withAnnotation"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}, {<<"value"/utf8>>, {g_string, Value}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1039). ?DOC(" Configures default arguments for future commands. Like CMD in Dockerfile.\n"). -spec with_default_args(dagger@dsl@types:container(), list(binary())) -> dagger@dsl@types:container(). with_default_args(Parent, Args) -> Field = {field, <<"withDefaultArgs"/utf8>>, [{<<"args"/utf8>>, {g_list, gleam@list:map(Args, fun(X) -> {g_string, X} end)}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1048). -spec encode_with_default_terminal_cmd(opts()) -> list({binary(), dagger@types:value()}). encode_with_default_terminal_cmd(Opts) -> gleam@list:filter_map([case erlang:element(5, Opts) of {some, Val} -> {ok, {<<"experimentalPrivilegedNesting"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(6, Opts) of {some, Val@1} -> {ok, {<<"insecureRootCapabilities"/utf8>>, {g_bool, Val@1}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1062). ?DOC(" Set the default command to invoke for the container's terminal API.\n"). -spec with_default_terminal_cmd( dagger@dsl@types:container(), list(binary()), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_default_terminal_cmd(Parent, Args, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withDefaultTerminalCmd"/utf8>>, lists:append( [{<<"args"/utf8>>, {g_list, gleam@list:map(Args, fun(X) -> {g_string, X} end)}}], encode_with_default_terminal_cmd(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1072). -spec encode_with_directory(opts()) -> list({binary(), dagger@types:value()}). encode_with_directory(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(18, Opts) of {some, Val@1} -> {ok, {<<"exclude"/utf8>>, {g_list, gleam@list:map( Val@1, fun(X) -> {g_string, X} end )}}}; none -> {error, nil} end, case erlang:element(19, Opts) of {some, Val@2} -> {ok, {<<"include"/utf8>>, {g_list, gleam@list:map( Val@2, fun(X@1) -> {g_string, X@1} end )}}}; none -> {error, nil} end, case erlang:element(20, Opts) of {some, Val@3} -> {ok, {<<"gitignore"/utf8>>, {g_bool, Val@3}}}; none -> {error, nil} end, case erlang:element(21, Opts) of {some, Val@4} -> {ok, {<<"owner"/utf8>>, {g_string, Val@4}}}; none -> {error, nil} end], fun(X@2) -> X@2 end). -file("src/dagger/dsl/container.gleam", 1098). ?DOC(" Return a new container snapshot, with a directory added to its filesystem\n"). -spec with_directory( dagger@dsl@types:container(), binary(), dagger@dsl@types:directory(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_directory(Parent, Path, Source, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withDirectory"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}, {<<"source"/utf8>>, {g_deferred, erlang:element(2, Source)}}], encode_with_directory(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1108). -spec encode_with_entrypoint(opts()) -> list({binary(), dagger@types:value()}). encode_with_entrypoint(Opts) -> gleam@list:filter_map([case erlang:element(22, Opts) of {some, Val} -> {ok, {<<"keepDefaultArgs"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1118). ?DOC(" Set an OCI-style entrypoint. It will be included in the container's OCI configuration. Note, withExec ignores the entrypoint by default.\n"). -spec with_entrypoint( dagger@dsl@types:container(), list(binary()), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_entrypoint(Parent, Args, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withEntrypoint"/utf8>>, lists:append( [{<<"args"/utf8>>, {g_list, gleam@list:map(Args, fun(X) -> {g_string, X} end)}}], encode_with_entrypoint(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1129). ?DOC(" Export environment variables from an env-file to the container.\n"). -spec with_env_file_variables( dagger@dsl@types:container(), dagger@dsl@types:env_file() ) -> dagger@dsl@types:container(). with_env_file_variables(Parent, Source) -> Field = {field, <<"withEnvFileVariables"/utf8>>, [{<<"source"/utf8>>, {g_deferred, erlang:element(2, Source)}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1138). -spec encode_with_env_variable(opts()) -> list({binary(), dagger@types:value()}). encode_with_env_variable(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1148). ?DOC(" Set a new environment variable in the container.\n"). -spec with_env_variable( dagger@dsl@types:container(), binary(), binary(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_env_variable(Parent, Name, Value, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withEnvVariable"/utf8>>, lists:append( [{<<"name"/utf8>>, {g_string, Name}}, {<<"value"/utf8>>, {g_string, Value}}], encode_with_env_variable(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1159). ?DOC(" Raise an error.\n"). -spec with_error(dagger@dsl@types:container(), binary()) -> dagger@dsl@types:container(). with_error(Parent, Err) -> Field = {field, <<"withError"/utf8>>, [{<<"err"/utf8>>, {g_string, Err}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1168). -spec encode_with_exec(opts()) -> list({binary(), dagger@types:value()}). encode_with_exec(Opts) -> gleam@list:filter_map([case erlang:element(4, Opts) of {some, Val} -> {ok, {<<"useEntrypoint"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(5, Opts) of {some, Val@1} -> {ok, {<<"experimentalPrivilegedNesting"/utf8>>, {g_bool, Val@1}}}; none -> {error, nil} end, case erlang:element(6, Opts) of {some, Val@2} -> {ok, {<<"insecureRootCapabilities"/utf8>>, {g_bool, Val@2}}}; none -> {error, nil} end, case erlang:element(7, Opts) of {some, Val@3} -> {ok, {<<"expand"/utf8>>, {g_bool, Val@3}}}; none -> {error, nil} end, case erlang:element(8, Opts) of {some, Val@4} -> {ok, {<<"noInit"/utf8>>, {g_bool, Val@4}}}; none -> {error, nil} end, case erlang:element(23, Opts) of {some, Val@5} -> {ok, {<<"stdin"/utf8>>, {g_string, Val@5}}}; none -> {error, nil} end, case erlang:element(24, Opts) of {some, Val@6} -> {ok, {<<"redirectStdin"/utf8>>, {g_string, Val@6}}}; none -> {error, nil} end, case erlang:element(25, Opts) of {some, Val@7} -> {ok, {<<"redirectStdout"/utf8>>, {g_string, Val@7}}}; none -> {error, nil} end, case erlang:element(26, Opts) of {some, Val@8} -> {ok, {<<"redirectStderr"/utf8>>, {g_string, Val@8}}}; none -> {error, nil} end, case erlang:element(27, Opts) of {some, Val@9} -> {ok, {<<"expect"/utf8>>, {g_string, dagger@dsl@types:return_type_to_json(Val@9)}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1214). ?DOC(" Execute a command in the container, and return a new snapshot of the container state after execution.\n"). -spec with_exec( dagger@dsl@types:container(), list(binary()), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_exec(Parent, Args, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withExec"/utf8>>, lists:append( [{<<"args"/utf8>>, {g_list, gleam@list:map(Args, fun(X) -> {g_string, X} end)}}], encode_with_exec(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1224). -spec encode_with_exposed_port(opts()) -> list({binary(), dagger@types:value()}). encode_with_exposed_port(Opts) -> gleam@list:filter_map([case erlang:element(28, Opts) of {some, Val} -> {ok, {<<"protocol"/utf8>>, {g_string, dagger@dsl@types:network_protocol_to_json(Val)}}}; none -> {error, nil} end, case erlang:element(29, Opts) of {some, Val@1} -> {ok, {<<"description"/utf8>>, {g_string, Val@1}}}; none -> {error, nil} end, case erlang:element(30, Opts) of {some, Val@2} -> {ok, {<<"experimentalSkipHealthcheck"/utf8>>, {g_bool, Val@2}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1245). ?DOC( " Expose a network port. Like EXPOSE in Dockerfile (but with healthcheck support)\n" " Exposed ports serve two purposes:\n" " - For health checks and introspection, when running services\n" " - For setting the EXPOSE OCI field when publishing the container\n" ). -spec with_exposed_port( dagger@dsl@types:container(), integer(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_exposed_port(Parent, Port, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withExposedPort"/utf8>>, lists:append( [{<<"port"/utf8>>, {g_int, Port}}], encode_with_exposed_port(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1255). -spec encode_with_file(opts()) -> list({binary(), dagger@types:value()}). encode_with_file(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(21, Opts) of {some, Val@1} -> {ok, {<<"owner"/utf8>>, {g_string, Val@1}}}; none -> {error, nil} end, case erlang:element(31, Opts) of {some, Val@2} -> {ok, {<<"permissions"/utf8>>, {g_int, Val@2}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1273). ?DOC(" Return a container snapshot with a file added\n"). -spec with_file( dagger@dsl@types:container(), binary(), dagger@dsl@types:file(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_file(Parent, Path, Source, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withFile"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}, {<<"source"/utf8>>, {g_deferred, erlang:element(2, Source)}}], encode_with_file(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1283). -spec encode_with_files(opts()) -> list({binary(), dagger@types:value()}). encode_with_files(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(21, Opts) of {some, Val@1} -> {ok, {<<"owner"/utf8>>, {g_string, Val@1}}}; none -> {error, nil} end, case erlang:element(31, Opts) of {some, Val@2} -> {ok, {<<"permissions"/utf8>>, {g_int, Val@2}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1301). ?DOC(" Retrieves this container plus the contents of the given files copied to the given path.\n"). -spec with_files( dagger@dsl@types:container(), binary(), list(dagger@dsl@types:file()), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_files(Parent, Path, Sources, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withFiles"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}, {<<"sources"/utf8>>, {g_list, gleam@list:map( Sources, fun(X) -> {g_deferred, erlang:element(2, X)} end )}}], encode_with_files(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1312). ?DOC(" Retrieves this container plus the given label.\n"). -spec with_label(dagger@dsl@types:container(), binary(), binary()) -> dagger@dsl@types:container(). with_label(Parent, Name, Value) -> Field = {field, <<"withLabel"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}, {<<"value"/utf8>>, {g_string, Value}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1321). -spec encode_with_mounted_cache(opts()) -> list({binary(), dagger@types:value()}). encode_with_mounted_cache(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(21, Opts) of {some, Val@1} -> {ok, {<<"owner"/utf8>>, {g_string, Val@1}}}; none -> {error, nil} end, case erlang:element(32, Opts) of {some, Val@2} -> {ok, {<<"source"/utf8>>, {g_deferred, erlang:element(2, Val@2)}}}; none -> {error, nil} end, case erlang:element(33, Opts) of {some, Val@3} -> {ok, {<<"sharing"/utf8>>, {g_string, dagger@dsl@types:cache_sharing_mode_to_json( Val@3 )}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1343). ?DOC(" Retrieves this container plus a cache volume mounted at the given path.\n"). -spec with_mounted_cache( dagger@dsl@types:container(), binary(), dagger@dsl@types:cache_volume(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_mounted_cache(Parent, Path, Cache, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withMountedCache"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}, {<<"cache"/utf8>>, {g_deferred, erlang:element(2, Cache)}}], encode_with_mounted_cache(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1353). -spec encode_with_mounted_directory(opts()) -> list({binary(), dagger@types:value()}). encode_with_mounted_directory(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(21, Opts) of {some, Val@1} -> {ok, {<<"owner"/utf8>>, {g_string, Val@1}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1367). ?DOC(" Retrieves this container plus a directory mounted at the given path.\n"). -spec with_mounted_directory( dagger@dsl@types:container(), binary(), dagger@dsl@types:directory(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_mounted_directory(Parent, Path, Source, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withMountedDirectory"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}, {<<"source"/utf8>>, {g_deferred, erlang:element(2, Source)}}], encode_with_mounted_directory(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1377). -spec encode_with_mounted_file(opts()) -> list({binary(), dagger@types:value()}). encode_with_mounted_file(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(21, Opts) of {some, Val@1} -> {ok, {<<"owner"/utf8>>, {g_string, Val@1}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1391). ?DOC(" Retrieves this container plus a file mounted at the given path.\n"). -spec with_mounted_file( dagger@dsl@types:container(), binary(), dagger@dsl@types:file(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_mounted_file(Parent, Path, Source, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withMountedFile"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}, {<<"source"/utf8>>, {g_deferred, erlang:element(2, Source)}}], encode_with_mounted_file(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1401). -spec encode_with_mounted_secret(opts()) -> list({binary(), dagger@types:value()}). encode_with_mounted_secret(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(21, Opts) of {some, Val@1} -> {ok, {<<"owner"/utf8>>, {g_string, Val@1}}}; none -> {error, nil} end, case erlang:element(34, Opts) of {some, Val@2} -> {ok, {<<"mode"/utf8>>, {g_int, Val@2}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1419). ?DOC(" Retrieves this container plus a secret mounted into a file at the given path.\n"). -spec with_mounted_secret( dagger@dsl@types:container(), binary(), dagger@dsl@types:secret(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_mounted_secret(Parent, Path, Source, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withMountedSecret"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}, {<<"source"/utf8>>, {g_deferred, erlang:element(2, Source)}}], encode_with_mounted_secret(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1429). -spec encode_with_mounted_temp(opts()) -> list({binary(), dagger@types:value()}). encode_with_mounted_temp(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(35, Opts) of {some, Val@1} -> {ok, {<<"size"/utf8>>, {g_int, Val@1}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1443). ?DOC(" Retrieves this container plus a temporary directory mounted at the given path. Any writes will be ephemeral to a single withExec call; they will not be persisted to subsequent withExecs.\n"). -spec with_mounted_temp( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_mounted_temp(Parent, Path, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withMountedTemp"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}], encode_with_mounted_temp(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1453). -spec encode_with_new_file(opts()) -> list({binary(), dagger@types:value()}). encode_with_new_file(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(21, Opts) of {some, Val@1} -> {ok, {<<"owner"/utf8>>, {g_string, Val@1}}}; none -> {error, nil} end, case erlang:element(31, Opts) of {some, Val@2} -> {ok, {<<"permissions"/utf8>>, {g_int, Val@2}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1471). ?DOC(" Return a new container snapshot, with a file added to its filesystem with text content\n"). -spec with_new_file( dagger@dsl@types:container(), binary(), binary(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_new_file(Parent, Path, Contents, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withNewFile"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}, {<<"contents"/utf8>>, {g_string, Contents}}], encode_with_new_file(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1482). ?DOC(" Attach credentials for future publishing to a registry. Use in combination with publish\n"). -spec with_registry_auth( dagger@dsl@types:container(), binary(), binary(), dagger@dsl@types:secret() ) -> dagger@dsl@types:container(). with_registry_auth(Parent, Address, Username, Secret) -> Field = {field, <<"withRegistryAuth"/utf8>>, [{<<"address"/utf8>>, {g_string, Address}}, {<<"username"/utf8>>, {g_string, Username}}, {<<"secret"/utf8>>, {g_deferred, erlang:element(2, Secret)}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1492). ?DOC(" Change the container's root filesystem. The previous root filesystem will be lost.\n"). -spec with_rootfs(dagger@dsl@types:container(), dagger@dsl@types:directory()) -> dagger@dsl@types:container(). with_rootfs(Parent, Directory) -> Field = {field, <<"withRootfs"/utf8>>, [{<<"directory"/utf8>>, {g_deferred, erlang:element(2, Directory)}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1502). ?DOC(" Set a new environment variable, using a secret value\n"). -spec with_secret_variable( dagger@dsl@types:container(), binary(), dagger@dsl@types:secret() ) -> dagger@dsl@types:container(). with_secret_variable(Parent, Name, Secret) -> Field = {field, <<"withSecretVariable"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}, {<<"secret"/utf8>>, {g_deferred, erlang:element(2, Secret)}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1515). ?DOC( " Establish a runtime dependency from a container to a network service.\n" " The service will be started automatically when needed and detached when it is no longer needed, executing the default command if none is set.\n" " The service will be reachable from the container via the provided hostname alias.\n" " The service dependency will also convey to any files or directories produced by the container.\n" ). -spec with_service_binding( dagger@dsl@types:container(), binary(), dagger@dsl@types:service() ) -> dagger@dsl@types:container(). with_service_binding(Parent, Alias, Service) -> Field = {field, <<"withServiceBinding"/utf8>>, [{<<"alias"/utf8>>, {g_string, Alias}}, {<<"service"/utf8>>, {g_deferred, erlang:element(2, Service)}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1524). -spec encode_with_symlink(opts()) -> list({binary(), dagger@types:value()}). encode_with_symlink(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1534). ?DOC(" Return a snapshot with a symlink\n"). -spec with_symlink( dagger@dsl@types:container(), binary(), binary(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_symlink(Parent, Target, Link_name, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withSymlink"/utf8>>, lists:append( [{<<"target"/utf8>>, {g_string, Target}}, {<<"linkName"/utf8>>, {g_string, Link_name}}], encode_with_symlink(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1544). -spec encode_with_unix_socket(opts()) -> list({binary(), dagger@types:value()}). encode_with_unix_socket(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end, case erlang:element(21, Opts) of {some, Val@1} -> {ok, {<<"owner"/utf8>>, {g_string, Val@1}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1558). ?DOC(" Retrieves this container plus a socket forwarded to the given Unix socket path.\n"). -spec with_unix_socket( dagger@dsl@types:container(), binary(), dagger@dsl@types:socket(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_unix_socket(Parent, Path, Source, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withUnixSocket"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}, {<<"source"/utf8>>, {g_deferred, erlang:element(2, Source)}}], encode_with_unix_socket(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1569). ?DOC(" Retrieves this container with a different command user.\n"). -spec with_user(dagger@dsl@types:container(), binary()) -> dagger@dsl@types:container(). with_user(Parent, Name) -> Field = {field, <<"withUser"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1578). -spec encode_with_workdir(opts()) -> list({binary(), dagger@types:value()}). encode_with_workdir(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1588). ?DOC(" Change the container's working directory. Like WORKDIR in Dockerfile.\n"). -spec with_workdir( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). with_workdir(Parent, Path, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withWorkdir"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}], encode_with_workdir(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1599). ?DOC(" Retrieves this container minus the given OCI annotation.\n"). -spec without_annotation(dagger@dsl@types:container(), binary()) -> dagger@dsl@types:container(). without_annotation(Parent, Name) -> Field = {field, <<"withoutAnnotation"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1609). ?DOC(" Remove the container's default arguments.\n"). -spec without_default_args(dagger@dsl@types:container()) -> dagger@dsl@types:container(). without_default_args(Parent) -> Field = {field, <<"withoutDefaultArgs"/utf8>>, [], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1618). -spec encode_without_directory(opts()) -> list({binary(), dagger@types:value()}). encode_without_directory(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1628). ?DOC(" Return a new container snapshot, with a directory removed from its filesystem\n"). -spec without_directory( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). without_directory(Parent, Path, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withoutDirectory"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}], encode_without_directory(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1638). -spec encode_without_entrypoint(opts()) -> list({binary(), dagger@types:value()}). encode_without_entrypoint(Opts) -> gleam@list:filter_map([case erlang:element(22, Opts) of {some, Val} -> {ok, {<<"keepDefaultArgs"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1648). ?DOC(" Reset the container's OCI entrypoint.\n"). -spec without_entrypoint(dagger@dsl@types:container(), fun((opts()) -> opts())) -> dagger@dsl@types:container(). without_entrypoint(Parent, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withoutEntrypoint"/utf8>>, encode_without_entrypoint(Opts), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1659). ?DOC(" Retrieves this container minus the given environment variable.\n"). -spec without_env_variable(dagger@dsl@types:container(), binary()) -> dagger@dsl@types:container(). without_env_variable(Parent, Name) -> Field = {field, <<"withoutEnvVariable"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1668). -spec encode_without_exposed_port(opts()) -> list({binary(), dagger@types:value()}). encode_without_exposed_port(Opts) -> gleam@list:filter_map([case erlang:element(28, Opts) of {some, Val} -> {ok, {<<"protocol"/utf8>>, {g_string, dagger@dsl@types:network_protocol_to_json(Val)}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1678). ?DOC(" Unexpose a previously exposed port.\n"). -spec without_exposed_port( dagger@dsl@types:container(), integer(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). without_exposed_port(Parent, Port, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withoutExposedPort"/utf8>>, lists:append( [{<<"port"/utf8>>, {g_int, Port}}], encode_without_exposed_port(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1688). -spec encode_without_file(opts()) -> list({binary(), dagger@types:value()}). encode_without_file(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1698). ?DOC(" Retrieves this container with the file at the given path removed.\n"). -spec without_file( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). without_file(Parent, Path, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withoutFile"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}], encode_without_file(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1708). -spec encode_without_files(opts()) -> list({binary(), dagger@types:value()}). encode_without_files(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1718). ?DOC(" Return a new container spanshot with specified files removed\n"). -spec without_files( dagger@dsl@types:container(), list(binary()), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). without_files(Parent, Paths, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withoutFiles"/utf8>>, lists:append( [{<<"paths"/utf8>>, {g_list, gleam@list:map(Paths, fun(X) -> {g_string, X} end)}}], encode_without_files(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1729). ?DOC(" Retrieves this container minus the given environment label.\n"). -spec without_label(dagger@dsl@types:container(), binary()) -> dagger@dsl@types:container(). without_label(Parent, Name) -> Field = {field, <<"withoutLabel"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1738). -spec encode_without_mount(opts()) -> list({binary(), dagger@types:value()}). encode_without_mount(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1748). ?DOC(" Retrieves this container after unmounting everything at the given path.\n"). -spec without_mount( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). without_mount(Parent, Path, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withoutMount"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}], encode_without_mount(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1759). ?DOC(" Retrieves this container without the registry authentication of a given address.\n"). -spec without_registry_auth(dagger@dsl@types:container(), binary()) -> dagger@dsl@types:container(). without_registry_auth(Parent, Address) -> Field = {field, <<"withoutRegistryAuth"/utf8>>, [{<<"address"/utf8>>, {g_string, Address}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1769). ?DOC(" Retrieves this container minus the given environment variable containing the secret.\n"). -spec without_secret_variable(dagger@dsl@types:container(), binary()) -> dagger@dsl@types:container(). without_secret_variable(Parent, Name) -> Field = {field, <<"withoutSecretVariable"/utf8>>, [{<<"name"/utf8>>, {g_string, Name}}], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1778). -spec encode_without_unix_socket(opts()) -> list({binary(), dagger@types:value()}). encode_without_unix_socket(Opts) -> gleam@list:filter_map([case erlang:element(7, Opts) of {some, Val} -> {ok, {<<"expand"/utf8>>, {g_bool, Val}}}; none -> {error, nil} end], fun(X) -> X end). -file("src/dagger/dsl/container.gleam", 1788). ?DOC(" Retrieves this container with a previously added Unix socket removed.\n"). -spec without_unix_socket( dagger@dsl@types:container(), binary(), fun((opts()) -> opts()) ) -> dagger@dsl@types:container(). without_unix_socket(Parent, Path, With_fn) -> Opts = With_fn(defaults()), Field = {field, <<"withoutUnixSocket"/utf8>>, lists:append( [{<<"path"/utf8>>, {g_string, Path}}], encode_without_unix_socket(Opts) ), []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1800). ?DOC( " Retrieves this container with an unset command user.\n" " Should default to root.\n" ). -spec without_user(dagger@dsl@types:container()) -> dagger@dsl@types:container(). without_user(Parent) -> Field = {field, <<"withoutUser"/utf8>>, [], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1811). ?DOC( " Unset the container's working directory.\n" " Should default to \"/\".\n" ). -spec without_workdir(dagger@dsl@types:container()) -> dagger@dsl@types:container(). without_workdir(Parent) -> Field = {field, <<"withoutWorkdir"/utf8>>, [], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {container, New_op}. -file("src/dagger/dsl/container.gleam", 1821). ?DOC(" Retrieves the working directory for all commands.\n"). -spec workdir( dagger@dsl@types:container(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HTV) ) -> HTV. workdir(Parent, Client, Handler) -> Field = {field, <<"workdir"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"workdir"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)).