LogoLogo
Home
Core Platform
Core Platform
  • Introduction
    • Overview
    • Use Cases
    • Architecture
    • Built with ML & AI
    • Quick Start
  • Examples
    • Training Examples
      • API Flow Examples
      • Microservice Examples
      • UI Example
      • Exercise: Hello World API
      • Exercise: Test State
      • Exercise: Test UI
    • Exercise: To-do List
      • To-do List Runner
      • To-do List Gateway
      • To-do List UI
      • To-do List Query
  • Troubleshooting
    • Rierino Packages
    • Release Notes
    • Useful Checks
    • Error Codes
  • Devops
    • Overview
    • API Flows
      • Using the Saga Screen
      • Defining a Saga
      • Configuring Saga Steps
        • Event Step
        • Transform Step
          • Transform Classes
        • Condition Step
          • Condition Classes
        • Step Link
      • Injecting Variables
    • Microservices
      • Runners
        • Using the Runner Screen
        • Defining a Runner
        • Managing Runner Settings
        • Adding Runner Elements
        • Deploying Runners
          • Spring Runners
          • Samza Runners
          • Camel Runners
      • Elements
        • Systems
        • State Managers
          • Typical Use Cases
          • State Data Structure
          • Local States
            • In-Memory Map
            • Caffeine Cache
            • Samza Based
            • Lucene Based
            • Single File
            • Multiple Files
            • Selected IDs Map
            • Indexed Map
          • Shared States
            • MongoDB Collection
            • Jooq (SQL) Table
            • Redis Map
            • Couchbase Collection
            • Elasticsearch Index
            • Elasticsearch Joined
            • Etcd Namespace
          • Specialized States
            • CRUD Service
            • Odata Service
          • State Coordinators
            • Lazy Cache Coordinator
            • Event Store Coordinator
            • Write thru Coordinator
          • Loading Strategies
          • ID Generators
        • Listeners
        • Query Managers
          • MongoDB
          • Elasticsearch
          • Lucene
          • SQL Based
          • Odata Service
        • Handlers
          • Core Handlers
            • Write Data
            • Read Data
            • Query Data
            • Apply Rules
            • Call Rest API
            • Generate Text/Html
            • Parse Html
            • Generate Secrets
            • Orchestrate User Task
            • Perform File Operation
            • Run Shell Command
            • Send/Receive Emails
          • Custom Code Handlers
            • Run Scripts
            • Run Java Code
            • Run Java Package
          • Flow Handlers
            • Orchestrate Saga
            • Loop Each Entry
            • Run Multiple Steps
            • Buffer Payloads
            • Merge Parallel Steps
            • Log Event
            • Send Event
            • Validate Event
            • Transform Event
            • Perform DB Transaction
            • Trigger Runner Command
            • Do Nothing
            • Modify Role Data
            • Enrich Role Data
            • Convert Pulse to Journal
          • Gateway Handlers
            • Authenticate
              • No Authentication
              • State Based
              • Keycloak Based
            • Sessionize
          • Specialized Handlers
            • Apply Advanced Rules
            • Calculate Real-time Metrics
            • Score ML Models
            • Score LangChain Models
            • Service MCP Requests
            • Service A2A Requests
            • Consume Web of Things
            • Perform Text Embedding
            • Run Python Procedure
            • Generate Excel
            • Generate PDF
            • Call SOAP API
            • Integrate with Camel
        • Actions
        • Streams
          • Kafka Topic
          • CDC Feed
          • Camel Component
        • Roles
        • Generic Settings
        • Global Settings
      • Deployments
        • Defining a Deployment
        • Alternative Loaders
    • Gateway & Security
      • Gateway Servers
        • Gateway Systems
        • Gateway Channels
        • Gateway Services
        • Gateway Tokens
      • APIs
        • OpenAPI Specification
        • Response Formats
    • Administration
      • Managing Deployments
      • Sending Commands
      • Streaming Messages
      • Migrating Assets
    • Batch Tasks
      • Python Processes
      • Python Iterators
      • Python Processors
    • Pro-Code
      • Custom Handlers
      • Custom State Managers
      • Custom Query Managers
      • Custom CDC Managers
  • Design
    • Overview
    • User Interface
      • Apps
      • UIs
        • Listers
        • Widgets
          • Value Widgets
          • Array Widgets
          • Object Widgets
          • Indirect Widgets
          • Atom Widgets
        • Menus
          • Lister Menu Actions
          • Selection Menu Actions
          • Editor Menu Actions
          • Widget Menu Actions
          • Custom Menu Actions
          • RAI Menu Actions
        • Extended Scope
          • Conditional Display
          • Data Context
          • Extra Data
          • Default Item
          • Extra Events
      • Options
      • Translations
      • Icons
      • Styles
      • Components
    • API Mapping
    • Data Schema
      • Common Data
  • Configuration
    • Overview
    • Queries
      • Query Types
      • Query Platforms
        • MongoDB Queries
        • Odata Queries
        • SQL Queries
        • Elasticsearch Queries
        • Lucene Queries
        • Siddhi Queries
    • Business Rules
      • Drools Rules
    • Dynamic Handlers
  • Data Science
    • Overview
    • ML Models
      • Scheduler Platforms
        • Airflow Scheduler
    • GenAI Models
    • MCP Servers
    • Complex Event Processing
      • Siddhi Data Flows
    • Data Visualizations
    • Customizations
  • EXTENSIONS
    • JMESPath
    • Handlebars
