Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
JIRA 7 Administration Cookbook
JIRA 7 Administration Cookbook

JIRA 7 Administration Cookbook: Over 80 hands-on recipes to help you efficiently administer, customize, and extend your JIRA 7 implementation , Second Edition

eBook
R$49.99 R$245.99
Paperback
R$306.99
Subscription
Free Trial
Renews at R$50p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

JIRA 7 Administration Cookbook

Chapter 1. JIRA Server Administration

In this chapter, we will cover:

  • Installing JIRA for production use
  • Upgrading JIRA with an installer
  • Upgrading JIRA manually
  • Migrating JIRA to another environment
  • Setting up the context path for JIRA
  • Setting up SSL
  • Installing SSL certificates from other applications
  • Resetting the JIRA administrator password
  • Importing data from CSV

Introduction

Atlassian JIRA is a popular issue tracking system used by many companies across the world. One of its strengths, unlike most other enterprise software, is that it does not take days or weeks to install and implement, and it is very simple to upgrade and maintain.

We will assume that you already know how to install a brand new JIRA system. So, we will explore the common administration tasks, such as upgrading and migrating your JIRA, looking at different options, from using the new automated upgrade utility provided by Atlassian to doing everything from scratch.

We will also look at some other neat tricks for you as an administrator, such as resetting the admin password to get you out of sticky situations.

Installing JIRA for production use

In this recipe, we will look at how to install and set up JIRA in a production environment. This includes setting up a dedicated user to run JIRA under and using an external database.

We will use the standalone archive distribution as the steps are consistent across both the Windows and Linux platforms.

Getting ready

The following things need to be checked before you start with this recipe:

  • Download the latest JIRA archive distribution from https://www.atlassian.com/software/jira/download and click on the All JIRA Download Options link.
  • Make sure your server environment meets JIRA's requirements by visiting https://confluence.atlassian.com/display/JIRA/Supported+Platforms.
  • Install Java on the system. At the time of writing, JIRA 7 requires Java 7. Make sure you get the latest update for Java, unless it is explicitly stated as unsupported by JIRA.
  • Make sure that the JAVA_HOME or JRE_HOME environment variable is configured.
  • Have a database system available, either on the server hosting JIRA or a different server accessible over the network. For this recipe, we will use MySQL; if you are using a different database, change the commands and queries accordingly.
  • Download the necessary database driver. For MySQL, you can download it from https://dev.mysql.com/downloads/connector/j.

How to do it...

