Importing data from Jenkins

The Jenkins Importer helps you to migrate projects deployed in Jenkins to Bamboo.

Requirements & supported configurations

While the importer assists and supports the migration of projects from Jenkins to Bamboo, a small amount of manual configuration may also be required.

Jenkins VersionRequired Dependencies*Jenkins Project TypesRepository TypesBuild StepsNotificationsParameter TypesOther plugins

(tick) Jenkins 1.581

(tick) Jenkins built-in job dependencies

(tick) Pipelines plugin 1.3.3

(tick) Join plugin 1.15

(tick) Freestyle

(tick) Maven

(error) Matrix

(tick) Git 1.1.25

(tick) SVN 1.43

(error) Mercurial

(error) CVS

(error) Perforce

(tick) Maven

(tick) Ant 1.1

(tick) Script

(tick) Email

(tick) Boolean

(tick) Choice

(tick) String

(tick) Password

(tick) EnvInject plugin 1.73

(tick) JavaDoc 1.0

(tick) Wall Display plugin


The Required Dependencies are the functional Jenkins plugins that the Bamboo Jenkins Importer requires to be present. These must be present in your Jenkins instance.

Using the Jenkins importer

1. Start the importer

You must have administration priviliges to run the Jenkins Importer.

The Jenkins Importer is accessed from the welcome screen or Administration panel. To start the Jenkins Importer:

If running Bamboo for the first time

From the Bamboo Welcome screen:

  1. Click Import from...
  2. Select Import from Jenkins.


If already running Bamboo

From anywhere within the Bamboo interface:

  1. Click on the Administration tab at the top of the Bamboo interface
  2. Scroll down to the System side panel
  3. Click on Import from Jenkins.

The Locate Jenkins screen will appear.

2. Select Jenkins data for importing

You may either import Jenkins data from its home location on the Bamboo server, or you may import from a zipped archive of your Jenkins home:

Importing from the Jenkins home location

From the Locate Jenkins interface:

  1. Click the Source of Jenkins home dropdown menu
  2. Select Location on the Bamboo server
  3. Enter the path to your Jenkins home directory in the text field
  4. Click Next.

You must specify the path to your Jenkins home directory.

Importing from an archived Jenkins home

From anywhere within the Bamboo interface:

  1. Click the Source of Jenkins home dropdown menu
  2. Select Upload a zip archive
  3. Click Choose Files. A file manager window will open. Us it to locate your zipped Jenkins home directory
  4. Click Next.

 When creating your Jenkins zip archive, you need to remove or exclude the userContent and builds directory for each job from the archive before zipping:

  1. Make a copy of Jenkins home
  2. Remove/exclude the userContent directory
  3. Remove/exclude the builds directory
  4. Zip the archive.

Bamboo Jenkins Importer supports only ZIP file archives. Other archive formats such as tar and tar.gz are not currently supported.


Once you have selected your Jenkins data and clicked Next, the Jenkins job and pipeline selector will open.

3. Configure Jenkins data for import

The Job and Pipeline selector screen allows you to select and configure which Jenkins import items you would like to import into Bamboo. Import items include Jenkins pipelines and jobs, and the importer will identify how many items were found for processing:


The Jenkins Importer processes both Jenkins pipelines and jobs, but handles each differently:


Jenkins Import ItemDescriptionBamboo EquivalentJenkins Importer Process
PipelineA group of associated jobs linked using a Jenkins pipelinePlan
  • Creates a new Bamboo plan
  • Imports individual pipeline jobs as Bamboo jobs into the new plan
JobA stand alone build jobJob
  • Imports job into a Bamboo plan with a single associated job within the plan


Importing a Jenkins job

To import a Jenkins job:

  1. Locate the relevant Jenkins Import item on the selector screen
  2. Ensure the Import Jobs check box is checked
  3. Enter a Bamboo Job Name (or leave to accept the default name from Jenkins)
  4. Check the Enabled in Bamboo? check box. To disable an imported job, leave the box unchecked. Bamboo will not automatically run a disabled job.

