A plugin for CumulusCI supporting Azure DevOps integration.
- Integrates Azure DevOps pipelines with CumulusCI
- Provides tasks and utilities for Azure DevOps automation
For the best experience, use our custom installation script that checks for conflicts:
# Download and run the installation script
curl -O https://raw.githubusercontent.com/jorgesolebur/CumulusCI_AzureDevOps/main/install.py
python install.pyOption 1: Install main app, then inject plugin (recommended)
# Install cumulusci-plus first to get cci and snowfakery commands
pipx install cumulusci-plus
# Inject the plugin into the same environment for proper plugin discovery
pipx inject cumulusci-plus cumulusci-plus-azure-devops --include-appsOption 2: Single installation with dependency scripts
# Install with --include-deps to expose dependency console scripts
pipx install cumulusci-plus-azure-devops --include-depsOption 3: Basic installation (Azure DevOps plugin only)
pipx install cumulusci-plus-azure-devopsWhy Option 1 is recommended: CumulusCI plugins need to be in the same environment as the main application for proper plugin discovery. Using
pipx injectensures the plugin is installed in the same virtual environment ascumulusci-plus.
pip install cumulusci-plus-azure-devopsUse our custom upgrade script for the best experience:
# Download and run the upgrade script
curl -O https://raw.githubusercontent.com/jorgesolebur/CumulusCI_AzureDevOps/main/upgrade.py
python upgrade.pyFor injected installations (recommended method):
# Upgrade main package and update plugin
pipx upgrade cumulusci-plus
pipx inject cumulusci-plus cumulusci-plus-azure-devops --include-apps --force
# Or force reinstall everything
pipx uninstall cumulusci-plus
pipx install cumulusci-plus
pipx inject cumulusci-plus cumulusci-plus-azure-devops --include-appsFor --include-deps installations:
# Standard upgrade
pipx upgrade cumulusci-plus-azure-devops
# Or force reinstall
pipx uninstall cumulusci-plus-azure-devops
pipx install cumulusci-plus-azure-devops --include-depsThe upgrade process varies depending on how you installed the package. Our upgrade script:
- ✅ Detects installation method (injected vs main package vs unknown)
- ✅ Applies correct upgrade process for each method
- ✅ Handles plugin discovery properly for injected installations
- ✅ Checks current dependency versions before and after upgrade
- ✅ Provides installation-specific guidance and next steps
- ✅ Ensures dependencies are updated to latest versions
Installation Method Detection:
- Injected: Plugin installed via
pipx inject(recommended) ✅ - Main Package: Plugin installed via
--include-deps✅ - Unknown: Fallback for edge cases
⚠️
- Plugin Discovery: For CumulusCI to discover and use this plugin, it must be installed in the same environment as
cumulusci-plus. This is why Option 1 (usingpipx inject) is recommended. - Conflict Warning: This package is designed to work with
cumulusci-plus(version 5.0.0+), not the originalcumuluscipackage. Having both installed may cause conflicts. - pipx vs pip: We recommend using
pipxfor CLI tools as it provides better isolation and prevents dependency conflicts. - Dependencies: All required dependencies (including
cumulusci-plus,azure-devops, etc.) are automatically installed. - Console Scripts: After installation, you'll have access to these commands:
cciandsnowfakery(from cumulusci-plus)cumulusci-adoandcci-ado(from this plugin)
From cumulusci-plus:
cci- Main CumulusCI commandsnowfakery- Data generation tool
From this plugin:
cumulusci-ado- Azure DevOps plugin CLIcci-ado- Short alias for plugin CLI
✅ Plugin is discoverable when:
- Installed via
pipx inject(Option 1) - Installed via
--include-deps(Option 2)
❌ Plugin is NOT discoverable when:
- Installed as separate pipx packages
- Main app and plugin are in different environments
When the plugin is properly discoverable, you can use it in your cumulusci.yml configuration and CumulusCI will automatically find and load it.
After installation, you can use these commands to manage the plugin:
# Check plugin installation status
cumulusci-ado status
# Show version information
cumulusci-ado version
# Get help
cumulusci-ado help
# Short alias versions
cci-ado status
cci-ado version
cci-ado helpAdd the plugin to your cumulusci.yml:
plugins:
azure_devops:
path: cumulusci_adoOr use via the CumulusCI CLI if installed as a package. The plugin will automatically integrate with CumulusCI when installed.
- Requires Python 3.11+
- See CONTRIBUTING.md for development guidelines (if available)
GNU General Public License v3.0