Core Concepts
Migration Assistant
What is Migration Assistant?
Preview Feature
Migration Assistant is currently in preview. The feature is marked as "Preview" in the dashboard header while we gather feedback and refine the experience.
Migration Assistant helps you migrate legacy CI/CD systems to GitHub Actions workflows. It ingests data from your existing CI/CD platform, walks you through a mapping wizard, and produces CodeCargo workspaces ready for AI-assisted conversion to GitHub Actions.
Currently supported source systems:
- Jenkins - Import jobs, pipelines, plugins, and credentials
The data model and UI are designed to be source-agnostic, making it straightforward to add support for additional CI/CD platforms in the future.
Getting Started
Access Migration Assistant from the organization sidebar under Migration Assistant. The main interface provides three ways to work with migrations:
Dashboard
View all imported migration data with statistics, filters, and inline editing capabilities:
- Summary statistics - jobs imported, mappings configured, repositories matched
- Filter controls - search by job name, filter by status or repository
- Inline mapping edits - update repository and migration mappings directly from the dashboard
- Per-job migration launch - trigger "Migrate in Editor" for individual jobs
Import Wizard
The import process follows a structured workflow:
- Upload - Import data from your legacy CI/CD system
- Review - Examine imported jobs, plugins, and credentials
- Repository Mapping - Match legacy jobs to GitHub repositories
- Reusable Building Blocks - Identify common patterns for reuse
- Plugin & Credential Mappings - Map legacy plugins to GitHub Actions
- Migration Mappings - Configure job-level migration settings
- Confirm - Review summary and complete the import
The confirmation step shows at-a-glance summary cards with net changes, configured mappings, and jobs ready for migration.
Migrate
Launch individual job migrations into the GenAI Editor for AI-assisted conversion to GitHub Actions.
Jenkins Import
Migration Assistant includes a dedicated Jenkins importer that extracts comprehensive data from your Jenkins instance.
What Gets Imported
- Jobs and Pipelines - All job configurations and pipeline definitions
- Plugins - Installed plugins and their configurations
- Credentials - Credential definitions (values are not imported for security)
- Shared Libraries - Global pipeline libraries
- System Configuration - Relevant Jenkins system settings
Import Methods
JSON Upload
Upload a pre-exported JSON file containing your Jenkins data:
- Navigate to Migration Assistant → Import → JSON
- Upload your Jenkins export file
- Follow the mapping wizard to configure your migration
Direct Jenkins Connection
Connect directly to your Jenkins instance for live data import:
- Navigate to Migration Assistant → Import → Jenkins
- Provide your Jenkins URL and authentication credentials
- The importer will extract data directly from your Jenkins API
Security
When connecting directly to Jenkins, only metadata and configuration are imported. Sensitive credential values are never extracted or stored.
Mapping Wizard
The mapping wizard guides you through configuring how your legacy CI/CD data translates to GitHub Actions.
Repository Mapping
Match Jenkins jobs to GitHub repositories using:
- Fuzzy matching - Automatic suggestions based on job names and repository names
- Manual selection - Choose specific repositories from your connected GitHub organization
- Bulk operations - Apply mappings to multiple jobs at once
Plugin Mappings
Map Jenkins plugins to equivalent GitHub Actions:
- Suggested mappings - Common plugin-to-action mappings are pre-configured
- Custom mappings - Define your own mappings for organization-specific plugins
- Action parameters - Configure how plugin settings translate to action inputs
Credential Mappings
Map Jenkins credentials to GitHub Secrets:
- Secret naming - Define how Jenkins credential IDs map to GitHub Secret names
- Scope mapping - Choose repository-level or organization-level secrets
- Security notes - Guidance on recreating sensitive credentials in GitHub
Migration Settings
Configure job-level migration preferences:
- Workflow naming - How Jenkins job names become GitHub workflow file names
- Trigger mapping - How Jenkins triggers translate to GitHub workflow triggers
- Environment mapping - Map Jenkins build environments to GitHub environments
Service Catalog Integration
Migration Assistant integrates with the Service Catalog to provide visibility into your migration progress:
Migration Nodes
- Migration Assistant Container nodes - Represent the overall migration project
- Migration Assistant Job nodes - Individual jobs from your legacy CI/CD system
- Dependency visualization - See relationships between migrated and existing workflows
Graph Views
Migration components appear in both:
- Organization graph - Overall migration progress across your organization
- Per-service detail graph - Migration status for specific services and repositories
AI-Assisted Migration
Once your data is imported and mapped, use the GenAI Editor's migration mode for AI-assisted conversion.
Migration Mode Features
Enhanced Context
- Source-specific system prompts (Jenkins-aware AI assistance)
- Access to original source files (Jenkinsfiles, plugin configurations)
- Migration mapping context for accurate conversions
Specialized File Tree
- Source-side nodes showing original CI/CD files
- GitHub Actions workflow files for comparison
- Migration mapping references
Custom Syntax Support
- Jenkinsfile syntax highlighting with custom Monarch tokenizer
- GitHub Actions YAML with migration-aware suggestions
- Side-by-side comparison views
Migration Workflow
- Select a job from the Migration Assistant dashboard
- Click "Migrate in Editor" to open the GenAI Editor in migration mode
- Review the source - examine the original Jenkins job configuration
- Use AI assistance - ask the Expert Workflow Agent to convert the job to GitHub Actions
- Refine and test - iterate on the generated workflow with AI help
- Create pull request - submit the new GitHub Actions workflow for review
Migration Context
The AI agent has full context of your migration mappings, so it can automatically apply your plugin-to-action mappings and credential references when generating GitHub Actions workflows.
Best Practices
Before You Start
- Audit your Jenkins instance - Review active vs. inactive jobs
- Document custom plugins - Note any organization-specific plugins that need special handling
- Plan repository structure - Decide how Jenkins jobs map to your GitHub repository organization
- Prepare credentials - Plan how to recreate sensitive credentials in GitHub Secrets
During Migration
- Start with simple jobs - Begin with basic build jobs before tackling complex pipelines
- Validate mappings - Test repository and plugin mappings with a few jobs before bulk operations
- Use building blocks - Create reusable workflow templates for common patterns
- Iterate incrementally - Migrate and test jobs in small batches
After Migration
- Test thoroughly - Run migrated workflows in a test environment before production use
- Update documentation - Ensure team documentation reflects the new GitHub Actions workflows
- Train your team - Help developers understand the new GitHub Actions-based workflows
- Monitor and optimize - Use CodeCargo's compliance and insights features to improve your workflows over time
Troubleshooting
Common Import Issues
Jenkins Connection Failures
- Verify Jenkins URL and authentication credentials
- Check network connectivity and firewall rules
- Ensure Jenkins API is enabled and accessible
Incomplete Data Import
- Review Jenkins permissions for the importing user
- Check for plugin compatibility issues
- Verify Jenkins version compatibility
Mapping Problems
Repository Matching Failures
- Use manual repository selection for complex job names
- Check GitHub App permissions for repository access
- Verify repository names and organization settings
Plugin Mapping Gaps
- Create custom mappings for organization-specific plugins
- Consult GitHub Actions marketplace for equivalent actions
- Consider workflow redesign for deprecated Jenkins plugins
Migration Issues
AI Conversion Problems
- Provide more context about the original job's purpose
- Break complex jobs into smaller, focused workflows
- Review and adjust migration mappings for better AI context
Workflow Validation Failures
- Use CodeCargo's compliance features to identify issues
- Test workflows in a development environment first
- Iterate with the AI agent to resolve syntax and logic problems