We first need to create an empty MySQL database for JIRA:

  1. Open up a new command prompt on the MySQL server.
  2. Run the following command (you can also use another user instead of root as long as the user has permission to create new users and databases):
            mysql -u root -p
    
  3. Enter the password for the user when prompted.
  4. Create a new database for JIRA by running the following command:
            create database jiradb character set utf8;
    
  5. Create a new user for JIRA in the database and grant the user access to the jiradb database we just created using the following command:
            grant all on jiradb.* to 'jirauser'@'localhost'
            identified by  'jirapassword';
    
  6. In the previous five steps, we created a new database named jiradb and a new database user named jirauser. We will use these details later to connect JIRA with MySQL. The next step is to install JIRA.
  7. Create a dedicated user account to run JIRA under. If you're using Linux, run the following command as root or with sudo:
            useradd --create-home --comment "Dedicated
            JIRA account" -- shell /bin/bash jira
    

    Note

    It is good practice to reduce security risks by locking down the user account so that it does not have login permissions.

  8. Create a new directory on the filesystem where JIRA will be installed. This directory will be referred to as JIRA_INSTALL.
  9. Create another directory on the filesystem. This will be used for JIRA to store its attachments, search indexes, application data, and other information. You can create this directory on a different drive with more hard disk capacity, such as a network drive (this could slow down the performance). This directory will be referred to as JIRA_HOME.

    Note

    It is good practice to keep the JIRA_INSTALL and JIRA_HOME directories separate; that is, the JIRA_HOME directory should not be a subdirectory inside JIRA_INSTALL. This will make the future upgrading and maintenance easier.

  10. Unzip the JIRA archive file in the JIRA_INSTALL directory.
  11. Change both the JIRA_INSTALL and JIRA_HOME directories' owner to the new JIRA user.
  12. Open the JIRA_INSTALL/atlassian-jira/WEB-INF/classes/jira-application.properties file in a text editor.
  13. Locate the jira.home= line in this file.
  14. Cut and paste this in the full path to the JIRA_HOME directory and remove the # symbol if present. Make sure you use the forward slash (/). The following line shows how it looks on a Linux system:
            jira.home=/opt/data/jira_home 
    

    Note

    Windows uses the backward slash (\) in the file path. You should still use the forward slash (/) while specifying the jira.home directory.

  15. Copy the database driver JAR file (obtained from the Getting ready section) to the JIRA_INSTALL/lib directory.
  16. Start up JIRA by running the start-jira.sh (for Linux) or start-jira.bat (for Windows) script from the JIRA_INSTALL/bin directory as the JIRA user. You should see the output Tomcat started in your console; this means that JIRA is up and running.
  17. JIRA comes with a setup wizard that will help guide us through the final phase of the installation.
  18. Open up a browser and go to http://localhost:8080 (replace localhost with the actual server name). By default, JIRA runs on port 8080. You can change this by changing the connector port value in the JIRA_INSTALL/conf/server.xml file.
  19. The first step is to select how you want JIRA to be set up. Select the I'll set it up myself option and click on the Next button.
    How to do it...
  20. The second step is to set up the database information. Select the My Own Database (recommended for production environments) option.
  21. Select a value for the Database Type option. For this recipe, select the MySQL option.
  22. Enter the details for our new jiradb database.
    How to do it...
  23. Click on Test Connection to check whether JIRA is able to connect to the database.
  24. Click on the Next button to proceed if the database connection test is successful and move to the next step of the wizard.
  25. Enter the Application title value for this JIRA instance.
  26. Select Public if you would like to let people sign up for accounts or Private if you want only administrators to create accounts. For most organizations that use JIRA to track internal projects, this will be in Private mode.
  27. Set the Base URL option. The base URL is the one that users will use to access JIRA. Usually, this should be a fully qualified domain name or the hostname—that is, not a localhost or an IP address.
  28. Click on Next to go to the third step of the wizard, as shown in the following screenshot:
    How to do it...
  29. Enter your JIRA license key if you have one. If you do not have a license key, you can generate a temporary trial license by visiting https://my.atlassian.com and creating an account.
  30. Click on Next to go to the next step of the wizard, as shown in the following screenshot:
    How to do it...
  31. Enter the details for the initial administrator account. The user account will have access to all the configuration options in JIRA, so make sure you do not lose its login credentials.
  32. Click on Next to go to the fifth and final step of the wizard, as shown in the following screenshot:
    How to do it...
  33. Choose whether you want to set up an outgoing SMTP server Now or Later. If you do not have an SMTP server ready right now, you can always come back and configure it later.
  34. Click on Finish to complete the setup process.

This ends the general configuration part of the setup process. Your JIRA system is up and running. Next, JIRA will walk you through its onboarding process as a first-time user. You will be asked to select the default language to use, upload a user avatar, and create your very first project.

How to do it...

There's more...

By default, JIRA is set to use a maximum of 768 MB of memory. For a production deployment, you might need to increase the amount of memory allocated to JIRA. You can increase this by opening up the setenv.sh (on Linux) or setenv.bat (on Windows) file in the JIRA_INSTALL/bin directory and changing the value of the JVM_MAXIMUM_MEMORY parameter.

For example, if we want to set the maximum memory to 2 GB, we will change it to JVM_MAXIMUM_MEMORY="2048m". You will need to restart JIRA after performing this change. For production uses, it is recommended that you allocate at least 2 GB memory to the JIRA JVM.

If you are using LDAP for user management in your organization, refer to the Integrating with LDAP for authentication only recipe in Chapter 4, User Management.

Tip

