izumi.distage.roles
package izumi.distage.roles
Members list
Concise view
Type members
Classlikes
Attributes
- Graph
- Supertypes
- trait DebugPropertiesclass Objecttrait Matchableclass Any
- Self type
- DebugProperties.type
class RoleAppBootArgsModule[F[_]](args: ArgV, requiredRoles: RequiredRoles)(implicit evidence$1: Tag[F], evidence$2: DefaultModule[F]) extends ModuleDef
Attributes
- Graph
- Supertypes
- trait ModuleDeftrait ModuleDefDSLtrait TagsDSLtrait IncludesDSLtrait AbstractBindingDefDSL[MakeDSL, MakeDSLUnnamedAfterFrom, SetDSL]trait AbstractBindingDefDSLMacro[MakeDSL]trait Moduletrait ModuleBasetrait CachedHashcodeclass Objecttrait Matchableclass Any
class RoleAppBootConfigModule[F[_]]()(implicit evidence$1: Tag[F], evidence$2: DefaultModule[F]) extends ModuleDef
Attributes
- Graph
- Supertypes
- trait ModuleDeftrait ModuleDefDSLtrait TagsDSLtrait IncludesDSLtrait AbstractBindingDefDSL[MakeDSL, MakeDSLUnnamedAfterFrom, SetDSL]trait AbstractBindingDefDSLMacro[MakeDSL]trait Moduletrait ModuleBasetrait CachedHashcodeclass Objecttrait Matchableclass Any
class RoleAppBootLoggerModule[F[_]]()(implicit evidence$1: Tag[F], evidence$2: DefaultModule[F]) extends ModuleDef
Attributes
- Graph
- Supertypes
- trait ModuleDeftrait ModuleDefDSLtrait TagsDSLtrait IncludesDSLtrait AbstractBindingDefDSL[MakeDSL, MakeDSLUnnamedAfterFrom, SetDSL]trait AbstractBindingDefDSLMacro[MakeDSL]trait Moduletrait ModuleBasetrait CachedHashcodeclass Objecttrait Matchableclass Any
class RoleAppBootModule[F[_]](shutdownStrategy: AppShutdownStrategy[F], pluginConfig: PluginConfig, bootstrapPluginConfig: PluginConfig, appArtifact: IzArtifact, unusedValidAxisChoices: Set[AxisChoice])(implicit evidence$1: Tag[F], evidence$2: DefaultModule[F]) extends ModuleDef
This module is only used by the application launcher, but NOT by distage-testkit
This module is only used by the application launcher, but NOT by distage-testkit
Application flow:
- Parse commandline parameters
- Create "early logger" (console sink & configurable log level)
- Show startup banner
- Load raw config
- Create "late logger" using config
- Enumerate app plugins and bootstrap plugins
- Enumerate available roles, show role info and and apply merge strategy/conflict resolution
- Validate loaded roles (for non-emptyness and conflicts between bootstrap and app plugins)
- Build plan for izumi.functional.quasi.QuasiIORunner
- Build plan for integration checks
- Build plan for application
- Run role tasks
- Run role services
- Await application termination
- Run finalizers
- Shutdown executors
Attributes
- Graph
- Supertypes
- trait ModuleDeftrait ModuleDefDSLtrait TagsDSLtrait IncludesDSLtrait AbstractBindingDefDSL[MakeDSL, MakeDSLUnnamedAfterFrom, SetDSL]trait AbstractBindingDefDSLMacro[MakeDSL]trait Moduletrait ModuleBasetrait CachedHashcodeclass Objecttrait Matchableclass Any
class RoleAppBootPlatformModule[F[_]]()(implicit evidence$1: Tag[F], evidence$2: DefaultModule[F]) extends ModuleDef
Attributes
- Graph
- Supertypes
- trait ModuleDeftrait ModuleDefDSLtrait TagsDSLtrait IncludesDSLtrait AbstractBindingDefDSL[MakeDSL, MakeDSLUnnamedAfterFrom, SetDSL]trait AbstractBindingDefDSLMacro[MakeDSL]trait Moduletrait ModuleBasetrait CachedHashcodeclass Objecttrait Matchableclass Any
abstract class RoleAppMain[F[_]](implicit val tagK: Tag[F], val defaultModule: DefaultModule[F], val artifact: IzArtifactMaterializer) extends RoleCheckableApp[F]
Create a launcher for role-based applications by extending this in a top-level object
Create a launcher for role-based applications by extending this in a top-level object
Attributes
- See also:
- Example:
import izumi.distage.framework.RoleAppMain import izumi.distage.plugins.PluginConfig object RoleLauncher extends RoleAppMain.LauncherBIO[zio.IO] { override def pluginConfig: PluginConfig = { PluginConfig.cached(pluginsPackage = "my.example.app.plugins") } }
- Companion:
- object
- Graph
- Supertypes
- Known subtypes
object RoleAppMain
Attributes
- Companion:
- class
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
- Self type
- RoleAppMain.type