Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

On this page:

Table of Contents

Managing and migrating users

With the Cloud Migration Tool, you can smoothly migrate Jira Server or Data Center users to the cloud. It helps you fix missing or invalid email addresses and resolve conflicts during the process. Once you create a migration, select projects, and reach the Analyze changes phase, you'll have the tools and control to migrate the desired users to the cloud without any errors.

See how users are reported during the migration analysis phase in the screenshot below.

...

Which users are migrated to the cloud?

Jira users, groups, and roles are integral to the project configuration - permissions, notifications, workflows, etc. Therefore, any users, groups, and roles used in the project will be included in the migration.

After adding projects to the migration, users linked to these projects through configuration elements are also included. For example, users assigned to issues in a particular project, assigned as project leads, or single users assigned to project permissions, will be included in the migration.

Learn more about the migration process in our articles.

How are Jira Server/Data Center users migrated to the cloud?

When it comes to migrating Jira Server/Data Center users to the cloud, the Cloud Migration Tool covers the following scenarios:

  • Users who don’t have an account on the Jira Cloud site will be invited to join after the migration.

  • Users with emails that exist on Jira Cloud won’t be migrated and are marked as existing.

  • Users without an email address or with an invalid email address will be reported as a problem.
    In these cases, the migration can’t continue as the Cloud Migration Tool can’t determine if the user exists on the Jira Cloud site. To continue the migration, you will need to resolve these errors first. The Cloud Migration Tool gives you the option to fix user problems without leaving the migration wizard.

Fix problems by customizing user mapping

The Analyze changes > Users tab reports the users in the migration and their details. It also gives you the option to edit user details without leaving the wizard. There are four user states you can observe in the Users tab:

  • Status
    colourGreen
    titleNEW
    A user that doesn’t have an account on the Jira Cloud site and will be invited to join.

  • Status
    colourPurple
    titleexisting
    A user with this email exists in this Jira Cloud site.

  • Status
    colourRed
    titleunknown
    A user who doesn’t have a valid email address and it cannot be determined if the account exists in the Jira Cloud site. The user either doesn’t have an email address or its email address is invalid.

  • Status
    colourYellow
    titlecustomized
    A user whose details are updated and this way it is mapped to an account in the Jira Cloud.

The option to overwrite user details is accessed through the Customize mapping button in the wizard. It allows you to change the default mapping between the details of server and cloud users and default source Jira users’ details. By uploading a CSV file with usernames and email addresses, you can correct problems like missing and invalid email addresses.

...

minLevel1
maxLevel6
include
outlinefalse
indent
styledefault
exclude
typelist
class
printabletrue

Apply transformations to users

You can apply transformations to users the same way you do to the rest of the configuration in the migration. Basically, you can overwrite user details with the Customize mapping button at the top right of the Analyze changes page in the migration wizard. You can learn more about customizing configuration mapping and the mechanisms to do it.

Info

What mapping or configuration mapping is

Mapping or configuration mapping is an extensive map formed during the analysis process. It holds information on how the configuration elements in the migration scope will be moved to the cloud.

The elements will either be created as new ones or modified if there’s a match between the source and destination counterparts.

Learn more about the transformations our Cloud Migration Tool offers.

...

User transformation use cases

You can use the Customize mapping option to:

  • Correct user problems
    The Customize mapping feature allows you to correct user problems, such as missing and invalid email addresses, when mapping users during a server-to-cloud deployment. You can also remap server and cloud users this way.

  • Merge user accounts
    You can also use the transformations to map multiple source users to a single Jira Cloud account. To achieve it, you need to change the email addresses of multiple Jira Server/Data Center user accounts to

...

  • be the same

...

  • . This way, the Cloud Migration Tool will map all of them to a single

...

Info

Users that are not customized but have the same email will also be mapped to a single Jira Cloud account.

...

  • Jira Cloud account.

  • Map to a chosen destination user
    You can also apply a transformation to map a source user to a destination user of your choice. To do so, you just need to provide the destination user’s ID.

How to apply transformations to users

To address the use cases above, you just need to upload a file with the desired user transformations. For example, if an email address is missing, you’ll be able to prepare and apply a file with a corrected email for a particular user.

You can also check out the following use case page on Appfire's website to find more useful information and view a demo of how to customize the configuration mapping.

https://appfire.com/products/use-cases/modify-configuration-mapping-cloud-migration

Download and upload a file with user transformations