Detailed steps to download the code bundle are mentioned in the Preface of this book. Please have a look. The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/JIRA-7-Administration-Second-Edition. We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

Upgrading JIRA with an installer

In this recipe, we will show you how to upgrade your JIRA instance with the standard JIRA installer.

Getting ready

As the JIRA installer is only available for standalone installations on Windows and Linux, we will run you through the installer on Windows for this recipe:

  • Check the upgrade notes for any special instructions as well as the target JIRA version to make sure you can perform a direct upgrade.
  • Make sure you have a valid JIRA license.
  • Verify whether your current host environment is compatible with the target JIRA version. This includes the Java version, database, and operating system.
  • Verify whether your operating environment is compatible with the target's JIRA version, specifically the browser requirements.
  • Make sure that the add-ons you are using are compatible with the new version of JIRA.

    Tip

    You can use the universal plugin manager's JIRA update check utility to check for add-on compatibility.

  • Download the installer binary for your target JIRA version.

How to do it...

Upgrade your JIRA system with the installer using the following steps:

  1. Take your current JIRA offline, for example, by running the stop-jira.bat script.
  2. Back up the JIRA database with its native backup utility.
  3. Launch the installer and select the Upgrade an existing JIRA installation option.
  4. Now, select the directory where the current JIRA is installed:
    How to do it...
  5. Check the backup JIRA home directory option and click on the Next button.

    Tip

    If your JIRA_HOME directory is big, you might want to manually back it up or remove some of the cache and tmp folders as it would take a long time for the installer to back these up.

  6. Review the upgrade checklist and click on the Upgrade button.
    How to do it...
  7. Wait for the installer to complete the upgrade process. Once the upgrade is complete, the installer will automatically launch JIRA.
  8. Update add-ons once JIRA successfully starts.

The installer will detect and provide you with a list of customized files in the JIRA_INSTALL directory, which you will need to manually copy after the upgrade.

See also

If you cannot use the installer to upgrade JIRA, refer to the Upgrading JIRA manually recipe.

Upgrading JIRA manually

If you find yourself in a situation where you cannot use the JIRA installer to upgrade JIRA—for example, if you are hosting JIRA on an OS that does not have an installer binary such as Solaris or are using the WAR distribution—then you need to manually upgrade your JIRA instance.

Getting ready

The general prerequisite tasks to upgrade JIRA manually will remain the same as that of the installer. Refer to the previous recipe for the common tasks involved. As the installer automates many of the backup tasks while upgrading JIRA manually, you will have to do the following:

  • Back up the JIRA database with its native backup utility
  • Back up the JIRA_INSTALL directory
  • Back up the JIRA_HOME directory
  • Get a list of all the customized files in the JIRA_INSTALL directory from the System Info page in JIRA

How to do it...

To manually upgrade your JIRA instance, perform the following steps:

  1. Take your current JIRA offline.
  2. Install the new version of JIRA into a different directory.
  3. Edit the jira-application.properties file in the new version of JIRA, which is located in the JIRA_INSTALL/atlassian-jira/WEB-INF/classes directory.
  4. Update the value of jira.home to the current JIRA_HOME directory or to a copy of this directory.
  5. Copy any modified files from the old JIRA instance into the new one.
  6. Start up the new JIRA instance.
  7. Update the add-ons once JIRA starts successfully.
  8. Remove the previous installation directory to avoid confusion.

How it works...

What we did here is essentially set up a new instance of JIRA and point it to the old JIRA instance's data. When we start up the new JIRA instance, it will detect that the database it is connecting to contains data from an older version of JIRA by reading the dbconfig.xml file from the JIRA_HOME directory. It will also proceed to make all the necessary schema changes.

Migrating JIRA to another environment

Now that we have gone through upgrading a JIRA instance, we will look at how to move a JIRA instance to another server environment. This is a common use case when you need to move an application to a virtualized environment or data warehouse.

Getting ready

