java
JVM toolchain (the JDK plus the Maven and Gradle build tools) so downstreampipelines can compile, test, and package Java projects without re-inventing
JDK pinning, build-tool selection, and cache plumbing.
The JDK version is pinned via New(version) or inferred from the source's
.java-version, then pom.xml, then build.gradle(.kts); it falls back to the
module-pinned LTS default. Maven and Gradle are surfaced as cooperating
objects via Java.Maven / Java.Gradle. The build-tool version is not taken
from New(): an in-repo wrapper (mvnw/gradlew) is used when present, pinning
the tool per-repo; disableWrapper forces the image's system tool.
Installation
dagger install github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453Entrypoint
Return Type
Java !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| version | String | - | No description provided |
Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
func (m *MyModule) Example() *dagger.Java {
return dag.
Java()
}@function
def example() -> dagger.Java:
return (
dag.java()
)@func()
example(): Java {
return dag
.java()
}Types
Java 🔗
Java wraps the JVM toolchain as Dagger functions. Construct via New(); call Container() for the prepared JDK container, ToolVersion() for the pinned JDK banner, Run() to run a jar, or Maven()/Gradle() for the build-tool objects.
version() 🔗
Version is the pinned JDK major version (e.g. “21”). Empty means infer from source (.java-version, then pom.xml / build.gradle); falls back to the module-pinned LTS default.
Return Type
String ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
versionfunc (m *MyModule) Example(ctx context.Context) string {
return dag.
Java().
Version(ctx)
}@function
async def example() -> str:
return await (
dag.java()
.version()
)@func()
async example(): Promise<string> {
return dag
.java()
.version()
}container() 🔗
Container returns the prepared JDK container with source mounted at /work and the working directory set to /work. Use this as an escape hatch when a JVM command isn’t covered by the typed helpers.
The base image is eclipse-temurin:-jdk where jdk comes from New() or, when New(“”) was used, from source (.java-version, then pom.xml, then build.gradle(.kts)), falling back to the module-pinned LTS default. The signature takes ctx + returns error because source inspection requires async I/O.
Return Type
Container !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | Directory ! | - | No description provided |
Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
container --source DIR_PATHfunc (m *MyModule) Example(source *dagger.Directory) *dagger.Container {
return dag.
Java().
Container(source)
}@function
def example(source: dagger.Directory) -> dagger.Container:
return (
dag.java()
.container(source)
)@func()
example(source: Directory): Container {
return dag
.java()
.container(source)
}gradle() 🔗
Gradle returns a Gradle build-tool object bound to source. The JDK pin from
New() (if any) is propagated; an unpinned Java infers the JDK from source.
disableWrapper forces the image’s system gradle even when an in-repo
gradlew is present.
Return Type
Gradle !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | Directory ! | - | No description provided |
| disableWrapper | Boolean ! | false | No description provided |
Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper booleanfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.JavaGradle {
return dag.
Java().
Gradle(source, disableWrapper)
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.JavaGradle:
return (
dag.java()
.gradle(source, disablewrapper)
)@func()
example(source: Directory, disableWrapper: boolean): JavaGradle {
return dag
.java()
.gradle(source, disableWrapper)
}maven() 🔗
Maven returns a Maven build-tool object bound to source. The JDK pin from
New() (if any) is propagated; an unpinned Java infers the JDK from source.
disableWrapper forces the image’s system mvn even when an in-repo mvnw
is present.
Return Type
Maven !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | Directory ! | - | No description provided |
| disableWrapper | Boolean ! | false | No description provided |
Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper booleanfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.JavaMaven {
return dag.
Java().
Maven(source, disableWrapper)
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.JavaMaven:
return (
dag.java()
.maven(source, disablewrapper)
)@func()
example(source: Directory, disableWrapper: boolean): JavaMaven {
return dag
.java()
.maven(source, disableWrapper)
}run() 🔗
Run runs java -jar <jar> [args...] against the supplied source and returns
the program’s stdout. jar is the path to the runnable jar within source.
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | Directory ! | - | No description provided |
| jar | String ! | - | No description provided |
| args | [String ! ] | - | No description provided |
Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
run --source DIR_PATH --jar stringfunc (m *MyModule) Example(ctx context.Context, source *dagger.Directory, jar string) string {
return dag.
Java().
Run(ctx, source, jar)
}@function
async def example(source: dagger.Directory, jar: str) -> str:
return await (
dag.java()
.run(source, jar)
)@func()
async example(source: Directory, jar: string): Promise<string> {
return dag
.java()
.run(source, jar)
}toolVersion() 🔗
ToolVersion returns the JDK version banner (java -version) for the pinned
JDK. It is source-less: the version comes from New() or the module-pinned
LTS default.
Return Type
String ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
tool-versionfunc (m *MyModule) Example(ctx context.Context) string {
return dag.
Java().
Toolversion(ctx)
}@function
async def example() -> str:
return await (
dag.java()
.toolversion()
)@func()
async example(): Promise<string> {
return dag
.java()
.toolVersion()
}Gradle 🔗
Gradle wraps the Gradle build lifecycle as Dagger functions. Construct via
Java.Gradle(). The container is gradle:-jdk with ~/.gradle/caches
mounted as a shared cache volume; an in-repo gradlew is used unless
DisableWrapper forces the image’s system gradle. Every invocation passes
–no-daemon for reproducibility.
assemble() 🔗
Assemble runs gradle assemble and returns the build/libs directory (the
built jar lands there).
Return Type
Directory ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
assemblefunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.Directory {
return dag.
Java().
Gradle(source, disableWrapper).
Assemble()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.Directory:
return (
dag.java()
.gradle(source, disablewrapper)
.assemble()
)@func()
example(source: Directory, disableWrapper: boolean): Directory {
return dag
.java()
.gradle(source, disableWrapper)
.assemble()
}build() 🔗
Build runs gradle build and returns the build directory.
Return Type
Directory ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
buildfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.Directory {
return dag.
Java().
Gradle(source, disableWrapper).
Build()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.Directory:
return (
dag.java()
.gradle(source, disablewrapper)
.build()
)@func()
example(source: Directory, disableWrapper: boolean): Directory {
return dag
.java()
.gradle(source, disableWrapper)
.build()
}ci() 🔗
Ci returns a new pipeline builder bound to this Gradle tool object.
Return Type
GradleCi ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
cifunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.JavaGradleCi {
return dag.
Java().
Gradle(source, disableWrapper).
Ci()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.JavaGradleCi:
return (
dag.java()
.gradle(source, disablewrapper)
.ci()
)@func()
example(source: Directory, disableWrapper: boolean): JavaGradleCi {
return dag
.java()
.gradle(source, disableWrapper)
.ci()
}container() 🔗
Container returns the prepared Gradle container with source mounted at /work, the shared gradle-caches-cache mounted at ~/.gradle/caches (owned by the gradle user), GRADLE_USER_HOME set, and the working directory set to /work.
Return Type
Container ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
containerfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.Container {
return dag.
Java().
Gradle(source, disableWrapper).
Container()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.Container:
return (
dag.java()
.gradle(source, disablewrapper)
.container()
)@func()
example(source: Directory, disableWrapper: boolean): Container {
return dag
.java()
.gradle(source, disableWrapper)
.container()
}tasks() 🔗
Tasks runs the given Gradle tasks (plus any extra args) against the source
and returns stdout. It dispatches to the in-repo gradlew when present
unless DisableWrapper is set, and always passes –no-daemon.
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| tasks | [String ! ] ! | - | No description provided |
| args | [String ! ] | - | No description provided |
Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
tasks --tasks string1 --tasks string2func (m *MyModule) Example(ctx context.Context, source *dagger.Directory, disableWrapper bool, tasks []string) string {
return dag.
Java().
Gradle(source, disableWrapper).
Tasks(ctx, tasks)
}@function
async def example(source: dagger.Directory, disablewrapper: bool, tasks: List[str]) -> str:
return await (
dag.java()
.gradle(source, disablewrapper)
.tasks(tasks)
)@func()
async example(source: Directory, disableWrapper: boolean, tasks: string[]): Promise<string> {
return dag
.java()
.gradle(source, disableWrapper)
.tasks(tasks)
}test() 🔗
Test runs gradle test and returns stdout.
Return Type
String ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
testfunc (m *MyModule) Example(ctx context.Context, source *dagger.Directory, disableWrapper bool) string {
return dag.
Java().
Gradle(source, disableWrapper).
Test(ctx)
}@function
async def example(source: dagger.Directory, disablewrapper: bool) -> str:
return await (
dag.java()
.gradle(source, disablewrapper)
.test()
)@func()
async example(source: Directory, disableWrapper: boolean): Promise<string> {
return dag
.java()
.gradle(source, disableWrapper)
.test()
}Maven 🔗
Maven wraps the Maven build lifecycle as Dagger functions. Construct via
Java.Maven(). The container is maven:-eclipse-temurin- with
~/.m2/repository mounted as a shared cache volume; an in-repo mvnw is used
unless DisableWrapper forces the image’s system mvn.
ci() 🔗
Ci returns a new pipeline builder bound to this Maven tool object.
Return Type
MavenCi ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
cifunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.JavaMavenCi {
return dag.
Java().
Maven(source, disableWrapper).
Ci()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.JavaMavenCi:
return (
dag.java()
.maven(source, disablewrapper)
.ci()
)@func()
example(source: Directory, disableWrapper: boolean): JavaMavenCi {
return dag
.java()
.maven(source, disableWrapper)
.ci()
}compile() 🔗
Compile runs mvn compile and returns the target directory (compiled
classes land under target/classes).
Return Type
Directory ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
compilefunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.Directory {
return dag.
Java().
Maven(source, disableWrapper).
Compile()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.Directory:
return (
dag.java()
.maven(source, disablewrapper)
.compile()
)@func()
example(source: Directory, disableWrapper: boolean): Directory {
return dag
.java()
.maven(source, disableWrapper)
.compile()
}container() 🔗
Container returns the prepared Maven container with source mounted at /work, the shared maven-repository-cache mounted at /root/.m2/repository, and the working directory set to /work.
Return Type
Container ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
containerfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.Container {
return dag.
Java().
Maven(source, disableWrapper).
Container()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.Container:
return (
dag.java()
.maven(source, disablewrapper)
.container()
)@func()
example(source: Directory, disableWrapper: boolean): Container {
return dag
.java()
.maven(source, disableWrapper)
.container()
}goals() 🔗
Goals runs the given Maven goals (plus any extra args) against the source
and returns stdout. It dispatches to the in-repo mvnw when present unless
DisableWrapper is set.
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| goals | [String ! ] ! | - | No description provided |
| args | [String ! ] | - | No description provided |
Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
goals --goals string1 --goals string2func (m *MyModule) Example(ctx context.Context, source *dagger.Directory, disableWrapper bool, goals []string) string {
return dag.
Java().
Maven(source, disableWrapper).
Goals(ctx, goals)
}@function
async def example(source: dagger.Directory, disablewrapper: bool, goals: List[str]) -> str:
return await (
dag.java()
.maven(source, disablewrapper)
.goals(goals)
)@func()
async example(source: Directory, disableWrapper: boolean, goals: string[]): Promise<string> {
return dag
.java()
.maven(source, disableWrapper)
.goals(goals)
}package() 🔗
Package runs mvn package and returns the target directory (the built jar
lands under target/). Tests run by default; skipTests passes -DskipTests so
test sources still compile but are not executed.
Return Type
Directory !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| skipTests | Boolean ! | false | No description provided |
Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
package --skip-tests booleanfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool, skipTests bool) *dagger.Directory {
return dag.
Java().
Maven(source, disableWrapper).
Package(skipTests)
}@function
def example(source: dagger.Directory, disablewrapper: bool, skiptests: bool) -> dagger.Directory:
return (
dag.java()
.maven(source, disablewrapper)
.package(skiptests)
)@func()
example(source: Directory, disableWrapper: boolean, skipTests: boolean): Directory {
return dag
.java()
.maven(source, disableWrapper)
.package(skipTests)
}test() 🔗
Test runs mvn test and returns stdout.
Return Type
String ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
testfunc (m *MyModule) Example(ctx context.Context, source *dagger.Directory, disableWrapper bool) string {
return dag.
Java().
Maven(source, disableWrapper).
Test(ctx)
}@function
async def example(source: dagger.Directory, disablewrapper: bool) -> str:
return await (
dag.java()
.maven(source, disablewrapper)
.test()
)@func()
async example(source: Directory, disableWrapper: boolean): Promise<string> {
return dag
.java()
.maven(source, disableWrapper)
.test()
}verify() 🔗
Verify runs mvn verify and returns stdout.
Return Type
String ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
verifyfunc (m *MyModule) Example(ctx context.Context, source *dagger.Directory, disableWrapper bool) string {
return dag.
Java().
Maven(source, disableWrapper).
Verify(ctx)
}@function
async def example(source: dagger.Directory, disablewrapper: bool) -> str:
return await (
dag.java()
.maven(source, disablewrapper)
.verify()
)@func()
async example(source: Directory, disableWrapper: boolean): Promise<string> {
return dag
.java()
.maven(source, disableWrapper)
.verify()
}GradleCi 🔗
GradleCi is a chained builder for a standardized Gradle CI pipeline. Construct via Gradle.Ci(); enable check stages via the With* methods; call Run to execute checks-then-assemble, or Check to run only the parallel checks.
Stage 1 runs the enabled checks (Test, Check) in parallel via
github.com/dagger/dagger/util/parallel; errors are aggregated. Stage 2 runs
gradle assemble (which never runs tests) and Run returns the produced
build/libs directory for downstream pipelines to compose.
The builder reuses the parent Gradle lifecycle helpers, so wrapper handling, JDK inference, and cache mounts are inherited.
check() 🔗
Check runs the enabled check stages (Test, Check) in parallel via github.com/dagger/dagger/util/parallel and returns the aggregated error. Use when callers want to run the checks independently of the build.
Return Type
Void ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
ci \
checkfunc (m *MyModule) Example(ctx context.Context, source *dagger.Directory, disableWrapper bool) {
return dag.
Java().
Gradle(source, disableWrapper).
Ci().
Check(ctx)
}@function
async def example(source: dagger.Directory, disablewrapper: bool) -> None:
return await (
dag.java()
.gradle(source, disablewrapper)
.ci()
.check()
)@func()
async example(source: Directory, disableWrapper: boolean): Promise<void> {
return dag
.java()
.gradle(source, disableWrapper)
.ci()
.check()
}run() 🔗
Run executes the pipeline: stage 1 (Check) → stage 2 (gradle assemble).
Returns the produced build/libs directory. On stage-1 failure, returns the
aggregated error from Check and a nil directory (the build is skipped).
Return Type
Directory ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
ci \
runfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.Directory {
return dag.
Java().
Gradle(source, disableWrapper).
Ci().
Run()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.Directory:
return (
dag.java()
.gradle(source, disablewrapper)
.ci()
.run()
)@func()
example(source: Directory, disableWrapper: boolean): Directory {
return dag
.java()
.gradle(source, disableWrapper)
.ci()
.run()
}withCheck() 🔗
WithCheck enables the gradle check check stage.
Return Type
GradleCi ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
ci \
with-checkfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.JavaGradleCi {
return dag.
Java().
Gradle(source, disableWrapper).
Ci().
Withcheck()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.JavaGradleCi:
return (
dag.java()
.gradle(source, disablewrapper)
.ci()
.withcheck()
)@func()
example(source: Directory, disableWrapper: boolean): JavaGradleCi {
return dag
.java()
.gradle(source, disableWrapper)
.ci()
.withCheck()
}withTest() 🔗
WithTest enables the gradle test check stage.
Return Type
GradleCi ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
gradle --source DIR_PATH --disable-wrapper boolean \
ci \
with-testfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.JavaGradleCi {
return dag.
Java().
Gradle(source, disableWrapper).
Ci().
Withtest()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.JavaGradleCi:
return (
dag.java()
.gradle(source, disablewrapper)
.ci()
.withtest()
)@func()
example(source: Directory, disableWrapper: boolean): JavaGradleCi {
return dag
.java()
.gradle(source, disableWrapper)
.ci()
.withTest()
}MavenCi 🔗
MavenCi is a chained builder for a standardized Maven CI pipeline. Construct via Maven.Ci(); enable check stages via the With* methods; call Run to execute checks-then-package, or Check to run only the parallel checks.
Stage 1 runs the enabled checks (Test, Verify) in parallel via
github.com/dagger/dagger/util/parallel; errors are aggregated. Stage 2 runs
mvn package -DskipTests (the checks already covered testing) and Run
returns the produced target/ directory for downstream pipelines to compose.
The builder reuses the parent Maven lifecycle helpers, so wrapper handling, JDK inference, and cache mounts are inherited.
check() 🔗
Check runs the enabled check stages (Test, Verify) in parallel via github.com/dagger/dagger/util/parallel and returns the aggregated error. Use when callers want to run the checks independently of packaging.
Return Type
Void ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
ci \
checkfunc (m *MyModule) Example(ctx context.Context, source *dagger.Directory, disableWrapper bool) {
return dag.
Java().
Maven(source, disableWrapper).
Ci().
Check(ctx)
}@function
async def example(source: dagger.Directory, disablewrapper: bool) -> None:
return await (
dag.java()
.maven(source, disablewrapper)
.ci()
.check()
)@func()
async example(source: Directory, disableWrapper: boolean): Promise<void> {
return dag
.java()
.maven(source, disableWrapper)
.ci()
.check()
}run() 🔗
Run executes the pipeline: stage 1 (Check) → stage 2 (mvn package
-DskipTests). Returns the produced target/ directory. On stage-1 failure,
returns the aggregated error from Check and a nil directory (packaging is
skipped).
Return Type
Directory ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
ci \
runfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.Directory {
return dag.
Java().
Maven(source, disableWrapper).
Ci().
Run()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.Directory:
return (
dag.java()
.maven(source, disablewrapper)
.ci()
.run()
)@func()
example(source: Directory, disableWrapper: boolean): Directory {
return dag
.java()
.maven(source, disableWrapper)
.ci()
.run()
}withTest() 🔗
WithTest enables the mvn test check stage.
Return Type
MavenCi ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
ci \
with-testfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.JavaMavenCi {
return dag.
Java().
Maven(source, disableWrapper).
Ci().
Withtest()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.JavaMavenCi:
return (
dag.java()
.maven(source, disablewrapper)
.ci()
.withtest()
)@func()
example(source: Directory, disableWrapper: boolean): JavaMavenCi {
return dag
.java()
.maven(source, disableWrapper)
.ci()
.withTest()
}withVerify() 🔗
WithVerify enables the mvn verify check stage.
Return Type
MavenCi ! Example
dagger -m github.com/z5labs/devex/daggerverse/java@a17bf411228ae3d544c7c18bcf08dd04c295d453 call \
maven --source DIR_PATH --disable-wrapper boolean \
ci \
with-verifyfunc (m *MyModule) Example(source *dagger.Directory, disableWrapper bool) *dagger.JavaMavenCi {
return dag.
Java().
Maven(source, disableWrapper).
Ci().
Withverify()
}@function
def example(source: dagger.Directory, disablewrapper: bool) -> dagger.JavaMavenCi:
return (
dag.java()
.maven(source, disablewrapper)
.ci()
.withverify()
)@func()
example(source: Directory, disableWrapper: boolean): JavaMavenCi {
return dag
.java()
.maven(source, disableWrapper)
.ci()
.withVerify()
}