Packages

Gleam SDK for Dagger — type-safe pipelines via GraphQL codegen

Current section

Files

Jump to
dagger_gleam src dagger@dsl@check.erl
Raw

src/dagger@dsl@check.erl

-module(dagger@dsl@check).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/dagger/dsl/check.gleam").
-export([check/1, completed/3, description/3, error/1, id/1, name/3, original_module/1, passed/3, path/3, result_emoji/3, run/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.
-file("src/dagger/dsl/check.gleam", 9).
-spec check(dagger@dsl@types:check()) -> dagger@dsl@types:check().
check(Id) ->
Field = {field,
<<"loadCheckFromID"/utf8>>,
[{<<"id"/utf8>>, {g_deferred, erlang:element(2, Id)}}],
[]},
{check, {pure, [Field]}}.
-file("src/dagger/dsl/check.gleam", 15).
?DOC(" Whether the check completed\n").
-spec completed(
dagger@dsl@types:check(),
dagger@types:client(),
fun(({ok, boolean()} | {error, dagger@types:query_error()}) -> HKK)
) -> HKK.
completed(Parent, Client, Handler) ->
Field = {field, <<"completed"/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_bool/1}
)
) of
{ok, Val} ->
{pure, {ok, Val}};
{error, _} ->
{pure,
{error,
{decoding_error, <<"completed"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/check.gleam", 36).
?DOC(" The description of the check\n").
-spec description(
dagger@dsl@types:check(),
dagger@types:client(),
fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HKM)
) -> HKM.
description(Parent, Client, Handler) ->
Field = {field, <<"description"/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, <<"description"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/check.gleam", 57).
?DOC(" If the check failed, this is the error\n").
-spec error(dagger@dsl@types:check()) -> dagger@dsl@types:error().
error(Parent) ->
Field = {field, <<"error"/utf8>>, [], []},
New_op = begin
dagger@types:bind(
erlang:element(2, Parent),
fun(Q) -> {pure, lists:append(Q, [Field])} end
)
end,
{error, New_op}.
-file("src/dagger/dsl/check.gleam", 67).
?DOC(" A unique identifier for this Check.\n").
-spec id(dagger@dsl@types:check()) -> dagger@dsl@types:check().
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,
{check, New_op}.
-file("src/dagger/dsl/check.gleam", 77).
?DOC(" Return the fully qualified name of the check\n").
-spec name(
dagger@dsl@types:check(),
dagger@types:client(),
fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HKO)
) -> HKO.
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/check.gleam", 98).
?DOC(" The original module in which the check has been defined\n").
-spec original_module(dagger@dsl@types:check()) -> dagger@dsl@types:module_().
original_module(Parent) ->
Field = {field, <<"originalModule"/utf8>>, [], []},
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/check.gleam", 108).
?DOC(" Whether the check passed\n").
-spec passed(
dagger@dsl@types:check(),
dagger@types:client(),
fun(({ok, boolean()} | {error, dagger@types:query_error()}) -> HKQ)
) -> HKQ.
passed(Parent, Client, Handler) ->
Field = {field, <<"passed"/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_bool/1}
)
) of
{ok, Val} ->
{pure, {ok, Val}};
{error, _} ->
{pure,
{error, {decoding_error, <<"passed"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/check.gleam", 129).
?DOC(" The path of the check within its module\n").
-spec path(
dagger@dsl@types:check(),
dagger@types:client(),
fun(({ok, list(binary())} | {error, dagger@types:query_error()}) -> HKT)
) -> HKT.
path(Parent, Client, Handler) ->
Field = {field, <<"path"/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, <<"path"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/check.gleam", 150).
?DOC(" An emoji representing the result of the check\n").
-spec result_emoji(
dagger@dsl@types:check(),
dagger@types:client(),
fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HKV)
) -> HKV.
result_emoji(Parent, Client, Handler) ->
Field = {field, <<"resultEmoji"/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, <<"resultEmoji"/utf8>>}}}
end
end}
end
)
end,
Handler(dagger@interpreter:run(Op, Client)).
-file("src/dagger/dsl/check.gleam", 171).
?DOC(" Execute the check\n").
-spec run(dagger@dsl@types:check()) -> dagger@dsl@types:check().
run(Parent) ->
Field = {field, <<"run"/utf8>>, [], []},
New_op = begin
dagger@types:bind(
erlang:element(2, Parent),
fun(Q) -> {pure, lists:append(Q, [Field])} end
)
end,
{check, New_op}.