dagger
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/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73Entrypoint
Return Type
Dagger Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
func (m *MyModule) Example() *dagger.Dagger {
return dag.
Dagger()
}@function
def example() -> dagger.Dagger:
return (
dag.dagger()
)@func()
example(): Dagger {
return dag
.dagger()
}Types
Dagger 🔗
buildAndTest() 🔗
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| src | Directory ! | - | No description provided |
| goVersion | String | "1.25.5" | No description provided |
| os | String | "linux" | No description provided |
| arch | String | "amd64" | No description provided |
| goMainFile | String | "main.go" | No description provided |
| binName | String | "claim-machinery-api" | No description provided |
| variant | String | "bookworm" | No description provided |
| ldflags | String | - | No description provided |
| packageName | String | "" | No description provided |
| port | String | "8080" | No description provided |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
build-and-test --src DIR_PATHfunc (m *MyModule) Example(ctx context.Context, src *dagger.Directory) string {
return dag.
Dagger().
BuildAndTest(ctx, src)
}@function
async def example(src: dagger.Directory) -> str:
return await (
dag.dagger()
.build_and_test(src)
)@func()
async example(src: Directory): Promise<string> {
return dag
.dagger()
.buildAndTest(src)
}test() 🔗
Test runs go test for the provided source directory
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| src | Directory ! | - | No description provided |
| goVersion | String | "1.25.5" | Go version to use for testing |
| testArg | String | "./..." | Test arguments to pass to `go test` |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
test --src DIR_PATHfunc (m *MyModule) Example(ctx context.Context, src *dagger.Directory) string {
return dag.
Dagger().
Test(ctx, src)
}@function
async def example(src: dagger.Directory) -> str:
return await (
dag.dagger()
.test(src)
)@func()
async example(src: Directory): Promise<string> {
return dag
.dagger()
.test(src)
}testReport() 🔗
TestReport runs go test and returns the output as a file for export
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| src | Directory ! | - | No description provided |
| goVersion | String | "1.25.5" | No description provided |
| testArg | String | "./..." | No description provided |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
test-report --src DIR_PATHfunc (m *MyModule) Example(src *dagger.Directory) *dagger.File {
return dag.
Dagger().
TestReport(src)
}@function
def example(src: dagger.Directory) -> dagger.File:
return (
dag.dagger()
.test_report(src)
)@func()
example(src: Directory): File {
return dag
.dagger()
.testReport(src)
}buildImage() 🔗
BuildImage builds a container image using ko
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| src | Directory ! | - | No description provided |
| repo | String | "ko.local" | No description provided |
| buildArg | String | "." | No description provided |
| koVersion | String | "v0.18.1" | No description provided |
| push | String | "true" | No description provided |
| tokenName | String | "GITHUB_TOKEN" | No description provided |
| token | Secret | - | No description provided |
| scan | Boolean | false | No description provided |
| scanSeverity | String | "HIGH,CRITICAL" | No description provided |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
build-image --src DIR_PATHfunc (m *MyModule) Example(ctx context.Context, src *dagger.Directory) string {
return dag.
Dagger().
BuildImage(ctx, src)
}@function
async def example(src: dagger.Directory) -> str:
return await (
dag.dagger()
.build_image(src)
)@func()
async example(src: Directory): Promise<string> {
return dag
.dagger()
.buildImage(src)
}scanImage() 🔗
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| imageRef | String ! | - | Fully qualified image reference (e.g., "ttl.sh/my-repo:1.0.0") |
| registryUser | Secret | - | No description provided |
| registryPassword | Secret | - | No description provided |
| severity | String | "HIGH,CRITICAL" | No description provided |
| trivyVersion | String | "0.64.1" | No description provided |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
scan-image --image-ref stringfunc (m *MyModule) Example(imageRef string) *dagger.File {
return dag.
Dagger().
ScanImage(imageRef)
}@function
def example(image_ref: str) -> dagger.File:
return (
dag.dagger()
.scan_image(image_ref)
)@func()
example(imageRef: string): File {
return dag
.dagger()
.scanImage(imageRef)
}runApi() 🔗
RunApi builds and runs the API as a service with configurable mounts and environment
Return Type
Service !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | Directory ! | - | Source directory |
| profileFile | File ! | - | Profile file to mount into the container |
| profileFileName | String | "profile.yaml" | Filename to use for the mounted profile |
| repo | String | "ttl.sh/claim-machinery-api:latest" | Repository tag (only used if push is true) |
| push | Boolean | false | Push to registry |
| hostPort | Integer | 8080 | Host port to expose |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
run-api --source DIR_PATH --profile-file file:pathfunc (m *MyModule) Example(source *dagger.Directory, profileFile *dagger.File) *dagger.Service {
return dag.
Dagger().
RunApi(source, profileFile)
}@function
def example(source: dagger.Directory, profile_file: dagger.File) -> dagger.Service:
return (
dag.dagger()
.run_api(source, profile_file)
)@func()
example(source: Directory, profileFile: File): Service {
return dag
.dagger()
.runApi(source, profileFile)
}lint() 🔗
Lint runs the linter on the provided source code and returns a report file
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| src | Directory ! | - | No description provided |
| timeout | String | "500s" | No description provided |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
lint --src DIR_PATHfunc (m *MyModule) Example(src *dagger.Directory) *dagger.File {
return dag.
Dagger().
Lint(src)
}@function
def example(src: dagger.Directory) -> dagger.File:
return (
dag.dagger()
.lint(src)
)@func()
example(src: Directory): File {
return dag
.dagger()
.lint(src)
}buildBaseImage() 🔗
BuildBaseImage creates a base image with KCL pre-installed
Return Type
Container !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| platform | Scalar ! | - | No description provided |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
build-base-imagefunc (m *MyModule) Example(platform ) *dagger.Container {
return dag.
Dagger().
BuildBaseImage(platform)
}@function
def example(platform: ) -> dagger.Container:
return (
dag.dagger()
.build_base_image(platform)
)@func()
example(platform: ): Container {
return dag
.dagger()
.buildBaseImage(platform)
}buildImageWithKcl() 🔗
BuildImageWithKCL builds the complete application image with KCL and optionally pushes it
Return Type
Container !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | Directory ! | - | Source directory |
| repo | String | "ttl.sh/claim-machinery-api:latest" | Repository (e.g., ttl.sh/claim-machinery-api:latest) |
| push | Boolean | false | Push to registry |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
build-image-with-kcl --source DIR_PATHfunc (m *MyModule) Example(source *dagger.Directory) *dagger.Container {
return dag.
Dagger().
BuildImageWithKcl(source)
}@function
def example(source: dagger.Directory) -> dagger.Container:
return (
dag.dagger()
.build_image_with_kcl(source)
)@func()
example(source: Directory): Container {
return dag
.dagger()
.buildImageWithKcl(source)
}build() 🔗
Build builds the Go application binary with specified parameters
Return Type
Directory !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| src | Directory ! | - | No description provided |
| goVersion | String | "1.25.5" | No description provided |
| os | String | "linux" | No description provided |
| arch | String | "amd64" | No description provided |
| goMainFile | String | "main.go" | No description provided |
| binName | String | "claim-machinery-api" | No description provided |
| variant | String | "bookworm" | No description provided |
| ldflags | String | - | No description provided |
| packageName | String | "" | No description provided |
Example
dagger -m github.com/stuttgart-things/claim-machinery-api@86336b5ba7f96d943d07f911a58116af994dde73 call \
build --src DIR_PATHfunc (m *MyModule) Example(src *dagger.Directory) *dagger.Directory {
return dag.
Dagger().
Build(src)
}@function
def example(src: dagger.Directory) -> dagger.Directory:
return (
dag.dagger()
.build(src)
)@func()
example(src: Directory): Directory {
return dag
.dagger()
.build(src)
}