Current section

Files

Jump to
dagger lib dagger gen git_module_source.ex
Raw

lib/dagger/gen/git_module_source.ex

# This file generated by `dagger_codegen`. Please DO NOT EDIT.
defmodule Dagger.GitModuleSource do
@moduledoc "Module source originating from a git repo."
alias Dagger.Core.Client
alias Dagger.Core.QueryBuilder, as: QB
@derive Dagger.ID
defstruct [:query_builder, :client]
@type t() :: %__MODULE__{}
@doc "The ref to clone the root of the git repo from"
@spec clone_ref(t()) :: {:ok, String.t()} | {:error, term()}
def clone_ref(%__MODULE__{} = git_module_source) do
query_builder =
git_module_source.query_builder |> QB.select("cloneRef")
Client.execute(git_module_source.client, query_builder)
end
@doc "The resolved commit of the git repo this source points to."
@spec commit(t()) :: {:ok, String.t()} | {:error, term()}
def commit(%__MODULE__{} = git_module_source) do
query_builder =
git_module_source.query_builder |> QB.select("commit")
Client.execute(git_module_source.client, query_builder)
end
@doc "The directory containing everything needed to load load and use the module."
@spec context_directory(t()) :: Dagger.Directory.t()
def context_directory(%__MODULE__{} = git_module_source) do
query_builder =
git_module_source.query_builder |> QB.select("contextDirectory")
%Dagger.Directory{
query_builder: query_builder,
client: git_module_source.client
}
end
@doc "The URL to access the web view of the repository (e.g., GitHub, GitLab, Bitbucket)"
@spec html_repo_url(t()) :: {:ok, String.t()} | {:error, term()}
def html_repo_url(%__MODULE__{} = git_module_source) do
query_builder =
git_module_source.query_builder |> QB.select("htmlRepoURL")
Client.execute(git_module_source.client, query_builder)
end
@doc "The URL to the source's git repo in a web browser"
@spec html_url(t()) :: {:ok, String.t()} | {:error, term()}
def html_url(%__MODULE__{} = git_module_source) do
query_builder =
git_module_source.query_builder |> QB.select("htmlURL")
Client.execute(git_module_source.client, query_builder)
end
@doc "A unique identifier for this GitModuleSource."
@spec id(t()) :: {:ok, Dagger.GitModuleSourceID.t()} | {:error, term()}
def id(%__MODULE__{} = git_module_source) do
query_builder =
git_module_source.query_builder |> QB.select("id")
Client.execute(git_module_source.client, query_builder)
end
@doc "The clean module name of the root of the module"
@spec root(t()) :: {:ok, String.t()} | {:error, term()}
def root(%__MODULE__{} = git_module_source) do
query_builder =
git_module_source.query_builder |> QB.select("root")
Client.execute(git_module_source.client, query_builder)
end
@doc "The path to the root of the module source under the context directory. This directory contains its configuration file. It also contains its source code (possibly as a subdirectory)."
@spec root_subpath(t()) :: {:ok, String.t()} | {:error, term()}
def root_subpath(%__MODULE__{} = git_module_source) do
query_builder =
git_module_source.query_builder |> QB.select("rootSubpath")
Client.execute(git_module_source.client, query_builder)
end
@doc "The specified version of the git repo this source points to."
@spec version(t()) :: {:ok, String.t()} | {:error, term()}
def version(%__MODULE__{} = git_module_source) do
query_builder =
git_module_source.query_builder |> QB.select("version")
Client.execute(git_module_source.client, query_builder)
end
end