Dagger
Search

flutter-container

Provides functions for building Flutter Docker images (flutter, android, emulator stages).
Images are pre-configured with sensible defaults; versions can be overridden via
WithFlutterVersion and WithAndroidVersion.

Installation

dagger install github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069

Entrypoint

Return Type
FlutterContainer !
Example
dagger -m github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069 call \
func (m *MyModule) Example() *dagger.FlutterContainer  {
	return dag.
			FlutterContainer()
}
@function
def example() -> dagger.FlutterContainer:
	return (
		dag.flutter_container()
	)
@func()
example(): FlutterContainer {
	return dag
		.flutterContainer()
}

Types

FlutterContainer 🔗

flutterVersion() 🔗

Flutter SDK version tag (e.g. “3.41.9”).

Return Type
String !
Example
dagger -m github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069 call \
 flutter-version
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			FlutterContainer().
			FlutterVersion(ctx)
}
@function
async def example() -> str:
	return await (
		dag.flutter_container()
		.flutter_version()
	)
@func()
async example(): Promise<string> {
	return dag
		.flutterContainer()
		.flutterVersion()
}

androidVersion() 🔗

Android platform API level for the emulator system image (e.g. “36”).

Return Type
String !
Example
dagger -m github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069 call \
 android-version
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			FlutterContainer().
			AndroidVersion(ctx)
}
@function
async def example() -> str:
	return await (
		dag.flutter_container()
		.android_version()
	)
@func()
async example(): Promise<string> {
	return dag
		.flutterContainer()
		.androidVersion()
}

android() 🔗

Android returns a container with the Flutter SDK and Android tools installed. When platform is not specified, the engine’s native platform is used.

Return Type
Container !
Arguments
NameTypeDefault ValueDescription
platformScalar -No description provided
Example
dagger -m github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069 call \
 android
func (m *MyModule) Example() *dagger.Container  {
	return dag.
			FlutterContainer().
			Android()
}
@function
def example() -> dagger.Container:
	return (
		dag.flutter_container()
		.android()
	)
@func()
example(): Container {
	return dag
		.flutterContainer()
		.android()
}

emulator() 🔗

Emulator returns a container with Flutter, Android tools, and a pre-created AVD.

The ABI is automatically selected based on platform: - linux/amd64 → x86_64 - linux/arm64 → arm64-v8a

When platform is not specified, the engine’s native platform is used.

Return Type
Container !
Arguments
NameTypeDefault ValueDescription
platformScalar -No description provided
Example
dagger -m github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069 call \
 emulator
func (m *MyModule) Example() *dagger.Container  {
	return dag.
			FlutterContainer().
			Emulator()
}
@function
def example() -> dagger.Container:
	return (
		dag.flutter_container()
		.emulator()
	)
@func()
example(): Container {
	return dag
		.flutterContainer()
		.emulator()
}

flutter() 🔗

Flutter returns a container with the Flutter SDK installed (ubuntu:24.04 base). When platform is not specified, the engine’s native platform is used.

Return Type
Container !
Arguments
NameTypeDefault ValueDescription
platformScalar -No description provided
Example
dagger -m github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069 call \
 flutter
func (m *MyModule) Example() *dagger.Container  {
	return dag.
			FlutterContainer().
			Flutter()
}
@function
def example() -> dagger.Container:
	return (
		dag.flutter_container()
		.flutter()
	)
@func()
example(): Container {
	return dag
		.flutterContainer()
		.flutter()
}

publish() 🔗

Publish builds multi-arch Flutter images and pushes them to a container registry.

Publishes three tags: - flutter: — flutter base (ubuntu + Flutter SDK) - flutter:-android — android base (flutter + Android SDK - flutter:-emulator — emulator (android + emulator + AVD, per-platform ABI)

Returns the digest of the published flutter base image.

Return Type
String !
Arguments
NameTypeDefault ValueDescription
registryString !-No description provided
usernameString !-No description provided
passwordSecret !-No description provided
platformsString "linux/amd64,linux/arm64"No description provided
Example
dagger -m github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069 call \
 publish --registry string --username string --password env:MYSECRET
func (m *MyModule) Example(ctx context.Context, registry string, username string, password *dagger.Secret) string  {
	return dag.
			FlutterContainer().
			Publish(ctx, registry, username, password)
}
@function
async def example(registry: str, username: str, password: dagger.Secret) -> str:
	return await (
		dag.flutter_container()
		.publish(registry, username, password)
	)
@func()
async example(registry: string, username: string, password: Secret): Promise<string> {
	return dag
		.flutterContainer()
		.publish(registry, username, password)
}

withAndroidVersion() 🔗

WithAndroidVersion returns this module configured to use the given Android API level.

Return Type
FlutterContainer !
Arguments
NameTypeDefault ValueDescription
versionString !-No description provided
Example
dagger -m github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069 call \
 with-android-version --version string
func (m *MyModule) Example(version string) *dagger.FlutterContainer  {
	return dag.
			FlutterContainer().
			WithAndroidVersion(version)
}
@function
def example(version: str) -> dagger.FlutterContainer:
	return (
		dag.flutter_container()
		.with_android_version(version)
	)
@func()
example(version: string): FlutterContainer {
	return dag
		.flutterContainer()
		.withAndroidVersion(version)
}

withFlutterVersion() 🔗

WithFlutterVersion returns this module configured to use the given Flutter version.

Return Type
FlutterContainer !
Arguments
NameTypeDefault ValueDescription
versionString !-No description provided
Example
dagger -m github.com/daniel-naegele/daggerverse/flutter-container@c1726f379484cbd7c24af3b1997e5cac894db069 call \
 with-flutter-version --version string
func (m *MyModule) Example(version string) *dagger.FlutterContainer  {
	return dag.
			FlutterContainer().
			WithFlutterVersion(version)
}
@function
def example(version: str) -> dagger.FlutterContainer:
	return (
		dag.flutter_container()
		.with_flutter_version(version)
	)
@func()
example(version: string): FlutterContainer {
	return dag
		.flutterContainer()
		.withFlutterVersion(version)
}