Skip to content
Guides>Deployments

Deployments

Deployments in MetaKraftwerk provide a comprehensive framework for automating the distribution and execution of build results across different environments and platforms. The deployment system enables seamless transfer of generated files and objects from MetaKraftwerk to target systems, ensuring consistent and reliable deployment processes across various data integration technologies.

A deployment in MetaKraftwerk is defined within the pattern configuration and specifies which created files from build operations are deployed to which target environment. The deployment definition determines how build results are automatically distributed to configured target systems through selected APIs and connections.

Core Concepts

Deployment Definition

A deployment is defined within the pattern configuration and specifies:

  • Target Environment: The destination platform or system for build results
  • API/Connection Selection: The specific API or connection used for deployment operations
  • File Mapping: Which created files are deployed to which target locations
  • Object Handling: Configuration for existing objects (retain/overwrite policies)
  • Automation Settings: Automatic execution parameters following build completion

Build Result Deployment

Deployments in MetaKraftwerk are specifically designed to handle build results - the files and objects generated during the build process. When a build completes successfully, the deployment system automatically processes the generated artifacts according to the defined deployment configurations.

API and Connection-Based Architecture

Each deployment must specify an API or connection that will be used for the deployment operation. The selected connection type determines:

  • Available Configuration Options: Different connection types provide different deployment settings
  • Object Handling Policies: How existing objects in the target environment are managed
  • Authentication and Security: Connection-specific security and authentication requirements
  • Target System Integration: Platform-specific integration capabilities and limitations

Automatic Deployment

MetaKraftwerk supports automatic deployment functionality through the "Deploy objects after build" option. When enabled, this feature automatically triggers deployment processes immediately following successful build operations, ensuring seamless integration between development and deployment phases.

Agent-Based Deployment

Many deployment types utilize agent-based architecture where deployment agents handle the actual transfer and execution of objects on target systems. This approach provides:

  • Distributed Processing: Agents can be deployed close to target systems
  • Secure Communication: Encrypted communication channels between MetaKraftwerk and agents
  • Offline Capability: Agents can queue deployments when connectivity is intermittent
  • Load Distribution: Multiple agents can handle concurrent deployment operations

Deployment Types

MetaKraftwerk supports four main deployment types, each optimized for specific target platforms and use cases:

1. API Deployment

Purpose: Deploy objects through API-based integrations to various cloud and enterprise platforms

Key Features:

  • REST/SOAP Integration: Support for modern API standards
  • Cloud Platform Support: Integration with cloud-based data management platforms
  • Authentication: Support for various authentication methods (OAuth, API keys, etc.)
  • Real-time Deployment: Immediate deployment through API calls
  • Response Handling: Automatic handling of API responses and error conditions

Use Cases:

  • Cloud platform deployments (IDMC, Azure, AWS)
  • SaaS application integration
  • Modern API-driven architectures
  • Real-time data pipeline deployment

2. Git Deployment

Purpose: Version control integration and code repository management

Key Features:

  • Repository Integration: Direct integration with Git repositories
  • Branch Management: Support for different branch strategies
  • File-Based Deployment: Deployment of generated files to repository locations
  • Collaboration Support: Multi-developer workflow integration

Configuration Parameters:

  • Git repository connection details
  • Branch selection and merge strategies
  • File to target folder mappings

Use Cases:

  • DevOps integration
  • Continuous integration/continuous deployment (CI/CD)
  • Code versioning and collaboration
  • Automated testing pipeline integration

3. Database Deployment

Purpose: Direct deployment of database objects and scripts to target database systems

Key Features:

  • Multi-Platform Support: Support for various database systems (Snowflake, Oracle, SQL Server, PostgreSQL, etc.)
  • Schema Management: Automated schema creation and updates
  • Script Execution: Automated execution of SQL scripts and procedures
  • Connection Management: Secure database connection handling
  • Transaction Control: Rollback capability for failed deployments

Configuration Parameters:

  • Target database connections
  • Schema and user mappings
  • Execution order and dependencies
  • Error handling and rollback strategies
  • Object handling policies (retain/overwrite)