The following things need to be checked before you start with this recipe:

  • Make sure you have a valid JIRA license.
  • Check whether your new environment is compatible with JIRA system requirements.
  • Ensure that both the old and new JIRA instances are of the same major or minor version. If you intend to run a newer version of JIRA in the new environment, it is recommended that you upgrade after the migration is successful.

Note

Migrating a system can be very disruptive for users. Make sure you communicate this to your users and allocate enough time for rollbacks.

How to do it...

To migrate an existing JIRA to another server, perform the following steps:

  1. Download and install a brand new JIRA instance in your new environment with an empty database.
  2. Take your current JIRA offline.
  3. Back up your current JIRA database with its native backup utility.
  4. Back up your current JIRA_HOME directory.
  5. Then, take your new JIRA offline.
  6. Copy over your JIRA_HOME backup and replace the new JIRA_HOME directory with it.
  7. Update the dbconfig.xml file with the new JIRA database details.
  8. Copy your database backup and restore the new JIRA database.
  9. Start up the new JIRA instance.

    Note

    If you have made modifications to your JIRA configuration files, you can get a complete list of the modified files from JIRA's System Info page.

  10. Next, log in to JIRA as a JIRA administrator.
  11. Select System info from the Administration panel.
  12. Note down the files listed in the Modified Files and Removed Files sections.
  13. Review and apply the same changes to the new JIRA instance.

The following screenshot shows how the output will look:

How to do it...

Setting up the context path for JIRA

If you have multiple web applications running on the same domain, you might want to set up a context path for JIRA—for example, http://example.com/jira, where /jira is the context path.

How to do it...

Perform the following steps to set up a context path for JIRA:

  1. Shut down JIRA if it is running.
  2. Open up JIRA_INSTALL/conf/server.xml in a text editor.
  3. Locate the following line and enter the context path for the path attribute—for example, path="/jira":
            <Contextpath="/jira"docBase="${catalina.home}
            /atlassian- jira" reloadable="false"
            useHttpOnly="true">
  4. Save the file and restart JIRA. If you are doing this after JIRA is installed, you will have to update JIRA's Base URL option so that its links will reflect the change.
  5. Then, log into JIRA as an administrator.
  6. Navigate to Administration | Systems | General Configuration.
  7. Click on the Edit Settings button.
  8. Enter the fully qualified URL into JIRA, including the context path in the Base URL field.
  9. Click on Update to apply the change.

After you have all this set up, you will be able to access JIRA with the new context path and all the links, including the ones from JIRA's notification e-mails, will be the context path in the URL.

Setting up SSL

By default, JIRA runs with a standard nonencrypted HTTP protocol. This is acceptable if you are running JIRA in a secured environment, such as an internal network. However, if you plan to open up access to JIRA over the Internet, you need to tighten up the security by encrypting sensitive data, such as the usernames and passwords that are sent, by enabling HTTP over SSL (HTTPS).

This recipe describes how to install SSL on the JIRA Tomcat application server. If you have an HTTP web server such as Apache in front of JIRA, you can install the SSL certificate on the web server instead.

Getting ready

You need to have the following set up before you can step through this recipe:

  • Obtain a valid SSL certificate: You can either use a self-signed certificate or obtain one from a certificate authority (CA) such as Verisign. Using a self-signed certificate will display a warning message when users first visit the site, as shown in the following screenshot:
    Getting ready
  • Ensure that the JAVA_HOME environment variable is set properly.
  • Make sure you know which JDK/JRE JIRA is using. You can find this information from the System Info page in JIRA, where you need to look for the java.home property.
  • Make sure your JRE/JDK's bin directory is added to your PATH environment variable, and the keytool command will output its usage, as shown in the following screenshot:
    Getting ready

How to do it...

