Skip to content

Releases: dband-drm/drm-cli

drm-cli-v1.2.0

Choose a tag to compare

@dband-drm dband-drm released this 25 Apr 23:00

What's new in v1.2.0

AI Integration

  • MCP Server — exposes 8 DRM tools to Claude via Model Context Protocol (auto-discovered via .mcp.json)
  • AI Agent — natural language interface to DRM operations (ANTHROPIC_API_KEY required)
  • Claude Code Skills/drm-deploy, /drm-status, /drm-plan, /drm-release

npm Package

Now available on npmjs.com:

npm install -g @d-band-drm/drm-cli

Improvements

  • WSL2 compatibility fixes in logger and installer modules

Upgrade

No database schema changes. Run drm-cli install -f /path/to/existing/drm to upgrade.


See full release notes in the wiki

drm-cli-v1.1.0

Choose a tag to compare

@dband-drm dband-drm released this 31 Jan 05:10
815381c

DRM-CLI Release Notes - Version 1.1.0

Overview

DRM-CLI 1.1.0 introduces comprehensive multi-database platform support with Liquibase and Flyway integration. This release significantly expands deployment capabilities to PostgreSQL and Oracle databases while maintaining full backward compatibility with existing SQL Server deployments.

DRM-CLI is a free, open-source, pure Python database release management tool designed for enterprise DevOps teams. Manage complex multi-database deployments across SQL Server, PostgreSQL, and Oracle with ease.

📦 Get Started: Visit github.com/dband-drm/drm-cli
🌐 Learn More: www.d-band.com


🎯 New Features

Database Platform Support

  • PostgreSQL Deployment - Full support for PostgreSQL databases with both Liquibase and Flyway
  • Oracle Database Deployment - Complete Oracle database support with Liquibase and Flyway integration
  • Liquibase Integration - Support for Liquibase migration tool (version 4.25.0+) as database versioning engine
  • Redgate Flyway Support - Integrated Flyway for database change management and version control

Deployment Enhancements

  • Pre & Post Deployment Scripts - Built-in mechanism for executing scripts before and after deployment (always run feature)
  • Target Database Exclusion - Ability to exclude specific target databases from deployment operations
  • Deployment Priority - Configure deployment order and priority across multiple databases

New Modules

  • modules/liquibase.py - Dedicated Liquibase integration module
  • modules/flyway.py - Dedicated Flyway integration module
  • modules/oracle.py - Oracle database connector and deployment handler
  • modules/postgresql.py - PostgreSQL database connector and deployment handler
  • modules/sqlpackage.py - Enhanced SQL Server deployment with SqlPackage support

Module Improvements

  • Builder Module - Enhanced to support multiple database platforms
  • Deploy Module - Refactored to isolate database-specific implementations
  • Validator Module - Extended validation for multi-platform deployments

🧪 Testing & Quality Assurance

Comprehensive Test Coverage

  • ✅ Oracle with Liquibase deployment tests
  • ✅ Oracle with Flyway deployment tests
  • ✅ PostgreSQL with Liquibase deployment tests
  • ✅ PostgreSQL with Flyway deployment tests
  • ✅ Linux compatibility testing for all new database platforms
  • ✅ Upgrade path testing (1.0 → 1.1)
  • ✅ Installation tests for new database connectors
  • ✅ Uninstall tests with new modules
  • ✅ Logs & tracing diagnostics verification

Demo Solutions

Six complete, tested demo solutions included:

  • SQL Server: Single and multiple database deployment examples
  • PostgreSQL: Liquibase and Flyway implementation examples
  • Oracle: Liquibase and Flyway implementation examples

Bug Fixes

Deployment

  • Fixed: Deploy retries not working with multiple databases (MSSQL, Flyway, Liquibase)
  • Fixed: Retry functionality now properly handles all target database platforms

Installation & Module Management

  • Fixed: None-existing module causing installation to skip copying remaining modules
    • Installation now validates all module files before copying
    • Graceful error handling for missing module files

Misc Bug Fixes

  • Fixed: DRM crypto utility incorrectly presenting decrypt option when not applicable
  • Fixed: Column deletion during upgrade when not explicitly marked as deleted

📋 Known Limitations

  • Linux Support: Change encryption key on Linux for Oracle/PostgreSQL combinations (Design phase - will be in future release)
  • Liquibase Remote: Docker/remote Liquibase execution support (Planned for future release)
  • Complex Releases: Complex multi-project release structures not yet fully supported on PostgreSQL/Oracle (single-project deployments fully supported)

🔄 Upgrade from 1.0.x

Upgrade Process

  1. Back up your existing DRM-CLI installation and encryption keys
  2. Run the upgrade installer pointing to your current DRM-CLI installation path
  3. Provide your encryption key when prompted (if previously encrypted)
  4. New database tables will be automatically created:
    • pre_post_script_types - Stores script type definitions
    • pre_post_deployment_projects_scripts - Stores per-project deployment scripts
  5. Enhanced schema for solutions and projects tables applied
  6. Existing SQL Server deployments remain fully compatible

Important: Always upgrade to the latest available version. Incremental upgrades from 1.0.x to 1.1.0 are fully supported.


🖥️ System Requirements

Core Requirements

  • Python 3.7+
  • Windows, Linux, or macOS

Database-Specific Requirements

  • SQL Server: SQL Server client tools / SqlPackage
  • PostgreSQL:
    • psql client
    • JDBC driver (for Liquibase)
  • Oracle:
    • Oracle JDBC driver
    • Java Runtime (for Liquibase)

Migration Tool Requirements

  • Liquibase: Version 4.25.0 or later
  • Flyway: Latest stable version

📦 Installation & Deployment

Installation

python install.py
# Follow interactive prompts or use configuration file

Upgrade

python install.py
# Point to existing installation when prompted

Configuration

  • Main config: install.config
  • Upgrade config: upgrade/1.1.0.config
  • Solution examples: DRM-cli-test-data/Solutions/ repository

🔐 Security & Encryption

  • Full backward compatibility with existing encrypted DRM installations
  • Encryption key changes supported during upgrade
  • Sensitive data masking in logs and traces

📞 Support & Resources

GitHub Repository

Official Website

  • Website: www.d-band.com
  • Product Information: Full documentation and use cases

Configuration Files

  • install.config - Installation and deployment parameters
  • upgrade/1.1.0.config - Upgrade-specific configuration
  • Solution examples in DRM-cli-test-data repository

Demo Deployments

Complete working examples are provided for:

  • MSSQL single/multiple database deployments
  • PostgreSQL with Liquibase
  • PostgreSQL with Flyway
  • Oracle with Liquibase
  • Oracle with Flyway

✅ Verification Checklist

After upgrading to 1.1.0, verify:

  • Existing SQL Server deployments work as before
  • New PostgreSQL/Oracle solutions deploy successfully
  • Pre/post deployment scripts execute correctly
  • Database exclusion feature works as expected
  • Upgrade configuration properly applied
  • Encryption key (if used) still validates correctly

Release Date: January 31, 2026
Previous Version: 1.0.x
Version: 1.1.0
Next Version: 1.2.0 (Planned - Additional platform enhancements)


Version Timeline

Version Status Key Additions
1.1.0 Current PostgreSQL, Oracle, Liquibase, Flyway
1.0.x Archived SQL Server, Basic deployment, Encryption

drm-cli-v1.0.0.0

Choose a tag to compare

@dband-drm dband-drm released this 30 Jan 14:50
Release

Merge branch 'main' of https://github.com/dband-drm/drm-cli