Deployment Objects:

  • Table creation scripts
  • Stored procedures and functions
  • Data migration scripts
  • Index and constraint definitions

Use Cases:

  • Data warehouse deployment
  • Database schema updates
  • Data migration automation
  • Database object synchronization

4. Deployment Group

Purpose: Orchestrate multiple deployments as a coordinated group operation

Key Features:

  • Sequential Execution: Ordered execution of child deployments
  • Parallel Processing: Concurrent execution where dependencies allow
  • Multi-Type Support: Combination of API, Git, and Database deployments
  • Dependency Management: Handling of inter-deployment dependencies
  • Error Handling: Comprehensive error handling and rollback strategies
  • Monitoring: Centralized monitoring of group deployment status

Group Types:

  • SEQUENTIAL: Child deployments execute in defined order
  • PARALLEL: Child deployments execute concurrently
  • CONDITIONAL: Execution based on conditions and dependencies

Child Deployment Management:

  • Add/remove child deployments from any of the three main types (API, Git, Database)
  • Define execution order and priorities
  • Configure error handling strategies
  • Set up dependency relationships

Use Cases:

  • Complex multi-platform deployments
  • Coordinated deployment across different systems
  • Enterprise deployment workflows
  • Automated deployment pipelines with multiple targets

Creating Deployments

Pattern-Based Deployment Configuration

Deployments are defined within the pattern configuration, creating a direct relationship between patterns and their target deployment environments. This approach ensures that each pattern can have customized deployment strategies appropriate for its specific requirements.

Step 1: Access Pattern Configuration

  1. Navigate to the pattern where you want to configure deployments
  2. Access the pattern's deployment configuration section
  3. Review existing deployments or create new deployment definitions

Step 2: Define Deployment Specifications

The deployment definition process involves specifying:

  1. API/Connection Configuration: Select the appropriate API or connection for deployment operations
  2. Build Result Mapping: Identify which files created during the build process should be deployed
  3. Target Environment Selection: Choose the destination environment for the build results

API/Connection Selection Process

Step 1: Choose Deployment API/Connection

Select from available APIs and connections based on your target environment:

  • Database Connections: For direct database deployments
  • Cloud APIs: For cloud platform deployments (IDMC, Synapse, etc.)
  • Version Control APIs: For Git repository deployments
  • ETL Platform APIs: For PowerCenter, Informatica, or other ETL tools

Step 2: Configure Connection-Specific Settings

Depending on the selected connection type, configure additional parameters:

Object Handling Policies:

  • Retain: Preserve existing objects in target environment
  • Overwrite: Replace existing objects with new build results
  • Merge: Combine existing objects with new deployments
  • Version: Create versioned deployments maintaining object history

Environment-Specific Configuration:

  • Target folder or schema specifications
  • Security and authentication parameters
  • Performance and resource allocation settings
  • Error handling and rollback procedures

Automatic Deployment Configuration

Enable Automatic Deployment: Deployments can be configured for automatic execution immediately following successful build operations:

  1. Activation: Enable "Deploy objects after build" option in deployment configuration
  2. Trigger Conditions: Define conditions that must be met for automatic deployment
  3. Build Integration: Automatic deployment triggers only after successful build completion
  4. Error Handling: Configure behavior when automatic deployment encounters errors

Benefits of Automatic Deployment:

  • Immediate Distribution: Build results are immediately available in target environments
  • Reduced Manual Effort: Eliminates manual deployment steps from development workflow
  • Consistency: Ensures all successful builds are consistently deployed
  • Integration: Seamless integration between development and deployment phases

Integration with Release Management

Deployments work seamlessly with MetaKraftwerk's Release Management system:

Release-Specific Deployments

  • Release Context: Deployments operate within specific release contexts
  • Version Control: Automatic version control integration with release states
  • Branch Management: Support for release-specific branching strategies
  • Merge Operations: Coordinated deployment of merged changes

Automated Workflows

  • Build Integration: Automatic deployment triggers following successful builds
  • Release Pipelines: Integration with release promotion pipelines
  • Quality Gates: Deployment gates based on quality and validation criteria
  • Approval Workflows: Integration with approval and governance processes