Perform the following steps to import an SSL certificate:

  1. Open up a command window and go to the directory where the certificate file resides.
  2. Generate a Java KeyStore (JKS) for JIRA by running the keytool -genkey -alias jira -keyalg RSA -keystore JIRA_INSTALL/jira.jks command.
  3. Import the certificate into KeyStore repository by running the keytool -import -alias jira -keystore JIRA_INSTALL/jira.jks -file file.crt command, where file.crt is the certificate file.
  4. Open the server.xml file located in the JIRA_INSTALL/conf directory in a text editor.
  5. Locate and uncomment the following XML configuration snippet:
            <Connector port=
            "8443" maxHttpHeaderSize=
            "8192"   SSLEnabled="true" 
            maxThreads="150" 
            minSpareThreads="25" maxSpareThreads="75" 
            enableLookups="false"
            disableUploadTimeout="true" 
            acceptCount="100" scheme="https" secure="true" 
            clientAuth="false" 
            sslProtocol="TLS" useBodyEncodingForURI="true"/>
  6. Add a few new attributes to the Connector tag and save the file, as follows:
            keystoreFile="PATH_TO_YOUR_KEYSTORE" 
            keystorePass="PASSWORD_FOR_YOUR_KEYSTORE" 
            keyAlias="jira" 
            keystoreType="JKS" 
    
  7. Restart JIRA to apply the changes.

How it works...

We first created a new Java KeyStore repository for JIRA to store its own SSL certificate with Java's keytool utility. During this step, you are prompted to provide information about the certificate as well as a password to access the KeyStore repository.

Note

Do not lose the password to the KeyStore repository.

After we created the KeyStore repository, we imported the certificate and then enabled an additional connector to listen for HTTPS connections by uncommenting the connector XML tag. We also added new attributes to the tag so that Tomcat knows where our new KeyStore repository is and how to access it to get to the certificate.

You can also change the port number for the connector if you want to run HTTPS on the more common port 443 instead of the default port 8443, and your final XML snippet will look something similar to the following:

<Connector port="443"
maxHttpHeaderSize="8192" SSLEnabled="true" maxThreads="150" minSpareThreads="25"
maxSpareThreads="75" enableLookups="false"
disableUploadTimeout="true" acceptCount="100"
scheme="https" secure="true" clientAuth="false"
sslProtocol="TLS" useBodyEncodingForURI="true"
keystoreFile="/opt/jira/jira.jks" 
keystorePass="changeme"
keyAlias="jira" keystoreType="JKS"/>

There's more...

At this point, users can access JIRA with both HTTP and HTTPS, and you need to configure JIRA so that it will automatically redirect all the HTTP traffic to HTTPS. JIRA comes with a handy configuration utility that can help you set up this configuration.

Note

You should first make sure your HTTPS configuration is working correctly before attempting this recipe.

Note that this utility is only available for standalone installations. If you are running a WAR installation, you can skip the following steps and move on to the manual setup section:

  1. Open the command prompt and go to the JIRA_INSTALL/bin directory.
  2. Depending on your OS, run the config.bat (Windows) or config.sh (Linux / OS X) file.
  3. Select the Web Server tab from the JIRA Configuration Tool window.
  4. Select the HTTP and HTTPs (redirect HTTP to HTTPs) option for Profile.
  5. Click on the Save button at the bottom of the window, as shown in the following screenshot.
  6. Restart JIRA to apply the change.
There's more...