By default, all jobs are selected for importing. To reject a Jenkins job for importation:

  1. Locate the relevant Jenkins Import item on the selector screen
  2. Uncheck the Import Jobs check box

Importing a Jenkins pipeline

To import a Jenkins pipeline, all of the associated jobs must be imported. The importing of individual jobs is described above.

Changing the imported Bamboo plan or job name

By default, the Jenkins Importer uses the Jenkins import item name as the default for the Bamboo name. To change the default name:

  1. Locate the relevant Jenkins Import item on the selector screen
  2. Enter a new name in the Bamboo Plan Name text field

Existing Bamboo plans

Existing Bamboo plans are not overwritten when you use the Jenkins Importer. When importing Jenkins data, Bamboo creates a new project called 'Imported from Jenkins' to contain all of the newly imported plans.

Starting the import

When you have identified and selected all of the Jenkins import items that you require, click Next at the bottom of the screen. Bamboo will start to import the specified plans and a progress indicator screen will display:

Once importing has finished, the importer results screen will display.

4. Review the importer results

The Importer Results screen shows the success outcome of the import activity for each import item. The three possible success outcomes are:

  • Success
  • Partial 
  • Fail

An example of Importer results is seen below.



Success

A 'success' result indicates that the Jenkins item was successfully imported into Bamboo. No additional work is required.

Partial

A 'partial' result indicates that the import was partially successful, however there may be unmapped configuration or other issues that require attention.

Fail

A 'fail' result indicates that the importer was unable to import the Jenkins job or pipeline if the repository type is unsupported, none of the build steps could be converted to tasks or another unknown error occurred.

The Import log

In the case of a fail or partial, additional information can be obtained from the Import log, which provides the following:

  • The name of the attempted job import
  • The severity if the problem/issue. Severity is rated as:
    • Low – warning that might be interesting to the administrator such as how dependencies were imported
    • Medium – unsupported publishers or other configurations that are non-crital to running the build
    • High – unsupported repository or none of the build steps could be imported
    • Fatal – un-handled error that prevents the job from importing at all
  • A brief description of the problem/issue.

An example Import Log entry can be seen below:

--------------------------------------------------------------------------------------
Job name: SPLAN_DOCS
SEVERITY: HIGH
Unsupported configuration for plugin 'ClearCase UCM Plugin'
--------------------------------------------------------------------------------------


It is possible that an import item has multiple problems/issues. Where this is the case, the Import Log will identify the severity and brief description for each problem/issue associated with an import item. An example Import Log entry detailing multiple problems/issues can be seen below:

--------------------------------------------------------------------------------------
Job name: DLINK_CODE_CHECK
SEVERITY: HIGH
Unsupported configuration for plugin 'ClearCase Plugin'
SEVERITY: HIGH
Requested plugin parameterized-trigger but we don't support it
SEVERITY: HIGH
Requested plugin downstream-ext but we don't support it
SEVERITY: FATAL
Scm cannot be imported
--------------------------------------------------------------------------------------


The import log is accessed by clicking on the Import Log link associated with an import issue, or by clicking on the Download import log file button at the base of the Import Results screen.

Missing or incompatible plugins

From time to time, Bamboo may not support particular Jenkins functionality. When this occurs, a great place to look is the Atlassian Marketplace. The Marketplace contains over 120 add-ons and plugins for Bamboo, and you will more than likely find a plugin for your functionality there. If you can't find what you need in the Marketplace, then consult the 'Getting help' section below.

5. View the imported plans

Once you have completed examining the importer results, click on View Plans to examine the imported plans in the Bamboo dashboard. An example of plans imported from Jenkins is seen below:

Imported plans can now be configured and managed using existing Bamboo methods.

Getting Help

Support

Help with the Jenkins importer is never far away. The best way to get help is to raise a support ticket directly via the Atlassian support site.

To create a support ticket:

  1. Download the import log
  2. Go to https://support.atlassian.com and select Create New Issue
  3. Enter a detailed description of your problem within the support ticket
  4. Attach the import log and lodge your support ticket
  5. Wait to be notified of updates by Email




Last modified on Mar 26, 2018

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.