How to create a Test Environment

Article ID:360059464831
2 minute readKnowledge base

Issue

The user wants to create a test environment to replicate the production environment.

Resolution

Creating a test environment for CloudBees products will require a license so, please, send the instance ID of the test instance to Support Service and they will send you a test instance license.

We recommend having a separate test environment with a similar setup of the production environment, with representative jobs.

It is highly recommended having jobs on the test controller that are representative of jobs on the production controller so you will be able to exercise the key plugins to your workflow, and the interactions with any external systems (SCM, artifact repositories, bug trackers, cloud automation).

It’s generally best to build some jobs which are a good subset of representative jobs on this test cluster. These dedicated jobs should represent the production jobs, but without touching your real data. We recommend to talk with your development groups to find jobs that they feel cover the main functionality:

  • test your end-to-end complex pipeline jobs

  • test those jobs that utilize critical plugins

  • run jobs which are part of integrations

  • run jobs which are for specific technologies

After creating the test environment, update the configuration for some representative jobs so they do not collide with your production jobs, and run them to ensure they work correctly. Credentials will need to be re-created on your test instance.

For traditional platform

To clone a production controller to a test controller, follow the steps from Migration Guide: CloudBees Jenkins Platform and CloudBees Jenkins Team, specifically, the section titled:

Case B - Migrate Entire Jenkins Configuration, Including Jobs Option A - Just Migration

For modern platform

To clone a production controller to a test controller, take a backup of your ‘production’ controller Using the CloudBees Backup plugin , then create a brand new controller running the same version (same docker image) and startup arguments over on your ‘test’ or ‘dev’ operations center, then create a restore job and restore the JENKINS_HOME data by using Restoring from backup (using a restore job).