Before starting the migration process, conduct thorough preparation to ensure a smooth transition. Document and analyze all existing CodeShip Basic and Pro projects. Gather the following information for each CloudBees CodeShip (Basic or Pro) project planned for migration:
Build Pipelines
-
Document every build, test, and deployment step.
-
CodeShip Pro:
-
Collect
codeship-steps.ymlandcodeship-services.ymlfiles. -
Use these files to define the structure and commands for workflows.
-
-
CodeShip Basic:
-
Transcribe each UI-defined command and its execution order.
-
Use these commands as the basis for workflow steps.
-
-
-
List all test scripts and commands.
-
Examples:
npm test,mvn test,pytest. -
Replicate these scripts in testing-related jobs of a workflow.
-
-
Transcribe deployment scripts and their sequence.
-
Examples:
./deploy_script.sh production,aws s3 sync,kubectl apply -f. -
Translate these activities into deployment steps in workflows.
-
-
Document build triggers.
-
Examples:
git push,pull request creation. -
Use to configure workflow triggers in workflows.
-
Environment Variables and Secrets
-
Review all environment variables defined for each project, build, or deployment step.
-
Identify sensitive variables for secure migration.
Docker Images
-
CodeShip Pro:
-
Identify the base Docker images used for building and testing in
codeship-services.yml. -
Examples:
node:22-slim,python:3.13,maven:3.8-jdk-11. -
Use to configure workflow environments.
-
-
CodeShip Basic:
-
Identify the languages used in pipelines.
-
Select appropriate Docker images for workflows.
-
Services and Integrations
-
Identify the connected source code management repositories.
-
Examples: GitHub, Bitbucket.
-
Use to configure integrations with CloudBees Unify.
-
-
List all cloud providers used in pipelines.
-
Examples: AWS, Azure, Google, Heroku.
-
-
Document notification services.
-
Examples: Slack channels, email addresses.
-
-
Identify service definitions in
codeship-services.yml.-
Use to configure services in a workflow.
-
-
List other third-party tools or services integrated into the pipeline.
-
Examples: static analysis tools, artifact repositories, vulnerability scanners.
-