Skip to main content

Migrate Jenkins Pipeline to Elestio

info

This migration document focuses on Jenkins, which is supported by Elestio. Find the complete software list here

This document provides a step-by-step guide for migrating your existing Jenkins pipelines to Elestio. Elestio is designed to enhance performance, scalability, and overall system efficiency.

1️⃣ Pre-requisites​

  1. Create Account: Set up your account on Elestio
  2. Access Current Jenkins: Log in to your Jenkins admin dashboard on the server where your current Jenkins is deployed
  3. Check Jenkins Health: Ensure your application works correctly with no critical errors in logs
  4. Version Matching: Use the same Jenkins version on Elestio as your current service to prevent migration failures

2️⃣ Setting Up Jenkins on Elestio​

Step 1: Deploy Jenkins Service​

  1. Log in to your Elestio account
  2. Go to "Create Services" and select "Jenkins"
  3. Select your cloud service provider, region, and service plan, then click "Next"

Step 2: Configure Service​

Select service support level, name your Jenkins instance, and click "Create Service". This creates a Jenkins instance on your chosen cloud infrastructure.

Step 3: Access Deployment Information​

After deployment, check your email (linked to your account or specified during setup) for deployment details including:

  • Dashboard link
  • Initial admin password
  • Access credentials

Step 4: Initial Login​

Your email should contain information similar to this:

Jenkins deployment email with credentials

Copy the password from the email and enter it in the Jenkins login screen:

Jenkins initial login interface

3️⃣ Importing Pipeline Data​

Step 1: Review Source Pipelines​

For this tutorial, we'll import two simple pipelines from a source server:

Source Jenkins pipelines example

Step 2: Install Job Import Plugin​

  1. Navigate to your Elestio Jenkins dashboard
  2. Click "Manage Jenkins" and select "Plugins"

Jenkins plugin management interface

  1. Install the "Job Import" plugin
  2. Restart Jenkins if required

Job Import plugin installation

Step 3: Configure Remote Jenkins Connection​

  1. Navigate to "Manage Jenkins" → "System"
  2. Scroll to the "Job Import Plugin" section
  3. Click "Add Remote Jenkins"

Job Import Plugin configuration

Step 4: Add Source Jenkins Credentials​

  1. Enter your original Jenkins server information
  2. Click "Add Credentials" to add source Jenkins server credentials

Jenkins credentials configuration

  1. Select the credentials from the dropdown
  2. Ensure your configuration looks similar to this:

Complete remote Jenkins configuration

Step 5: Save Configuration​

Apply and save the remote Jenkins settings

4️⃣ Importing Jobs​

Step 1: Access Job Import Plugin​

Navigate to the Jenkins dashboard and click on "Job Import Plugin" (now visible in the menu)

Job Import Plugin access from dashboard

Step 2: Query Source Jenkins​

  1. Select your source server from the dropdown
  2. Check "Search into folders" to avoid specifying remote folder paths
  3. Click "Query"

Job Import Plugin query configuration

Step 3: Select and Import Jobs​

  1. Review all available pipelines from your source server
  2. Select the pipelines you want to migrate (or select all)
  3. Click "Import"

Pipeline selection and import interface

Congratulations! 🎉 You have successfully imported pipelines from your source server.

5️⃣ Testing the Migration​

Verify Pipeline Import​

  1. Navigate to the Jenkins dashboard
  2. Confirm all pipelines have been imported correctly
  3. Test pipeline execution to ensure functionality

Migrated pipelines verification

Post-Migration Checks​

  1. Test Pipeline Execution: Run a few test builds to ensure pipelines work correctly
  2. Verify Credentials: Ensure all necessary credentials are properly configured
  3. Check Plugin Compatibility: Verify all required plugins are installed and compatible
  4. Update Webhooks: Update Git repository webhooks to point to your new Elestio Jenkins instance
  5. Review Notifications: Configure email notifications and other integrations

6️⃣ Post-Migration Steps​

After successful migration, consider these additional steps:

  1. Update SCM Integration: Point your repositories to the new Jenkins instance
  2. Configure Security: Set up appropriate user permissions and security settings
  3. Backup Strategy: Implement regular backups for your Jenkins configuration
  4. Monitor Performance: Set up monitoring for your Jenkins instance
  5. Update Documentation: Update any documentation referencing the old Jenkins URLs

7️⃣ Need Additional Help?​

Stuck somewhere? We're here to help! Create a support ticket and we'll get back to you promptly.