If you cannot use JIRA Configuration Tool, you can perform the following steps to manually set up the configuration:

  1. Open the web.xml file located in the JIRA_INSTALL/atlassian-jira/WEB-INF directory.
  2. Add the following XML snippet at the end of the file just before the closing </webapp> tag:
            <security-constraint> 
              <display-name>HTTP to HTTPs
              Redirection</display-name> 
              <web-resource-collection> 
                <web-resource-name>all-except-
                attachments</web-resource-name> 
                <url-pattern>*.jsp</url-pattern> 
                <url-pattern>*.jspa</url-pattern> 
                <url-pattern>/browse/*</url-pattern> 
              </web-resource-collection> 
              <user-data-constraint> 
                <transport-
                guarantee>CONFIDENTIAL</transport-
                guarantee> 
              </user-data-constraint> 
            </security-constraint> 
    
  3. Restart JIRA to apply the change.

See also

For information on connecting JIRA to other applications that run on SSL, refer to the Installing SSL certificates from other applications recipe.

Installing SSL certificates from other applications

You might need to connect JIRA to other services, such as LDAP, mail servers, and other websites. Often, these services make use of SSL. In such cases, the connection will fail, and you will see the following errors in your JIRA log file:

javax.net.ssl.SSLHandshakeException: 
sun.security.validator.ValidatorException: PKIX path building failed:  
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification
path to requested target 

Getting ready

For this recipe, we will use the Java keytool utility, so make sure you have the following configuration set up:

  • Obtain the SSL certificate from the target system.
  • Ensure that the JAVA_HOME environment variable is set properly.
  • Make sure you know which JDK/JRE JIRA is using. You can find this information on the System Info page, where you need to look for thejava.home property.
  • Make sure your JRE/JDK's bin directory is added to your PATH environment variable, and the keytool command will output its usage.
  • Obtain the password for the Java trust store used by JIRA.

How to do it...

In this recipe, let's assume we want to connect JIRA to an LDAP server that is running on SSL. Perform the following steps to make it a trusted site inside JIRA:

  1. Open up a command prompt and go to the directory where the certificate file resides.
  2. Import the certificate into the trust store by running the keytool -import -alias tomcat -file file.cer JAVA_HOME\jre\lib\security\cacerts command, where file.cer is the certificate file.
  3. Restart JIRA to apply the changes.

How it works...

When JIRA attempts to connect to an SSL-protected service, it will first check whether the target service's certificate can be trusted. This is done by checking to see whether the certificate is present in what is called the trust store. If the certificate is not present, the connection will fail.

The trust store is typically a KeyStore repository called cacerts and is located in the $JAVA_HOME/lib/security directory on the server.

We used the keytool utility to import the certificate to our local trust store, so the target service will be registered as a trusted service and allow JIRA to successfully connect to it.

Resetting the JIRA administrator password

Sometimes, you might forget or lose the password to the account with the JIRA Administrator or JIRA System Administrator permission, and you cannot retrieve it using the password reset option. For example, suppose JIRA does not have an SMTP server configured or you restore JIRA from a data dump and do not know the account and/or password. In these cases, you need to reset the administrator password directly in the database.

Note

This recipe only applies to the JIRA instances that use the default internal user directory option. External user management, such as LDAP, will not work with this recipe.

Getting ready

As we will reset the password in JIRA's database, make sure you do the following:

  • Connect to the JIRA database either via the command line or a
  • Update the JIRA database

How to do it...

Let's assume we use the default mysql command-line tool and MySQL as the backend database for JIRA. If you are using a different database, you may need to change the following SQL statements accordingly:

  1. Connect to the JIRA database with a client tool by running the mysql -u jirauser -p command, where jirauser is the username used by JIRA to access the JIRA database.
  2. You can find JIRA's database details from the dbconfig.xml file located in JIRA_HOME.
  3. Change to the JIRA database by running the use jiradb command, where jiradb is the name of JIRA's database.
  4. Determine the groups that have the JIRA System Administrators global permission with the following SQL statement:
            select perm_parameter from 
            schemepermissions where PERMISSION=44;
    
  5. Find users that belong to the groups returned in STEP 4 by running the following SQL statement, where jira-administrators is a group returned from STEP 4:
            select child_name, directory_id
            from cwd_membership where
            parent_name='jira- administrators';
    

    Note

    The jira-administrators group is the default group that administrators belong to. You might get a different group if you customize the permission configurations.

    The table column for the username is child-name.

  6. Reset the user's password in the database with the following SQL statement, where admin is a user returned in STEP 5:
            update cwd_user set
            credential='uQieO/1CGMUIXXftw3ynrsaYLShI+
            GTcPS4LdUGWbIusFvHPfUzD7
            CZvms6yMMvA8I7FViHVEqr6Mj4pCLKAFQ==' where
            user_name='admin';
  7. Restart JIRA to apply the change.

How it works...

With JIRA's internal user directory, all the user and group data is stored in the JIRA database. The value 44 is the ID of the JIRA System Administrators global permission.

If you do not know which groups or users are granted the JIRA System Administrators global permission, we will first have to find this information using STEP 4 and STEP 5. Otherwise, you can skip to STEP 6 in order to reset the password.

JIRA's user password information is stored in the cwd_user table. As JIRA only stores the hash value of the password, we changed the user's admin password to uQieO/1CGMUIXXftw3ynrsaYLShI+GTcPS4LdUGWbIusFvHPfUzD7CZvms6yMMvA8I7FViHVEqr6Mj4pCLKAFQ==, which is the UTF-8-encoded hash value of sphere.

Importing data from CSV

Often you will need to import data from other systems into JIRA. For example, you might want to migrate data from an older bug tracking system, or if you have data coming out of other systems, you may want to use this output to populate your project.

As systems often have their own data structure, it is often not this straightforward to do a data migration. However, the good news is that most systems can export data in the CSV format (or Excel, which can be easily transformed into CSV); we will look at using CSV as a way to import data into JIRA in this recipe.

Getting ready

When importing data into JIRA, the most important thing is to prepare your input data file and make sure it is formatted correctly and contains all the necessary information. To help the importer, keep the following in mind:

  • Remove any non-data-related content, especially if you created your CSV file from a spreadsheet.
  • If your file contains users that need to be imported into fields such as Assignee, make sure you use either their usernames or e-mail addresses for JIRA to match them up with the actual users in the system.
  • If your file contains dates that need to be imported into fields, such as Due date, make sure they are all formatted with a single date format. This is so that JIRA can process the date values consistently.

How to do it...

To import data from other systems:

  1. Log into JIRA as an administrator.
  2. Select the Projects menu from the top and select the Import External Project option.
  3. Then, select the system from the list that comes out of the box with JIRA. If your system is not listed, select the CSV option.
  4. Select the CSV file for the CSV Source File field. If you are performing an import for the first time, do not select the Use an existing configuration option. We will generate the configuration at the end of the import, and you will be able to use this to fast-track future imports.
  5. Expand the Advanced option if your file uses a different file encoding or uses a character other than comma (,) as its separators. Click on the Next button to go to Step 2 of the wizard.
    How to do it...
  6. Select the project to import your data into. If you do not have the project, you can select the Select New option and create a project on the spot.

    Tip

    Generally, it is best to have the project created beforehand to ensure that it is set up with the correct configuration schemes, such as the workflow and fields.

  7. Varify the E-mail Suffix for New Users and Date format values used in your CSV file. This will ensure that data such as dates will be correctly parsed during import and saved in JIRA's date fields, such as Due dates.
    How to do it...
  8. Select and map the CSV columns to JIRA fields. Certain fields, such as the Summary field, must have a corresponding column in the file. Otherwise, JIRA will not allow you to proceed. If you do not want to map a column, you can select the Don't map this field option.
  9. Select the Map field value option for any columns mapping to a select list style field. This will allow you to map individual values from the CSV file column to the options available in JIRA. Unless you are sure that your file contents can be mapped to the JIRA field options exactly, it is best to manually verify this; otherwise, you would end up with duplicated values due to things such as case sensitivity.
    How to do it...
  10. If you select to map field values, review each of the listed values and map them to their corresponding field options in JIRA. If a value does not have an option, you can type in the desired option for JIRA to create.
  11. Click on the Begin Import button to start importing your data into JIRA.
    How to do it...
  12. After the import process is completed, review the import result. You can click on the download a detailed log link to get a full log of the process if the import fails. You can also click on the save the configuration link to get a copy of the mapping files so that next time, you do not have to remap everything from scratch.

There's more...

Using the CSV file to import custom data into JIRA is the most versatile approach as many systems can export its data into CSV. However, as you would have noted already, JIRA comes with a number of specialized importers for various systems. These importers often have additional features to help with data import. The Atlassian Marketplace website https://marketplace.atlassian.com also has a number of importers created by third parties. If you do not see your system listed in the out-of-the-box importers, make sure you do a search in the marketplace and check whether someone has already created an importer for it.

Left arrow icon Right arrow icon

Key benefits

  • Make JIRA adapt to your organization and process flow
  • Gather and display the right information from users with customized forms and layouts
  • Extend the capabilities of JIRA with add-ons, scripts, and integrations with other popular applications and cloud platforms
  • Use JIRA Service Desk as a customer service support portal

Description

JIRA 7 Administration Cookbook, Second Edition covers all the new major features that provide better prioritizing capabilities, enhanced visibility, and the ability to customize JIRA application to meet your needs. We start by upgrading your existing JIRA instance and working through tasks you can perform at the server level to better maintain it. We then delve deep into adapting JIRA to your organization's needs, starting with the visual elements of setting up custom forms to capturing important data with custom fields and screens, and moving on to ensuring data integrity through defining field behaviors. You'll gain insights into JIRA's e-mail capabilities, including managing outgoing e-mail rules and processing incoming e-mails for automated issue creation. The book contains tips and tricks that will make things easier for you as administrators, such as running scripts to automate tasks, getting easy access to logs, and working with tools to troubleshoot problems. The book concludes with a chapter on JIRA Service Desk, which will enable you to set up and customize your own support portal, work with internal teams to solve problems, and achieve optimized services with SLA.

Who is this book for?

This book is for administrators who customize, support, and maintain JIRA for their organization.

What you will learn

  • Customize basic settings for your projects, such as screens and fields
  • Create and customize workflows to suit your business process needs
  • Make workflows more effective and efficient
  • Manage users and groups inside JIRA and manage advanced login options
  • Secure your JIRA instance using effective practices
  • Perform e-mail functionalities with JIRA
  • Extend JIRA to integrate with other products and services
Estimated delivery fee Deliver to Brazil

Standard delivery 10 - 13 business days

R$63.95

Premium delivery 3 - 6 business days

R$203.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : May 26, 2016
Length: 264 pages
Edition : 2nd
Language : English
ISBN-13 : 9781785888441
Vendor :
Atlassian
Languages :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to Brazil

Standard delivery 10 - 13 business days

R$63.95

Premium delivery 3 - 6 business days

R$203.95
(Includes tracking information)

Product Details

Publication date : May 26, 2016
Length: 264 pages
Edition : 2nd
Language : English
ISBN-13 : 9781785888441
Vendor :
Atlassian
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
R$50 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
R$500 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just R$25 each
Feature tick icon Exclusive print discounts
R$800 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just R$25 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total R$ 947.97
JIRA 7 Essentials
R$367.99
Mastering JIRA 7
R$272.99
JIRA 7 Administration Cookbook
R$306.99
Total R$ 947.97 Stars icon
Banner background image

Table of Contents

9 Chapters
1. JIRA Server Administration Chevron down icon Chevron up icon
2. Customizing JIRA for Your Projects Chevron down icon Chevron up icon
3. JIRA Workflows Chevron down icon Chevron up icon
4. User Management Chevron down icon Chevron up icon
5. JIRA Security Chevron down icon Chevron up icon
6. E-mails and Notifications Chevron down icon Chevron up icon
7. Integrations with JIRA Chevron down icon Chevron up icon
8. JIRA Troubleshooting Chevron down icon Chevron up icon
9. JIRA Service Desk Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
(3 Ratings)
5 star 33.3%
4 star 33.3%
3 star 33.3%
2 star 0%
1 star 0%
praveen ad Feb 14, 2017
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I just ordered this book , let me see once i will go through.ThanksPraveen
Amazon Verified review Amazon
J. Kelly Jan 16, 2017
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
I like the clear and concise steps to accomplish various administrative tasks. It was great to learn how to integrate JIRA with Google drive (and possibly Box) to link documents with tickets.
Amazon Verified review Amazon
Amazon Customer Dec 24, 2016
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
Good Book if you follow along with the Workflow Samples. Also note, updates are frequent from Atlassian so gets outdated very Quickly. The online Support Page from Atlassian is a better resource. A good section of the Book could have been dedicated to Add-ons and Plug-ins.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela