Current section
Files
Jump to
Current section
Files
src/dagger@dsl@directory.erl
-module(dagger@dsl@directory).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/dagger/dsl/directory.gleam").
-export([none/1, opt_source_root_path/2, opt_dockerfile/2, opt_platform/2, opt_build_args/2, opt_target/2, opt_secrets/2, opt_no_init/2, opt_ssh/2, opt_path/2, opt_expected_type/2, opt_do_not_follow_symlinks/2, opt_wipe/2, opt_exclude/2, opt_include/2, opt_gitignore/2, opt_paths/2, opt_globs/2, opt_literal/2, opt_multiline/2, opt_dotall/2, opt_insensitive/2, opt_skip_ignored/2, opt_skip_hidden/2, opt_files_only/2, opt_limit/2, opt_container/2, opt_cmd/2, opt_experimental_privileged_nesting/2, opt_insecure_root_capabilities/2, opt_owner/2, opt_permissions/2, directory/0, as_git/1, as_module/2, as_module_source/2, changes/2, chown/3, diff/2, digest/3, docker_build/2, entries/4, exists/5, export/5, file/2, filter/2, find_up/5, glob/4, id/1, name/3, search/6, stat/3, sync/1, terminal/2, with_changes/2, with_directory/4, with_error/2, with_file/4, with_files/4, with_new_directory/3, with_new_file/4, with_patch/2, with_patch_file/2, with_symlink/3, with_timestamps/2, without_directory/2, without_file/2, without_files/2]).
-export_type([for_terminal/0, for_search/0, filter_fns/0, for_export/0, for_exists/0, for_entries/0, for_docker_build/0, opts/1]).
-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 for_terminal() :: any().
-type for_search() :: any().
-type filter_fns() :: filter | with_directory.
-type for_export() :: any().
-type for_exists() :: any().
-type for_entries() :: any().
-type for_docker_build() :: any().
-opaque opts(PLS) :: {opts,
gleam@option:option(binary()),
gleam@option:option(binary()),
gleam@option:option(binary()),
gleam@option:option(list(dagger@dsl@types:build_arg())),
gleam@option:option(binary()),
gleam@option:option(list(dagger@dsl@types:secret())),
gleam@option:option(boolean()),
gleam@option:option(dagger@dsl@types:socket()),
gleam@option:option(binary()),
gleam@option:option(dagger@dsl@types:exists_type()),
gleam@option:option(boolean()),
gleam@option:option(boolean()),
gleam@option:option(list(binary())),
gleam@option:option(list(binary())),
gleam@option:option(boolean()),
gleam@option:option(list(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(boolean()),
gleam@option:option(boolean()),
gleam@option:option(integer()),
gleam@option:option(dagger@dsl@types:container()),
gleam@option:option(list(binary())),
gleam@option:option(boolean()),
gleam@option:option(boolean()),
gleam@option:option(binary()),
gleam@option:option(integer())} |
{gleam_phantom, PLS}.
-file("src/dagger/dsl/directory.gleam", 57).
-spec defaults() -> opts(any()).
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}.
-file("src/dagger/dsl/directory.gleam", 93).
-spec none(opts(PLV)) -> opts(PLV).
none(Opts) ->
Opts.
-file("src/dagger/dsl/directory.gleam", 97).
-spec opt_source_root_path(opts(PLY), binary()) -> opts(PLY).
opt_source_root_path(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)}.
-file("src/dagger/dsl/directory.gleam", 101).
-spec opt_dockerfile(opts(for_docker_build()), binary()) -> opts(for_docker_build()).
opt_dockerfile(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)}.
-file("src/dagger/dsl/directory.gleam", 105).
-spec opt_platform(opts(for_docker_build()), binary()) -> opts(for_docker_build()).
opt_platform(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)}.
-file("src/dagger/dsl/directory.gleam", 109).
-spec opt_build_args(
opts(for_docker_build()),
list(dagger@dsl@types:build_arg())
) -> opts(for_docker_build()).
opt_build_args(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)}.
-file("src/dagger/dsl/directory.gleam", 113).
-spec opt_target(opts(for_docker_build()), binary()) -> opts(for_docker_build()).
opt_target(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)}.
-file("src/dagger/dsl/directory.gleam", 117).
-spec opt_secrets(opts(for_docker_build()), list(dagger@dsl@types:secret())) -> opts(for_docker_build()).
opt_secrets(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)}.
-file("src/dagger/dsl/directory.gleam", 121).
-spec opt_no_init(opts(for_docker_build()), boolean()) -> opts(for_docker_build()).
opt_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)}.
-file("src/dagger/dsl/directory.gleam", 125).
-spec opt_ssh(opts(for_docker_build()), dagger@dsl@types:socket()) -> opts(for_docker_build()).
opt_ssh(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)}.
-file("src/dagger/dsl/directory.gleam", 129).
-spec opt_path(opts(for_entries()), binary()) -> opts(for_entries()).
opt_path(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)}.
-file("src/dagger/dsl/directory.gleam", 133).
-spec opt_expected_type(opts(for_exists()), dagger@dsl@types:exists_type()) -> opts(for_exists()).
opt_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),
{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)}.
-file("src/dagger/dsl/directory.gleam", 137).
-spec opt_do_not_follow_symlinks(opts(PMV), boolean()) -> opts(PMV).
opt_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),
{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)}.
-file("src/dagger/dsl/directory.gleam", 141).
-spec opt_wipe(opts(for_export()), boolean()) -> opts(for_export()).
opt_wipe(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)}.
-file("src/dagger/dsl/directory.gleam", 145).
-spec opt_exclude(opts(filter_fns()), list(binary())) -> opts(filter_fns()).
opt_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),
{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)}.
-file("src/dagger/dsl/directory.gleam", 149).
-spec opt_include(opts(filter_fns()), list(binary())) -> opts(filter_fns()).
opt_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),
{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)}.
-file("src/dagger/dsl/directory.gleam", 153).
-spec opt_gitignore(opts(filter_fns()), boolean()) -> opts(filter_fns()).
opt_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),
{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)}.
-file("src/dagger/dsl/directory.gleam", 157).
-spec opt_paths(opts(for_search()), list(binary())) -> opts(for_search()).
opt_paths(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)}.
-file("src/dagger/dsl/directory.gleam", 161).
-spec opt_globs(opts(for_search()), list(binary())) -> opts(for_search()).
opt_globs(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)}.
-file("src/dagger/dsl/directory.gleam", 165).
-spec opt_literal(opts(for_search()), boolean()) -> opts(for_search()).
opt_literal(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)}.
-file("src/dagger/dsl/directory.gleam", 169).
-spec opt_multiline(opts(for_search()), boolean()) -> opts(for_search()).
opt_multiline(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)}.
-file("src/dagger/dsl/directory.gleam", 173).
-spec opt_dotall(opts(for_search()), boolean()) -> opts(for_search()).
opt_dotall(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)}.
-file("src/dagger/dsl/directory.gleam", 177).
-spec opt_insensitive(opts(for_search()), boolean()) -> opts(for_search()).
opt_insensitive(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)}.
-file("src/dagger/dsl/directory.gleam", 181).
-spec opt_skip_ignored(opts(for_search()), boolean()) -> opts(for_search()).
opt_skip_ignored(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)}.
-file("src/dagger/dsl/directory.gleam", 185).
-spec opt_skip_hidden(opts(for_search()), boolean()) -> opts(for_search()).
opt_skip_hidden(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)}.
-file("src/dagger/dsl/directory.gleam", 189).
-spec opt_files_only(opts(for_search()), boolean()) -> opts(for_search()).
opt_files_only(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)}.
-file("src/dagger/dsl/directory.gleam", 193).
-spec opt_limit(opts(for_search()), integer()) -> opts(for_search()).
opt_limit(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)}.
-file("src/dagger/dsl/directory.gleam", 197).
-spec opt_container(opts(for_terminal()), dagger@dsl@types:container()) -> opts(for_terminal()).
opt_container(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)}.
-file("src/dagger/dsl/directory.gleam", 201).
-spec opt_cmd(opts(for_terminal()), list(binary())) -> opts(for_terminal()).
opt_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),
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)}.
-file("src/dagger/dsl/directory.gleam", 205).
-spec opt_experimental_privileged_nesting(opts(for_terminal()), boolean()) -> opts(for_terminal()).
opt_experimental_privileged_nesting(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)}.
-file("src/dagger/dsl/directory.gleam", 209).
-spec opt_insecure_root_capabilities(opts(for_terminal()), boolean()) -> opts(for_terminal()).
opt_insecure_root_capabilities(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)}.
-file("src/dagger/dsl/directory.gleam", 213).
-spec opt_owner(opts(PON), binary()) -> opts(PON).
opt_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),
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)}.
-file("src/dagger/dsl/directory.gleam", 217).
-spec opt_permissions(opts(POQ), integer()) -> opts(POQ).
opt_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),
erlang:element(31, Opts),
{some, Val}}.
-file("src/dagger/dsl/directory.gleam", 221).
-spec directory() -> dagger@dsl@types:directory().
directory() ->
Field = {field, <<"directory"/utf8>>, [], []},
{directory, {pure, [Field]}}.
-file("src/dagger/dsl/directory.gleam", 227).
?DOC(" Converts this directory to a local git repository\n").
-spec as_git(dagger@dsl@types:directory()) -> dagger@dsl@types:git_repository().
as_git(Parent) ->
Field = {field, <<"asGit"/utf8>>, [], []},
New_op = begin
dagger@types:bind(
erlang:element(2, Parent),
fun(Q) -> {pure, lists:append(Q, [Field])} end
)
end,
{git_repository, New_op}.
-file("src/dagger/dsl/directory.gleam", 236).
-spec encode_as_module(opts(any())) -> list({binary(), dagger@types:value()}).
encode_as_module(Opts) ->
gleam@list:filter_map([case erlang:element(2, Opts) of
{some, Val} ->
{ok, {<<"sourceRootPath"/utf8>>, {g_string, Val}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 246).
?DOC(" Load the directory as a Dagger module source\n").
-spec as_module(dagger@dsl@types:directory(), fun((opts(POW)) -> opts(POW))) -> dagger@dsl@types:module_().
as_module(Parent, With_fn) ->
Opts = With_fn(defaults()),
Field = {field, <<"asModule"/utf8>>, encode_as_module(Opts), []},
New_op = begin
dagger@types:bind(
erlang:element(2, Parent),
fun(Q) -> {pure, lists:append(Q, [Field])} end
)
end,
{module, New_op}.
-file("src/dagger/dsl/directory.gleam", 256).
-spec encode_as_module_source(opts(any())) -> list({binary(),
dagger@types:value()}).
encode_as_module_source(Opts) ->
gleam@list:filter_map([case erlang:element(2, Opts) of
{some, Val} ->
{ok, {<<"sourceRootPath"/utf8>>, {g_string, Val}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 266).
?DOC(" Load the directory as a Dagger module source\n").
-spec as_module_source(
dagger@dsl@types:directory(),
fun((opts(PPC)) -> opts(PPC))
) -> dagger@dsl@types:module_source().
as_module_source(Parent, With_fn) ->
Opts = With_fn(defaults()),
Field = {field,
<<"asModuleSource"/utf8>>,
encode_as_module_source(Opts),
[]},
New_op = begin
dagger@types:bind(
erlang:element(2, Parent),
fun(Q) -> {pure, lists:append(Q, [Field])} end
)
end,
{module_source, New_op}.
-file("src/dagger/dsl/directory.gleam", 278).
?DOC(
" Return the difference between this directory and another directory, typically an older snapshot.\n"
" The difference is encoded as a changeset, which also tracks removed files, and can be applied to other directories.\n"
).
-spec changes(dagger@dsl@types:directory(), dagger@dsl@types:directory()) -> dagger@dsl@types:changeset().
changes(Parent, From) ->
Field = {field,
<<"changes"/utf8>>,
[{<<"from"/utf8>>, {g_deferred, erlang:element(2, From)}}],
[]},
New_op = begin
dagger@types:bind(
erlang:element(2, Parent),
fun(Q) -> {pure, lists:append(Q, [Field])} end
)
end,
{changeset, New_op}.
-file("src/dagger/dsl/directory.gleam", 288).
?DOC(" Change the owner of the directory contents recursively.\n").
-spec chown(dagger@dsl@types:directory(), binary(), binary()) -> dagger@dsl@types:directory().
chown(Parent, Path, Owner) ->
Field = {field,
<<"chown"/utf8>>,
[{<<"path"/utf8>>, {g_string, Path}},
{<<"owner"/utf8>>, {g_string, Owner}}],
[]},
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/directory.gleam", 298).
?DOC(" Return the difference between this directory and an another directory. The difference is encoded as a directory.\n").
-spec diff(dagger@dsl@types:directory(), dagger@dsl@types:directory()) -> dagger@dsl@types:directory().
diff(Parent, Other) ->
Field = {field,
<<"diff"/utf8>>,
[{<<"other"/utf8>>, {g_deferred, erlang:element(2, Other)}}],
[]},
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/directory.gleam", 308).
?DOC(" Return the directory's digest. The format of the digest is not guaranteed to be stable between releases of Dagger. It is guaranteed to be stable between invocations of the same Dagger engine.\n").
-spec digest(
dagger@dsl@types:directory(),
dagger@types:client(),
fun(({ok, binary()} | {error, dagger@types:query_error()}) -> PPG)
) -> PPG.
digest(Parent, Client, Handler) ->
Field = {field, <<"digest"/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, <<"digest"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/directory.gleam", 328).
-spec encode_docker_build(opts(any())) -> list({binary(), dagger@types:value()}).
encode_docker_build(Opts) ->
gleam@list:filter_map([case erlang:element(3, Opts) of
{some, Val} ->
{ok, {<<"dockerfile"/utf8>>, {g_string, Val}}};
none ->
{error, nil}
end, case erlang:element(4, Opts) of
{some, Val@1} ->
{ok, {<<"platform"/utf8>>, {g_string, Val@1}}};
none ->
{error, nil}
end, case erlang:element(5, Opts) of
{some, Val@2} ->
{ok,
{<<"buildArgs"/utf8>>,
{g_list,
gleam@list:map(
Val@2,
fun(X) ->
{g_object,
dagger@dsl@types:build_arg_to_json(
X
)}
end
)}}};
none ->
{error, nil}
end, case erlang:element(6, Opts) of
{some, Val@3} ->
{ok, {<<"target"/utf8>>, {g_string, Val@3}}};
none ->
{error, nil}
end, case erlang:element(7, Opts) of
{some, Val@4} ->
{ok,
{<<"secrets"/utf8>>,
{g_list,
gleam@list:map(
Val@4,
fun(X@1) ->
{g_deferred, erlang:element(2, X@1)}
end
)}}};
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(9, Opts) of
{some, Val@6} ->
{ok,
{<<"ssh"/utf8>>, {g_deferred, erlang:element(2, Val@6)}}};
none ->
{error, nil}
end], fun(X@2) -> X@2 end).
-file("src/dagger/dsl/directory.gleam", 362).
?DOC(" Use Dockerfile compatibility to build a container from this directory. Only use this function for Dockerfile compatibility. Otherwise use the native Container type directly, it is feature-complete and supports all Dockerfile features.\n").
-spec docker_build(
dagger@dsl@types:directory(),
fun((opts(for_docker_build())) -> opts(for_docker_build()))
) -> dagger@dsl@types:container().
docker_build(Parent, With_fn) ->
Opts = With_fn(defaults()),
Field = {field, <<"dockerBuild"/utf8>>, encode_docker_build(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/directory.gleam", 372).
-spec encode_entries(opts(any())) -> list({binary(), dagger@types:value()}).
encode_entries(Opts) ->
gleam@list:filter_map([case erlang:element(10, Opts) of
{some, Val} ->
{ok, {<<"path"/utf8>>, {g_string, Val}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 382).
?DOC(" Returns a list of files and directories at the given path.\n").
-spec entries(
dagger@dsl@types:directory(),
fun((opts(for_entries())) -> opts(for_entries())),
dagger@types:client(),
fun(({ok, list(binary())} | {error, dagger@types:query_error()}) -> PPT)
) -> PPT.
entries(Parent, With_fn, Client, Handler) ->
Opts = With_fn(defaults()),
Field = {field, <<"entries"/utf8>>, encode_entries(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,
gleam@dynamic@decode:list(
{decoder,
fun gleam@dynamic@decode:decode_string/1}
)
)
) of
{ok, Val} ->
{pure, {ok, Val}};
{error, _} ->
{pure,
{error,
{decoding_error, <<"entries"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/directory.gleam", 403).
-spec encode_exists(opts(any())) -> list({binary(), dagger@types:value()}).
encode_exists(Opts) ->
gleam@list:filter_map([case erlang:element(11, Opts) of
{some, Val} ->
{ok,
{<<"expectedType"/utf8>>,
{g_string,
dagger@dsl@types:exists_type_to_json(Val)}}};
none ->
{error, nil}
end, case erlang:element(12, Opts) of
{some, Val@1} ->
{ok, {<<"doNotFollowSymlinks"/utf8>>, {g_bool, Val@1}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 417).
?DOC(" check if a file or directory exists\n").
-spec exists(
dagger@dsl@types:directory(),
binary(),
fun((opts(for_exists())) -> opts(for_exists())),
dagger@types:client(),
fun(({ok, boolean()} | {error, dagger@types:query_error()}) -> PQA)
) -> PQA.
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/directory.gleam", 438).
-spec encode_export(opts(any())) -> list({binary(), dagger@types:value()}).
encode_export(Opts) ->
gleam@list:filter_map([case erlang:element(13, Opts) of
{some, Val} ->
{ok, {<<"wipe"/utf8>>, {g_bool, Val}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 448).
?DOC(" Writes the contents of the directory to a path on the host.\n").
-spec export(
dagger@dsl@types:directory(),
binary(),
fun((opts(for_export())) -> opts(for_export())),
dagger@types:client(),
fun(({ok, binary()} | {error, dagger@types:query_error()}) -> PQH)
) -> PQH.
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/directory.gleam", 470).
?DOC(" Retrieve a file at the given path.\n").
-spec file(dagger@dsl@types:directory(), binary()) -> dagger@dsl@types:file().
file(Parent, Path) ->
Field = {field, <<"file"/utf8>>, [{<<"path"/utf8>>, {g_string, Path}}], []},
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/directory.gleam", 479).
-spec encode_filter(opts(any())) -> list({binary(), dagger@types:value()}).
encode_filter(Opts) ->
gleam@list:filter_map([case erlang:element(14, Opts) of
{some, Val} ->
{ok,
{<<"exclude"/utf8>>,
{g_list,
gleam@list:map(Val, fun(X) -> {g_string, X} end)}}};
none ->
{error, nil}
end, case erlang:element(15, Opts) of
{some, Val@1} ->
{ok,
{<<"include"/utf8>>,
{g_list,
gleam@list:map(
Val@1,
fun(X@1) -> {g_string, X@1} end
)}}};
none ->
{error, nil}
end, case erlang:element(16, Opts) of
{some, Val@2} ->
{ok, {<<"gitignore"/utf8>>, {g_bool, Val@2}}};
none ->
{error, nil}
end], fun(X@2) -> X@2 end).
-file("src/dagger/dsl/directory.gleam", 497).
?DOC(" Return a snapshot with some paths included or excluded\n").
-spec filter(
dagger@dsl@types:directory(),
fun((opts(filter_fns())) -> opts(filter_fns()))
) -> dagger@dsl@types:directory().
filter(Parent, With_fn) ->
Opts = With_fn(defaults()),
Field = {field, <<"filter"/utf8>>, encode_filter(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/directory.gleam", 508).
?DOC(" Search up the directory tree for a file or directory, and return its path. If no match, return null\n").
-spec find_up(
dagger@dsl@types:directory(),
binary(),
binary(),
dagger@types:client(),
fun(({ok, binary()} | {error, dagger@types:query_error()}) -> PQO)
) -> PQO.
find_up(Parent, Name, Start, Client, Handler) ->
Field = {field,
<<"findUp"/utf8>>,
[{<<"name"/utf8>>, {g_string, Name}},
{<<"start"/utf8>>, {g_string, Start}}],
[]},
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, <<"findUp"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/directory.gleam", 529).
?DOC(" Returns a list of files and directories that matche the given pattern.\n").
-spec glob(
dagger@dsl@types:directory(),
binary(),
dagger@types:client(),
fun(({ok, list(binary())} | {error, dagger@types:query_error()}) -> PQR)
) -> PQR.
glob(Parent, Pattern, Client, Handler) ->
Field = {field,
<<"glob"/utf8>>,
[{<<"pattern"/utf8>>, {g_string, Pattern}}],
[]},
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, <<"glob"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/directory.gleam", 550).
?DOC(" A unique identifier for this Directory.\n").
-spec id(dagger@dsl@types:directory()) -> dagger@dsl@types:directory().
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,
{directory, New_op}.
-file("src/dagger/dsl/directory.gleam", 560).
?DOC(" Returns the name of the directory.\n").
-spec name(
dagger@dsl@types:directory(),
dagger@types:client(),
fun(({ok, binary()} | {error, dagger@types:query_error()}) -> PQT)
) -> PQT.
name(Parent, Client, Handler) ->
Field = {field, <<"name"/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, <<"name"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/directory.gleam", 580).
-spec encode_search(opts(any())) -> list({binary(), dagger@types:value()}).
encode_search(Opts) ->
gleam@list:filter_map([case erlang:element(17, Opts) of
{some, Val} ->
{ok,
{<<"paths"/utf8>>,
{g_list,
gleam@list:map(Val, fun(X) -> {g_string, X} end)}}};
none ->
{error, nil}
end, case erlang:element(18, Opts) of
{some, Val@1} ->
{ok,
{<<"globs"/utf8>>,
{g_list,
gleam@list:map(
Val@1,
fun(X@1) -> {g_string, X@1} end
)}}};
none ->
{error, nil}
end, case erlang:element(19, Opts) of
{some, Val@2} ->
{ok, {<<"literal"/utf8>>, {g_bool, Val@2}}};
none ->
{error, nil}
end, case erlang:element(20, Opts) of
{some, Val@3} ->
{ok, {<<"multiline"/utf8>>, {g_bool, Val@3}}};
none ->
{error, nil}
end, case erlang:element(21, Opts) of
{some, Val@4} ->
{ok, {<<"dotall"/utf8>>, {g_bool, Val@4}}};
none ->
{error, nil}
end, case erlang:element(22, Opts) of
{some, Val@5} ->
{ok, {<<"insensitive"/utf8>>, {g_bool, Val@5}}};
none ->
{error, nil}
end, case erlang:element(23, Opts) of
{some, Val@6} ->
{ok, {<<"skipIgnored"/utf8>>, {g_bool, Val@6}}};
none ->
{error, nil}
end, case erlang:element(24, Opts) of
{some, Val@7} ->
{ok, {<<"skipHidden"/utf8>>, {g_bool, Val@7}}};
none ->
{error, nil}
end, case erlang:element(25, Opts) of
{some, Val@8} ->
{ok, {<<"filesOnly"/utf8>>, {g_bool, Val@8}}};
none ->
{error, nil}
end, case erlang:element(26, Opts) of
{some, Val@9} ->
{ok, {<<"limit"/utf8>>, {g_int, Val@9}}};
none ->
{error, nil}
end], fun(X@2) -> X@2 end).
-file("src/dagger/dsl/directory.gleam", 627).
?DOC(
" Searches for content matching the given regular expression or literal string.\n"
" Uses Rust regex syntax; escape literal ., [, ], {, }, | with backslashes.\n"
).
-spec search(
dagger@dsl@types:directory(),
binary(),
fun((opts(for_search())) -> opts(for_search())),
fun((dagger@dsl@types:search_result()) -> list(dagger@types:field())),
dagger@types:client(),
fun(({ok, list(dagger@dsl@types:search_result())} |
{error, dagger@types:query_error()}) -> PRC)
) -> PRC.
search(Parent, Pattern, With_fn, Select, Client, Handler) ->
Opts = With_fn(defaults()),
Subfields = Select({search_result, {pure, []}}),
Field = {field,
<<"search"/utf8>>,
lists:append(
[{<<"pattern"/utf8>>, {g_string, Pattern}}],
encode_search(Opts)
),
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(_) ->
{search_result,
{pure, Full_query}}
end
)}};
{error, _} ->
{pure,
{error, {decoding_error, <<"search"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/directory.gleam", 649).
-spec encode_stat(opts(any())) -> list({binary(), dagger@types:value()}).
encode_stat(Opts) ->
gleam@list:filter_map([case erlang:element(12, Opts) of
{some, Val} ->
{ok, {<<"doNotFollowSymlinks"/utf8>>, {g_bool, Val}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 659).
?DOC(" Return file status\n").
-spec stat(
dagger@dsl@types:directory(),
binary(),
fun((opts(PRG)) -> opts(PRG))
) -> 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/directory.gleam", 670).
?DOC(" Force evaluation in the engine.\n").
-spec sync(dagger@dsl@types:directory()) -> dagger@dsl@types:directory().
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,
{directory, New_op}.
-file("src/dagger/dsl/directory.gleam", 679).
-spec encode_terminal(opts(any())) -> list({binary(), dagger@types:value()}).
encode_terminal(Opts) ->
gleam@list:filter_map([case erlang:element(27, Opts) of
{some, Val} ->
{ok,
{<<"container"/utf8>>,
{g_deferred, erlang:element(2, Val)}}};
none ->
{error, nil}
end, case erlang:element(28, Opts) of
{some, Val@1} ->
{ok,
{<<"cmd"/utf8>>,
{g_list,
gleam@list:map(
Val@1,
fun(X) -> {g_string, X} end
)}}};
none ->
{error, nil}
end, case erlang:element(29, Opts) of
{some, Val@2} ->
{ok,
{<<"experimentalPrivilegedNesting"/utf8>>,
{g_bool, Val@2}}};
none ->
{error, nil}
end, case erlang:element(30, Opts) of
{some, Val@3} ->
{ok, {<<"insecureRootCapabilities"/utf8>>, {g_bool, Val@3}}};
none ->
{error, nil}
end], fun(X@1) -> X@1 end).
-file("src/dagger/dsl/directory.gleam", 701).
?DOC(" Opens an interactive terminal in new container with this directory mounted inside.\n").
-spec terminal(
dagger@dsl@types:directory(),
fun((opts(for_terminal())) -> opts(for_terminal()))
) -> dagger@dsl@types:directory().
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,
{directory, New_op}.
-file("src/dagger/dsl/directory.gleam", 712).
?DOC(" Return a directory with changes from another directory applied to it.\n").
-spec with_changes(dagger@dsl@types:directory(), dagger@dsl@types:changeset()) -> dagger@dsl@types:directory().
with_changes(Parent, Changes) ->
Field = {field,
<<"withChanges"/utf8>>,
[{<<"changes"/utf8>>, {g_deferred, erlang:element(2, Changes)}}],
[]},
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/directory.gleam", 721).
-spec encode_with_directory(opts(any())) -> list({binary(),
dagger@types:value()}).
encode_with_directory(Opts) ->
gleam@list:filter_map([case erlang:element(14, Opts) of
{some, Val} ->
{ok,
{<<"exclude"/utf8>>,
{g_list,
gleam@list:map(Val, fun(X) -> {g_string, X} end)}}};
none ->
{error, nil}
end, case erlang:element(15, Opts) of
{some, Val@1} ->
{ok,
{<<"include"/utf8>>,
{g_list,
gleam@list:map(
Val@1,
fun(X@1) -> {g_string, X@1} end
)}}};
none ->
{error, nil}
end, case erlang:element(16, Opts) of
{some, Val@2} ->
{ok, {<<"gitignore"/utf8>>, {g_bool, Val@2}}};
none ->
{error, nil}
end, case erlang:element(31, Opts) of
{some, Val@3} ->
{ok, {<<"owner"/utf8>>, {g_string, Val@3}}};
none ->
{error, nil}
end], fun(X@2) -> X@2 end).
-file("src/dagger/dsl/directory.gleam", 743).
?DOC(" Return a snapshot with a directory added\n").
-spec with_directory(
dagger@dsl@types:directory(),
binary(),
dagger@dsl@types:directory(),
fun((opts(filter_fns())) -> opts(filter_fns()))
) -> dagger@dsl@types:directory().
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,
{directory, New_op}.
-file("src/dagger/dsl/directory.gleam", 754).
?DOC(" Raise an error.\n").
-spec with_error(dagger@dsl@types:directory(), binary()) -> dagger@dsl@types:directory().
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,
{directory, New_op}.
-file("src/dagger/dsl/directory.gleam", 763).
-spec encode_with_file(opts(any())) -> list({binary(), dagger@types:value()}).
encode_with_file(Opts) ->
gleam@list:filter_map([case erlang:element(31, Opts) of
{some, Val} ->
{ok, {<<"owner"/utf8>>, {g_string, Val}}};
none ->
{error, nil}
end, case erlang:element(32, Opts) of
{some, Val@1} ->
{ok, {<<"permissions"/utf8>>, {g_int, Val@1}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 777).
?DOC(" Retrieves this directory plus the contents of the given file copied to the given path.\n").
-spec with_file(
dagger@dsl@types:directory(),
binary(),
dagger@dsl@types:file(),
fun((opts(PRW)) -> opts(PRW))
) -> dagger@dsl@types:directory().
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,
{directory, New_op}.
-file("src/dagger/dsl/directory.gleam", 787).
-spec encode_with_files(opts(any())) -> list({binary(), dagger@types:value()}).
encode_with_files(Opts) ->
gleam@list:filter_map([case erlang:element(32, Opts) of
{some, Val} ->
{ok, {<<"permissions"/utf8>>, {g_int, Val}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 797).
?DOC(" Retrieves this directory plus the contents of the given files copied to the given path.\n").
-spec with_files(
dagger@dsl@types:directory(),
binary(),
list(dagger@dsl@types:file()),
fun((opts(PSD)) -> opts(PSD))
) -> dagger@dsl@types:directory().
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,
{directory, New_op}.
-file("src/dagger/dsl/directory.gleam", 807).
-spec encode_with_new_directory(opts(any())) -> list({binary(),
dagger@types:value()}).
encode_with_new_directory(Opts) ->
gleam@list:filter_map([case erlang:element(32, Opts) of
{some, Val} ->
{ok, {<<"permissions"/utf8>>, {g_int, Val}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 817).
?DOC(" Retrieves this directory plus a new directory created at the given path.\n").
-spec with_new_directory(
dagger@dsl@types:directory(),
binary(),
fun((opts(PSJ)) -> opts(PSJ))
) -> dagger@dsl@types:directory().
with_new_directory(Parent, Path, With_fn) ->
Opts = With_fn(defaults()),
Field = {field,
<<"withNewDirectory"/utf8>>,
lists:append(
[{<<"path"/utf8>>, {g_string, Path}}],
encode_with_new_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/directory.gleam", 827).
-spec encode_with_new_file(opts(any())) -> list({binary(), dagger@types:value()}).
encode_with_new_file(Opts) ->
gleam@list:filter_map([case erlang:element(32, Opts) of
{some, Val} ->
{ok, {<<"permissions"/utf8>>, {g_int, Val}}};
none ->
{error, nil}
end], fun(X) -> X end).
-file("src/dagger/dsl/directory.gleam", 837).
?DOC(" Return a snapshot with a new file added\n").
-spec with_new_file(
dagger@dsl@types:directory(),
binary(),
binary(),
fun((opts(PSP)) -> opts(PSP))
) -> dagger@dsl@types:directory().
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,
{directory, New_op}.
-file("src/dagger/dsl/directory.gleam", 848).
?DOC(" Retrieves this directory with the given Git-compatible patch applied.\n").
-spec with_patch(dagger@dsl@types:directory(), binary()) -> dagger@dsl@types:directory().
with_patch(Parent, Patch) ->
Field = {field,
<<"withPatch"/utf8>>,
[{<<"patch"/utf8>>, {g_string, Patch}}],
[]},
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/directory.gleam", 858).
?DOC(" Retrieves this directory with the given Git-compatible patch file applied.\n").
-spec with_patch_file(dagger@dsl@types:directory(), dagger@dsl@types:file()) -> dagger@dsl@types:directory().
with_patch_file(Parent, Patch) ->
Field = {field,
<<"withPatchFile"/utf8>>,
[{<<"patch"/utf8>>, {g_deferred, erlang:element(2, Patch)}}],
[]},
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/directory.gleam", 868).
?DOC(" Return a snapshot with a symlink\n").
-spec with_symlink(dagger@dsl@types:directory(), binary(), binary()) -> dagger@dsl@types:directory().
with_symlink(Parent, Target, Link_name) ->
Field = {field,
<<"withSymlink"/utf8>>,
[{<<"target"/utf8>>, {g_string, Target}},
{<<"linkName"/utf8>>, {g_string, Link_name}}],
[]},
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/directory.gleam", 878).
?DOC(" Retrieves this directory with all file/dir timestamps set to the given time.\n").
-spec with_timestamps(dagger@dsl@types:directory(), integer()) -> dagger@dsl@types:directory().
with_timestamps(Parent, Timestamp) ->
Field = {field,
<<"withTimestamps"/utf8>>,
[{<<"timestamp"/utf8>>, {g_int, Timestamp}}],
[]},
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/directory.gleam", 888).
?DOC(" Return a snapshot with a subdirectory removed\n").
-spec without_directory(dagger@dsl@types:directory(), binary()) -> dagger@dsl@types:directory().
without_directory(Parent, Path) ->
Field = {field,
<<"withoutDirectory"/utf8>>,
[{<<"path"/utf8>>, {g_string, Path}}],
[]},
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/directory.gleam", 898).
?DOC(" Return a snapshot with a file removed\n").
-spec without_file(dagger@dsl@types:directory(), binary()) -> dagger@dsl@types:directory().
without_file(Parent, Path) ->
Field = {field,
<<"withoutFile"/utf8>>,
[{<<"path"/utf8>>, {g_string, Path}}],
[]},
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/directory.gleam", 908).
?DOC(" Return a snapshot with files removed\n").
-spec without_files(dagger@dsl@types:directory(), list(binary())) -> dagger@dsl@types:directory().
without_files(Parent, Paths) ->
Field = {field,
<<"withoutFiles"/utf8>>,
[{<<"paths"/utf8>>,
{g_list, gleam@list:map(Paths, 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,
{directory, New_op}.