Versions Compared

Key

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

On this page:

Table of Contents
minLevel1
maxLevel6
include
outlinefalse
indent
styledefault
exclude
typelist
class
printable

...

true

Basics of customizing the configuration mapping

To customize the mapping of a project, configuration element, or user, you need to have a JSON file with a transformation record for it. The transformations are customizations you can apply to an element from the configuration being deployed.

...

In the JSON file, you always need to provide the source ID of the configuration element you want to transform. Later, we’ll show you end-to-end what you need to do in order to apply a JSON transformation.

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

Now, let’s take a closer look at each transformation type and its JSON record.

Transformations you can apply with custom mapping

When the deployment analysis process detects a match between a source and a destination Jira Cloud configuration element, it creates a mapping between them.

Projects & configuration elements: Map the configuration element to a chosen destination element

With the Customize mapping option, you can change the destination element the source element is mapped to. All you need to do is provide a different ID in the following way, and the deployment analysis will create a new mapping:

...

Code Block
languagejson
"transformation": {
    "id": "100123"
}

Projects & configuration elements: Rename

With this transformation, you can:

...

Panel
bgColor#FFFAE6

Use configuration elements' ID to ensure accurate mapping

Mapping by name works correctly when a configuration element's uniqueness is determined by its name. But when elements, like filters, have the same name, renaming them won't guarantee a correct match with a destination element of the same name.

In these cases, where the name isn’t a unique attribute of the configuration element, use the unique IDs to map source and destination elements.

Projects: Change project key

You can add a transformation record to a project to change its key. Remember that you can change the project key using the inline edit transformation in the UI.

Code Block
languagejson
"transformation": {
     "key": "PROJDOC"
}

Users: Change user email

For users, you can add a transformation record to change the user’s email address or to match it to another destination user by providing an ID. These transformations will allow you to create, merge, and remap users. The source and destination users are matched either by their names or by their IDs.

...

Code Block
languagejson
"transformation": {
    "name": "Karlie Davis",
    "email": "karlie@demo.com"
}

Users: Map to a destination user by ID

You can also add a transformation record to map a source user to a chosen destination user by providing the destination user’s ID.

...

Code Block
languagejson
"transformation": {
    "id": "5da444878f33800c416f30ed",
}

Ways of customizing the configuration mapping

To make transformations to projects, configuration elements, and users, you can:

  • Download a JSON mapping file, add transformations to it, and upload it with the Customize mapping button.

  • Construct a JSON file containing the transformations you want to apply and upload it with the Customize mapping button.

  • Reuse a mapping file from a previous deployment and upload it with the Customize mapping button.

Download mapping and customize it

With the Download mapping button, you’ll get a JSON file listing the configuration elements in the deployment scope. This mapping file contains a description of how all these configuration elements will be deployed to Jira Cloud. The following JSON snippet illustrates how configuration elements are listed in the file:

...

As you can see, each configuration element has a source and destination record. The source record contains all the details of the source element. The , and the destination record holds information about how this element will be deployed. The configuration element can either be created as a new one or be mapped to an existing destination element.

...

Then, in the transformation record, you can map the element to a destination element or create it as a new element.

...

Construct your own mapping file

You can create your own mapping file without downloading such from the UI. Just follow the guidelines in this section. After creating it, you upload it with the Customize mapping option in the UI, the same way you would do with a downloaded mapping file. The following snippets show how to construct the JSON records of a transformation to a single configuration element:

...

The source record must contain the ID of the source configuration element. Similarly to the example above, you can add more details to the source record. However, for a successful transformation, the only required component for the source record is the source element’s ID. Then, you need to have a transformation with the new ID or name, as shown in the example above. For projects, you You can also change their key projects' keys this way , and for users their ' email addresses and keys.

Users

In the source record, we always refer to source users by their IDs. So, when building your mapping file with a user transformation, you need to provide the source user’s ID like so:

...

You can learn more about what you can do with users in the User Transformations document.

...

Reuse a mapping file from a previous deployment

The third option to customize the mapping through JSON is to reuse a mapping file created for a previous deployment. It will work only if it’s applicable to the currently deployed configuration.

...

Panel
bgColor#DEEBFF

Key points:

  • The source JSON record must always contain the id ID of the deployed source project, configuration element, or user. For users, the id ID is their email address.

  • If you add configuration elements that aren't part of the deployment to a downloaded or created mapping file, they will be skipped. This means that these elements won't be included in the deployment at all.

  • Configuration elements are mapped to destination elements by ID. Exceptions are users as for them the id , as their ID is the user’s email of the useraddress. You can learn more about them in the User Tranformations document.

  • Remember that renaming a default scheme or workflow will create a new non-default scheme or workflow in the destination.

  • Don’t use the name of a default scheme from the destination for to create a new scheme creation. Instead, map the default schemes only by ID.

Validations & conflict detection

During the mapping file upload, we perform JSON validation checks for:

...