To apply transformations to users:

  1. Start a migration.

  2. On the Analyze changes phase, move to the Users tab. Read more about migrating users.

  3. Check for any users with missing or invalid email addresses.

    Image Removed
  4. To resolve any problems with unknown users or if you want to change the default user information, click the Download mappingbutton at the top right. You will get a CSV JSON file with the default user mapping.
    (info) The downloaded file named cmt_usermapping.csv contains the server users’ email addresses and usernames.Modify the CSV mapping of all configuration elements in the migration, including users.

    CMT-apply-transformations-to-users.pngImage Added
  5. Modify the JSON file to correct missing or invalid email addresses. Also, if you would like to map several server users to a single Jira Cloud account, change their email addresses to match the email address of that Jira Cloud user. Check the guidelines about customizing mapping.

  6. Click Customize mappingto , upload the CVS JSON file with the user changes, and click Confirm.

    CMT-customize-user-mapping.mp4

    After the customizations are applied, you’ll return to the Users tab , where you’ll to see that users with changes from the CSV JSON file have the

    Status
    colourYellow
    titlecustomizedCUSTOMIZED
    tag.

Note

Losing user mapping changes

If you rerun the analysis, you’ll lose any customizations to the user mapping. So, first, resolve conflicts and errors in projects and configuration elements, and then introduce changes to users by customizing their mapping.

...

  1. . The video below shows how to upload and apply transformations from a JSON file.

    CMT-customize-mapping.mp4
  2. After you’re done making changes to the user mapping, click Migrate to move on with the migration.

Info

After you click Confirm on the Customize mapping window, the Cloud Migration Tool performs a new analysis of the migrated configuration and applies the transformations from the file. Each project, configuration element, and user that has been changed by the JSON file will have the

Status
colourYellow
titleCUSTOMIZED
tag in the Analyze changes page.

Guidelines for creating JSON user transformations

In the migration wizard, you can download a file that contains all the information about the users and how they’ll be migrated to the cloud. Then, you can either make changes to that file to include your desired user transformations or you can construct your own file and apply either of the files to the configuration.

The applied file must always be in JSON format. Also, there are some requirements on how to list the intended transformations in it. Check the guide we’ve prepared to quickly get you started on building your transformations.

With the Customize mapping option in the migration wizard, you can apply two types of transformations to users being migrated:

  • Change email address

  • Map to a destination user by ID

By changing the email address, you can create new users, merge multiple users into a single account, and remap source and destination users.

The important thing to note is that we refer to source users by their names. This means that you always need to provide the source user’s name in the JSON file in order to apply a transformation to it.

Let’s look at the examples below to make it clearer.

Required JSON records to transform users

You can construct your own JSON file with user transformations and apply it to the configuration being migrated. The examples below show you the records you need to have in the file to change a user’s email address or to map it to a destination user.

Required JSON records to change the user’s email address

The example below shows the specific records required to change a user’s email address.

Code Block
languagejson
{
    "users": [
        {
            "source": {
                "id": "User's name",
            },
            "transformation": {
                "email": "validEmail@demo.com"
            }
        }
    ]
}         

Required JSON records to map a source user to a destination user by ID

The example below shows the specific records required to map a source user to a destination user by ID.

Code Block
languagejson
{
    "users": [
        {
            "source": {
                "id": "User's name",
            },
            "transformation": {
                "id": "5da444878f33800c416f30ed"
            }
        }
    ]
}         

Edit a user in a downloaded JSON file

You can apply the same transformations from above by downloading the current mapping file and editing it. For more details about editing or constructing a mapping file, check this guide. The examples below show you how the user records will look in the downloaded file and the additional transformation record you need to add.

Transformation to change the user’s email address

When you download a mapping file, the source and destination records for the user will look like in the example below. You only need to add a transformation record with the new email address without changing the default source and destination user records. After applying the edited file, the user being migrated will have a new email address.

Code Block
languagejson
{
    "users": [
        {
            "source": {
                "id": "usernameInvalidEmail",
                "name": "usernameInvalidEmail",
                "email": "invalidEmail@demo"
            },
            "destination": {
                "newObject": true
            },
            "transformation": {
                "email": "validEmail@demo.com"
            }
        }
    ]
}                    

Transformation to map a source user to a destination user by ID

When you download a mapping file, the source and destination records for the user will look like in the example below. You only need to add a transformation record with the destination user’s ID without changing the default source and destination user records. After applying the edited file, the source user will be mapped to that destination user.

Code Block
languagejson
{
    "users": [
        {
            "source": {
                "id": "sourceUser",
                "name": "sourceUser",
                "email": "sourceUser@demo.com"
            },
            "destination": {
                "newObject": true
            },
            "transformation": {
                "id": "5da444878f33800c416f30ed"
            }
        }
    ]
}