A collection of APIs and utilities designed to resolve application integration issues following a cloud transition. This primarily addresses the entity id mismatch that happens after a cloud migration. After a cloud transition there is a possibility that the ID of an entity may change. For example, if there is an API access to get project details by project ID and after cloud migration if the project id changes then the API access will lead to incorrect results. CTT provides utilities to map the entity ids.
This also provides integration fixes to solve custom integrations like URL Access, API Access and JQL. Custom integration fixes can be built on top of these APIs to resolve the integration issues. For example: JQL Filter translation, API translation, URL translation and 3P App usage translation. The application is scoped by the Cloud URL. Multiple migration and scopes are supported from different server/dc to a single destination cloud. If you have a requirement for multiple destination clouds, then you can create a new instance of the application for each destination cloud.
CTT is built as a Spring Boot application. You can run the application as a standalone application or deploy it as a docker container. Refer to the loom video for a quick demo on how to use CTT.
Use Java 17
and Maven 3.9.9
or later for development. More details in the Dockerfile.
- Create
application.properties
file in root directory. Refer to application.properties.template for a reference. - Make sure to set
cloudURL
in application.properties file along with optional values for data store and loader. - If you are using persistent storage, make sure to add the database details.
Run following maven commands to build and run the application.
- Install all required libraries
(cd libs && mvn clean install)
- Install and run CTT application
mvn clean install -DskipTests
mvn spring-boot:run
Run following commands to build and run the docker image.
docker build -t ctt .
docker run -p 8080:8080 ctt
Once the application has been built, you can access the API endpoints relative to the base URL.
- Openapi API Docs
ctt/v3/api-docs
- Swagger UI
ctt/swagger-ui.html
All the unit tests can be run using below commands
- To run all tests
mvn test
- To run specific tests
mvn test -Dtest=ClassName1,ClassName2
Contributions to Cloud Transition Tools are welcome, in fact we are looking forward to it as multiple app/ vendor integrations can only be solved by larger community/ vendor participation. It would best fit to the vendor to provide the integration fixes for their products by using the APIs provided by CTT.
Please see CONTRIBUTING.md for details.
Copyright (c) 2024 Atlassian US., Inc. Apache 2.0 licensed, see LICENSE file.