Before loading a configuration into JIRA and especially if you are doing it for the first time, read these warnings !
After loading a configuration into JIRA, it is highly recommended to reindex your database !
Configuration files may contain configuration for more than one project
The use of this plugin is restricted to system administrators in JIRA.
Import project configurations from an XML file
Get to the upper right hand corner of any JIRA web page and open the "Administration" menu, Select the option "Add-ons", as shown in this image
Once at the add-on administration page, you will see that the leftmost column contains commands to work with specific add-ons. There, you can find the link to the page to "Load project configuration".
Find the import link in JIRA 5
Go to "Administration" and in the "Plugins" menu, select "Load Project Configuration".
After clicking on the link named "Load project configuration" the following page will appear:
Clicking on the button to the right of the text field, allows you to select the XML file you want to load with the project configuration.
If the "Apply changes?" tick is not selected, the load process will be simulated. This means that no changes will be actually made in JIRA, but you will be able to see in the result page a simulation of all the changes that the plugin will make in JIRA when loading that configuration file. Note that this tick is not selected initially, as a safety measure.
Once you have selected the file and chosen whether the load will be simulated or real, click on the "Project Configuration File Upload" button to launch the load.
Large XML files
JIRA limits the size of uploaded files by default to 10 MB. If your configuration file is bigger than that, you have to increase this limit. Otherwise, the file upload aborts and it is "as if" the whole request had not taken place. You will click the upload button and "nothing" happens!
See instructions here for increasing this limit in JIRA.
The plugin will verify the license, the logged-in user, it will open the XML file and validate it against the schema. If there is any error, it will be shown in a message close to the top of the page.
if the file can be opened and it is valid, the load process will be started.
IMPORTANT: The load process may take a few seconds, in that case you will perceive that the browser takes longer than usual to display the results page.
When it finishes, the results page will be shown. Just under the header you will see a message with the result of the load. Below, there is an area that contains the trace of the process. The next image shows the result page after a real load:
Under the title of this page there is a button to go back to the previous page, in case you want to launch another load. This will happen typically after a successful simulated load, in order to execute the actual configuration changes.
Remember that loading a configuration may alter custom field configurations, resolutions, statuses or priorities. You should reindex the database after the load.
The next image shows the result of a simulated load. The result message says this load is simulated. Additionally, in the process trace, you can read a warning at the beginning, that this load process will not apply changes to the database.
Option to create projects needed for custom field configuration contexts
Custom field configuration schemes in JIRA have an associated context. This is a set of projects that configuration applies to, or it can be a global context, meaning a configuration that applies to any project not specified in other context. You can find more information here.
If you are trying to load a custom field with a context that refers to another project(s), those projects must exist before the plugin can build the configuration as it is described in the XML file.
If the option "Create extra projects" is ticked, during the real load if a project used in a custom field context does not exist, Project Configurator will create it automatically. The project will be created with the specified key, and a default name and description and it will be associated to default schemes.
If that option is ticked, and a project is created because it is needed in a custom field configuration context, a message like this will appear in the load trace:
Option to enable "Smart custom field contexts"
The "Smart custom field contexts" option permits that the imported configuration for custom fields will only affect the imported projects, and not other projects that may exist in the destination instance. This page explains in more detail how this feature works.
Option to skip loading of some object types
The multiselect list labelled "Do not load:" lets you select object types that will be ignored during the load. This means that, for example if you select "Groups", the plugin will not create or modify any group, leaving them as they were before the load.
"Projects (changes)" refers to the project lead (only in versions for JIRA 7), category and schemes associated to imported projects. When it is selected, import of object types which are part of projects, like versions, components and project role members, is also ignored. Creation of new projects cannot be skipped. Projects included in the XML configuration file are always created with a default configuration, including default schemes.
You can select more than one object type to ignore, clicking on any of them while the keys "Ctrl" or "Shift" are pressed. To deselect an already selected object type, click on it while pressing the "Ctrl" key.
The list of object types that can be skipped is:
Project scope objects:
- Role members
- Project roles
- Event types
- Issue types
- Issue type schemes
- Custom fields
- Field configurations
- Field configuration schemes
- Screen schemes
- Issue type screen schemes
- Workflow layouts
- Workflow schemes
- Permission schemes
- Notification schemes
- Issue security schemes
- System dashboard
- All dashboards
This option can lead to load errors, if creation of an object that is necessary for another object's configuration is skipped. For example, suppose the configuration file contains screen "A" which does not exist in the target, and it also contains workflow "B" which uses screen "A". If load of screens is skipped, when the plugin tries to load workflow "B" it will fail as screen "A" does not exist.
So, use this option with care!
When object types are selected to be ignored during the load, the load trace shows warning messages like these:
Keeping settings between loads
This web page is designed to keep your selections from one retry to the next, so you do not have to select everything every time you run the configuration load. The only exception is the name of the configuration file to load because, as a security measure, most browsers will not let code in a web page select a local file. So these settings will persist between successive loads:
- Real or simulated load
- Automatic creation of extra projects
- Object types to be ignored during the load
Errors when loading
If an error is found during the load process (either simulated or real), the load willl stop and the error will be shown within a message just under the page header. This message explains the likely cause of the error. Below, another message states the location, or object that was being loaded when the error happened.
The trace of the load process is shown up to the error. In this case, the trace also includes two important pieces of information:
- Information about the rollback of the changes made so far to this JIRA instance (only in a real load and for plugin versions earlier than 1.8-JX).
- The stack trace produced by the error.
Recovery on errors found when importing dashboards or filters (new since version 1.10)
Dashboards and filters are created by JIRA end users without the supervision of a JIRA administrator. It is easy that a large instance of JIRA contains hundreds or thousands of filters and dashboards. The combination of both circumstances can make life quite difficult for a JIRA admin that tries to transfer all those objects to another instance of JIRA (for example, as she would do when trying to merge two instances).
In order to minimize this problem, Project Configurator includes a feature that lets the import continue when an error is found during the import of a dashboard or filter. This feature is enabled when this option is selected in the import page:
If this feature is enabled, and an error is found during the import of a dashboard or filter:
- A warning will be shown in the load trace, showing the identity of the affected dashboard/filter, the error mesage and stating that the object will be skipped and the import will continue, as in this image:
- Any other pending operation on that dashboard/filter will be skipped
- The import will continue with the next object.