This tool aims to assist SAP customers using SAP Cloud Integration on Neo datacenters who wish to upgrade to SAP Integration Suite on Multi-Cloud datacenters.
Important: There is an official migration pack available via SAP Note 2937549 which leverages a collection of Postman scripts. This Github repository is not related with the official migration pack mentioned in the SAP Note. However, the functionality is very similar:
This repo keeps track of versions via Tags:
- Tag v1.0.x: scope similar to Postman collection v1.5.0 (26 Feb 2021)
- Tag v1.1.x: scope similar to Postman collection v1.6.0 (14 Feb 2022) (Variables)
- Tag v1.2.x: scope similar to Postman collection v1.7.1 (30 May 2022) (Certificate-to-User Mapping)
- Tag v1.3.x: scope similar to Postman collection v1.8.0 (12 Dec 2022) (Data Stores)
This Github repository is an alternative tool which aims to achieve the same as the Postman collection while offering greater flexibility and control over your migration project. Areas where this tool provides an advantage over the Postman collection:
- Creation of 'Migration Tasks' which focus on a subset of the content in the tenant;
- Advanced features like script scanning;
- Area for customization to include your own code or migration logic;
- API enabled, to run specific Migration Tasks from external triggers (e.g. CI-CD or Job Scheduling);
This tool is provided as-is and is not covered by SAP Support. A write-up about this tool can be found here: SAP Blog: Getting Grips on your Cloud Integration Migration from Neo to Cloud Foundry
You will need:
- A SAP Cloud Integration tenant on Neo (source system)
- A SAP Integration Suite tenant on Cloud Foundry (target system)
If you don't have a SAP Integration Suite license yet, you can use the BTP Free Tier available at no cost. See https://blogs.sap.com/2021/11/17/sap-integration-suite-free-tier-is-now-available-on-sap-btp/
This tool is designed to run locally on your own laptop, server or VM. It is developed using the SAP Cloud Application Programming Model, using Node.js as server language. It can also be hosted on SAP Business Technology Platform natively via CF, HC and Work Zone, or via Docker.
Locally stored data is kept in a local SQLite database file.
You can use the provided Dockerfile to install and run the application:
In Terminal or Command Prompt, run:
- Download this tool from git:
git clone https://github.com/SAP/migration-tool-for-cloud-integration.git --depth 1
- Navigate into the root project folder:
cd migration-tool-for-cloud-integration
- Install this tool: run
npm install && mbt build
- Prepare/rebuild the SQLite database:
cds deploy --to sqlite
- Build this tool:
docker build -t migrationtool .
(in case you receive an error on the Sqlite3 package, delete the package-lock.json file and try the build again)
Now the tool is built and can be started:
- Start the tool:
docker run -p 4004:4004 migrationtool
- Open your local browser to:
http://localhost:4004/home.html
To stop the tool, in Terminal or Command Prompt, press control-C
It is required to have an active installation of Node.js (version 20 or later), available from the Node.js website, including Node Package Manager (NPM). You can verify your installed version via node -v
.
To install, in Terminal or Command Prompt, run:
- Install the SAP CAP SDK 'CDS-DK':
npm i -g @sap/cds-dk
- Download this tool from git:
git clone https://github.com/SAP/migration-tool-for-cloud-integration.git --depth 1
- Navigate into the root project folder:
cd migration-tool-for-cloud-integration
- Install this tool: run
npm install && mbt build
- Prepare/rebuild the SQLite database:
cds deploy --to sqlite
Now the tool is installed and can be started:
- Start the tool:
npm start
- Open your local browser to:
http://localhost:4004/home.html
To stop the tool, in Terminal or Command Prompt, press control-C
This option requires you to have a HANA Cloud database or PostgresSQL, and a subscription to SAP Work Zone Standard edition.
Note: The default mta.yaml
configuration specifies HANA Cloud as database. To switch to PostgresSQL, do the following:
- Change
package.json
: Set cds > requires > [production] > db > kind to 'postgres' - Change
mta.yaml
:- Disable the
migrationtool-db
line in the 'requires' section of themigrationtool-srv
module in favor of themigrationtool-postgres
line. - Disable the
migrationtool-db-deployer
module in favor of themigrationtool-postgres-deployer
module. - Disable the
migrationtool-db
resource in favor of themigrationtool-postgres
resource.
- Disable the
To install, in Terminal or Command Prompt, run:
- Install the SAP CAP SDK 'CDS-DK':
npm i -g @sap/cds-dk
- Download this tool from git:
git clone https://github.com/SAP/migration-tool-for-cloud-integration.git --depth 1
- Navigate into the root project folder:
cd migration-tool-for-cloud-integration
- Install this tool:
npm install
- Build the project:
mbt build --mtar migrationtool
- Deploy the project:
cf deploy ./mta_archives/migrationtool.mtar
Now you can add the Fiori applications to your Work Zone site via the Work Zone Admin site:
- Sync your HTML5 repository
- Add the HTML5 apps to your content
- Assign the apps to a Group and Role (or use Spaces and Pages)
- Create a Site containing the Role
Now you can grant users access to the application via the BTP Cockpit Role Collections
- Assign the CF role
CPI Migration Tool User
- Assign the front-end role created by you in the previous step
Now the tool can be accessed via Work Zone:
To locally monitor the application logs, run the following command in Terminal: cf logs migrationtool-srv | egrep -o '\[APP\/PROC\/WEB\/\d\] OUT .*'
To enable Hybrid mode, excute cds bind -2 migrationtool-db --for hana-hybrid
to fetch the HANA database credentials.
Run your local application via cds-ts watch --profile hana-hybrid
.
Enable SSH (once) and open an SSH tunnel to your local machine:
cf enable-ssh migrationtool-srv
cf restage migrationtool-srv
cf service-key migrationtool-postgres migrationtool-db-key
cf ssh -L 12345:<hostname>:<port> migrationtool-srv -N
(example: cf ssh -L 12345:postgres-e9593b14-8ab5-474f-bbc7-25d01b8fbffb.crkc3ulytfr9.eu-central-1.rds.amazonaws.com:8232 migrationtool-srv -N )
Add the credentials of the migrationtool-db-key
service key to the pg-hybrid
section of package.json.
Run your local application via cds-ts watch --profile pg-hybrid
.
To learn how to use the tool, please refer to the user documentation.
- 1.95.0: (deprecated) Most stable, but does not support showCount=true (manifest) for Task Items table in MigrationTasks > Detail screen
- 1.96.2: (deprecated) Issue: does not show Integration Artifacts table in Explore Tenant > Integration Packages > Detail screen
- 1.97.0: (deprecated) Issue: does not show Integration Artifacts table in Explore Tenant > Integration Packages > Detail screen, but solves the showCount issue of 1.95.0
- 1.99.0: Deprecated
- 1.108.2: Stable
- 1.126.2: Stable
- 1.129.2: Issue: empty message boxes
- 1.130.7: Stable
- 1.133.0: Issue: dynamically hidden fields still visible
- 1.136.1: Issue: iFlows not visualized (wait for 1.136.2 fix)
- 1.138.1: Stable
Specify the version to be used in /app/home.html (when running locally), or in each of the 4 application's manifest.json
files in the sap.platform.cf.ui5versionNumber
setting (when deployed to Work Zone).
Version availability: https://ui5.sap.com/versionoverview.html
- 5.5.4: Works
- 5.6.2: Issue: UPDATE function to update ExistInSource columns in MigrationTasks has bugs
- 5.7.3: Stable
- 5.8.3: Stable
- 6.3.2: Stable
- 6.8.4: Stable
- 7.0.2: Stable (new major release, so some codeline was migrated)
- 7.9.3: Stable
- 8.3.1: Stable
- 8.5.1: Stable
- 9.0.3: Stable
- 9.1.3: Stable
More information on changelog: https://cap.cloud.sap/docs/releases
None so far, but please also refer to FAQ and Limitations
Please search or create a new Issue in this Github repository to obtain support.
Contributions are certainly welcome, see ways to contribute.
See Our Code of Conduct.
Copyright 2021 SAP SE or an SAP affiliate company and migration-tool-for-cloud-integration contributors. Please see our LICENSE for copyright and license information.