typesafe-daggerverse
This module has been generated via dagger init and serves as a reference tobasic module structure as you get started with Dagger.
Two functions have been pre-created. You can modify, delete, or add to them,
as needed. They demonstrate usage of arguments and return types using simple
echo and grep commands. The functions can be called from the dagger CLI or
from one of the SDKs.
The first line in this comment block is a short description line and the
rest is a long description with more detail on the module's purpose or usage,
if appropriate. All modules should have a short description.
Installation
dagger install github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949bEntrypoint
Return Type
TypesafeDaggerverse !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | Directory | - | Daggerverse repo root |
Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
func (m *MyModule) Example() *dagger.TypesafeDaggerverse {
return dag.
TypesafeDaggerverse()
}@function
def example() -> dagger.TypesafeDaggerverse:
return (
dag.typesafe_daggerverse()
)@func()
example(): TypesafeDaggerverse {
return dag
.typesafeDaggerverse()
}Types
TypesafeDaggerverse 🔗
CI checks for modules published from this repo.
source() 🔗
Daggerverse repo root
Return Type
Directory ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
sourcefunc (m *MyModule) Example() *dagger.Directory {
return dag.
TypesafeDaggerverse().
Source()
}@function
def example() -> dagger.Directory:
return (
dag.typesafe_daggerverse()
.source()
)@func()
example(): Directory {
return dag
.typesafeDaggerverse()
.source()
}waitDaggerChecks() 🔗
Block until every Dagger check has landed as a successful GitHub commit
status on ref.
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| repo | String ! | - | GitHub repo as 'owner/name' |
| ref | String ! | - | Commit SHA to poll |
| token | Secret ! | - | GitHub token with read access |
| failFast | Boolean ! | false | Raise as soon as any check fails instead of waiting for all. |
Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
wait-dagger-checks --repo string --ref string --token env:MYSECRET --fail-fast booleanfunc (m *MyModule) Example(ctx context.Context, repo string, ref string, token *dagger.Secret, failFast bool) string {
return dag.
TypesafeDaggerverse().
WaitDaggerChecks(ctx, repo, ref, token, failFast)
}@function
async def example(repo: str, ref: str, token: dagger.Secret, fail_fast: bool) -> str:
return await (
dag.typesafe_daggerverse()
.wait_dagger_checks(repo, ref, token, fail_fast)
)@func()
async example(repo: string, ref: string, token: Secret, failFast: boolean): Promise<string> {
return dag
.typesafeDaggerverse()
.waitDaggerChecks(repo, ref, token, failFast)
}uvWorkspaceBuildWorkspace() 🔗
Build the uv-workspace multi-package fixture and verify every local package imports.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-build-workspacefunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspaceBuildWorkspace(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_build_workspace()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspaceBuildWorkspace()
}uvWorkspaceBuildFullWorkspace() 🔗
Build the full uv-workspace (no package filter) and verify every local package imports.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-build-full-workspacefunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspaceBuildFullWorkspace(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_build_full_workspace()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspaceBuildFullWorkspace()
}uvWorkspaceBuildStandalone() 🔗
Build the uv-workspace standalone fixture and verify it imports.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-build-standalonefunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspaceBuildStandalone(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_build_standalone()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspaceBuildStandalone()
}uvWorkspaceStandaloneSelectiveExtra() 🔗
extra=['viz'] installs only the viz extra’s deps, not other extras or groups.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-standalone-selective-extrafunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspaceStandaloneSelectiveExtra(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_standalone_selective_extra()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspaceStandaloneSelectiveExtra()
}uvWorkspaceStandaloneAllExtras() 🔗
all_extras=True installs every extra but no groups.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-standalone-all-extrasfunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspaceStandaloneAllExtras(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_standalone_all_extras()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspaceStandaloneAllExtras()
}uvWorkspaceStandaloneSelectiveGroup() 🔗
group=['docs'] installs only the docs group’s deps, not other groups or extras.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-standalone-selective-groupfunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspaceStandaloneSelectiveGroup(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_standalone_selective_group()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspaceStandaloneSelectiveGroup()
}uvWorkspaceStandaloneAllGroups() 🔗
all_groups=True installs every group but no extras.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-standalone-all-groupsfunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspaceStandaloneAllGroups(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_standalone_all_groups()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspaceStandaloneAllGroups()
}uvWorkspaceFullWorkspaceAllExtrasAllGroups() 🔗
Full workspace build with all extras (from my-app) and all groups (from root) installed.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-full-workspace-all-extras-all-groupsfunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspaceFullWorkspaceAllExtrasAllGroups(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_full_workspace_all_extras_all_groups()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspaceFullWorkspaceAllExtrasAllGroups()
}uvWorkspaceBuildSelf() 🔗
Build uv-workspace from its own source on a fresh tree.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-build-selffunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspaceBuildSelf(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_build_self()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspaceBuildSelf()
}githubStatusMonitorPytest() 🔗
Run the github-status-monitor unit-test suite inside a freshly- built container.
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
github-status-monitor-pytestfunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
GithubStatusMonitorPytest(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.github_status_monitor_pytest()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.githubStatusMonitorPytest()
}uvWorkspacePytestSelf() 🔗
Run uv-workspace’s own pytest suite inside a freshly-built container.
UvWorkspace.build() only copies src/ for each package (to keep
layer granularity tight). tests/ has to be mounted explicitly so
pytest can find them — without this, pytest -q collects nothing
and exits with code 5 (NO_TESTS_COLLECTED).
Return Type
String ! Example
dagger -m github.com/typesafe-ai/daggerverse@1ee437878f2e86fccc65a5f7b40cd55e3eb7949b call \
uv-workspace-pytest-selffunc (m *MyModule) Example(ctx context.Context) string {
return dag.
TypesafeDaggerverse().
UvWorkspacePytestSelf(ctx)
}@function
async def example() -> str:
return await (
dag.typesafe_daggerverse()
.uv_workspace_pytest_self()
)@func()
async example(): Promise<string> {
return dag
.typesafeDaggerverse()
.uvWorkspacePytestSelf()
}