Automate tasks for migration in Jira and Confluence

Automate tasks for migration in Jira and Confluence

The Atlassian Command Line Interface (ACLI) offers powerful automation capabilities that support various pre-migration and post-migration tasks for Jira and Confluence. These capabilities help streamline activities such as auditing, cleanup, staging, validation, and troubleshooting.

Depending on the size and complexity of your migration, you may also want to use specialized tools to handle advanced scenarios.

Choose the right migration tools

To assist with complex migrations, consider the following tools:

  • Appfire Configuration Manager for Jira (CMJ): Migrate Jira instances to either Server or Cloud.

  • Atlassian Confluence Cloud Migration Assistant (CCMA): Migrate Confluence from Server to Cloud.

    CCMA does not support Server-to-Server migrations.

  • Run CLI for Jira: Automate Jira-specific operations.

  • Run CLI for Confluence: Automate Confluence-specific operations.

These tools can complement ACLI and work together to provide a complete migration solution.

Use case: Automating migration tasks with ACLI

ACLI enhances migration efforts by enabling scripted automation for tasks such as content auditing, data cleanup, staging tests, and validation post-migration. Below is a typical workflow where ACLI can help:

  1. Pre-migration auditing

    • Identify and analyze existing content.

    • Remove outdated or unnecessary content (for example, old pages or harmful files) to streamline migration.

  2. Migration preparation

    • Stage data using test environments to verify expected behavior.

    • Automate setup of test instances, install apps, and apply licenses.

  3. Post-migration validation

    • Confirm that content has migrated correctly and matches new formats, naming conventions, or information architecture.

    • Use ACLI scripts to run automated checks and resolve any inconsistencies.

You can use ACLI actions such as run, export, and copy to automate tasks in bulk, making the entire process more efficient.

General ACLI automation capabilities for all applications

ACLI provides several general-purpose automation features that support data-driven operations across applications:

  1. Run multiple actions in bulk

    • Automate actions across application objects using data-driven commands:

      • runFromCsv: Execute actions for each row in a CSV file.

      • runFromSql: Execute actions for each row returned from a SQL query.

      • runFromJson: Execute actions based on items in a JSON array.

  2. Database integration

    • Automatically create or update database tables using data from your applications.

    • Use this feature to:

      • Analyze users, groups, and space permissions.

      • Identify obsolete data that can be removed before migration.

      • Drive automation through structured data using ACLI or external tools.

    • Particularly useful for cross-application migrations where data must be transformed for the target environment.

  3. Test and stage migrations

    • Use ACLI scripts to simulate migrations and validate outcomes.

    • Manually inspect results or use automated test frameworks like Gint to ensure data integrity.

    • Perform ad-hoc updates to resolve migration errors without manual intervention.

  4. Manage test and staging environments

    • Use Universal Plugin Manager (UPM) actions to automate app management:

      • getAppList: Retrieve installed apps.

      • installApp: Install apps on a test instance.

      • addLicense: Apply licenses automatically.

      • runFromAppList: Perform actions using the retrieved app list.

Use Confluence- and Jira-specific ACLI actions

In addition to the general capabilities, ACLI includes actions tailored specifically for Confluence and Jira. These can be used in combination with your migration strategy to handle application-specific requirements. For a complete list of these actions, refer to the Confluence-specific actions and Jira-specific actions tables in the documentation.