Powered by GitBook

© Rierino Software Inc. 2025. All rights reserved.

On this page
  • Element Loaders
  • NoopElementLoader
  • StateElementLoader
  • Key-Value Loader
  • Value Loaders
  • Secret Loaders
  • Loader Types
  1. Devops
  2. Microservices
  3. Deployments

Alternative Loaders

Runner deployments utilize element, value and secret loaders for loading their configurations and key-value lookups, which are highly customizable

It is possible to define any number and type of new loaders with specialized configurations, and typical loaders deployed with Rierino are described in this section.

Loader configurations are predefined and automatically populated in a typical Rierino deployment. This section provides information for possibilities in setting up a completely isolated development or testing environment on a local machine.

Element Loaders

Element loaders are used for loading runner members (such as systems, handlers, states) from a source, defined by "rierino.config.loader.class" property.

NoopElementLoader

This loader (com.rierino.runner.loader.NoopElementLoader) uses only local properties file and does not load any additional elements from a source.

StateElementLoader

This loader (com.rierino.runner.loader.StateElementLoader) uses a state manager, for loading elements, with the following configuration parameters:

Setting
Definition
Example
Default

rierino.config.loader.state.manager

Fully qualified name of the state manager class

com.rierino.state.manager.MongoStateManager

-

rierino.config.loader.system.*

Parameters for loader state manager's system

db=devops

-

rierino.config.loader.runner.*

Parameters for the "runner" state manager

collection=runner

-

rierino.config.loader.element.*

Parameters for the "element" state manager

collection=element

-

Key-Value Loader

KV loaders are used for loading values and secrets that are injected into element parameters. Two types of KV loaders are used for runners:

Value Loaders

Value loaders are used to replace ${{VARIABLE}} parameters. The loader to be used is defined by the "rierino.value.loader.class" property.

Secret Loaders

Secret loaders are used to replace #{{VARIABLE}} parameters. The loader to be used is defined by the "rierino.secret.loader.class" property.

Loader Types

EnvironmentKVLoader

This loader (com.rierino.runner.loader.EnvironmentKVLoader) loads VARIABLE from system environment variables.

FileKVLoader

This loader (com.rierino.runner.loader.FileKVLoader) loads VARIABLE from a text file with two options based on "rierino.*.loader.singleDir" parameter:

  • Single Directory: Reads from [root]/[key1.key2] file for VARIABLE=key1.key2

  • Not a Single Directory: Reads from [root]/[key1]/[key2] file for VARIABLE=key1.key2

where [root] is defined by "rierino.*.loader.root" parameter.

PropertiesKVLoader

This loader(com.rierino.runner.loader.PropertiesKVLoader) loads VARIABLE from a which is defined by "rierino.*.loader.path" parameter. It also has a "rierino.*.loader.dynamic" parameter, which forces values to be looked up each time from the file when set to "true".

Certain runner elements support "ephemeral" parameters, which are refreshed each time the element is reconnected (e.g. after a database connection failure). These parameters are defined using $!{{VARIABLE}} and #!{{VARIABLE}}.

An additional convention exists for allowing use of environment variables for any value or secret, by adding a question mark before the variable name (e.g. #{{?VARIABLE}} or ${{?VARIABLE}}).

PreviousDefining a DeploymentNextGateway & Security

Last updated 1 year ago