The App Migration Helper is CLI tool for assisting with the migration of v1 App Framework apps to v2
The migrator executes a series of tasks to:
The migrator has a hard dependency on the public App Scaffold project.
When a v1 app is migrated, we leverage the features already built into the App Scaffold to transpile v1 app assets for v2.
|-p --path||Yes||The location of the v1 app|
|-r --replace-v1||false||No||Whether to backup v1 files, and replace with v2 during migration. Backed up files will be moved to a v1 folder, alongside the new v2 files.|
Please note that auto transforms may not work as expected. Use with caution, and always test extensively after migration. For a better understanding of how auto transforms are expected to behave, look at tests for the migrate_app_js step tests. Transforms currently available:
zdSelectMenuAPI available in v1.
Source files are under
src, test files under
src/test. The codebase
currently makes use of ES6 features by way of the Typescript compiler. To that
end, all of the source code is written in Typescript. An added bonus is that the
You will need:
brew install yarn && yarn install
Dependencies are declared via
yarn in the
typescript globally, like
npm install -g ts-node typescript.
ts-node src/index.ts migrate --path ~/path/to/v1/app/source
If not installing
typescript globally, reference the local
versions of those packages like
./node_modules/.bin/ts-node src/index.ts migrate --path ~/path/to/v1/app/source
yarn build, it is possible to run the down-level version of the
node ./lib/index.js migrate --path ~/path/to/v1/app/source.
Similarly, the down-level tests can be run like
./node_modules/.bin/mocha ./lib/test/**/*.test.js. Doing so effectively just demonstrates that the output
The App Migrator will be deployed as a node package, and/or as a dependency of other projects.