Skip to content

Maintains the migration tools and scripts to be implemented for Salamander customer migration

License

Notifications You must be signed in to change notification settings

dogeared/stormpath-migration

Folders and files

NameName
Last commit message
Last commit date
Apr 28, 2017
Apr 28, 2017
Apr 28, 2017
Apr 28, 2017
Apr 27, 2017
Apr 28, 2017
Apr 28, 2017
Apr 27, 2017
Apr 28, 2017
Apr 27, 2017
Apr 28, 2017

Repository files navigation

stormpath-migration

Requirements

Prerequisites

To use this tool, you must have a Stormpath export unzipped on your local filesystem. The directory structure should be as follows:

├── home/
│   ├── {tenantId}/
│   │   ├── directories/
│   │   │   ├── {directoryId}.json
│   │   │   ├-- ....
│   │   ├── providers/
│   │   │   ├── {directoryId}.json
│   │   │   ├-- ....
│   │   ├── accounts/
│   │   │   ├── {directoryId}/
│   │   │   │   ├── {accountId}.json
│   │   │   │   ├-- ....
│   │   │   ├-- ....
│   │   ├── groups/
│   │   │   ├── {directoryId}/
│   │   │   │   ├── {groupId}.json
│   │   │   │   ├-- ....
│   │   │   ├-- ....
│   │   ├── organizations/
│   │   │   ├── {organizationId}.json
│   │   │   ├-- ....

Note: Providers must match 1:1 with Directories (same filenames).

Note: The 'accounts' and 'groups' folders should be segmented by {directoryId} so that it's possible to iterate over them by directory.

Here's a concrete example:

├── home/
│   ├── tenant123/
│   │   ├── directories/
│   │   │   ├── 5LInED46hB6nv9auaOrIYW.json
│   │   │   ├── 7ZBZLdnlxFsEtIs4BRpUHk.json
│   │   │   ├-- ....
│   │   ├── providers/
│   │   │   ├── 5LInED46hB6nv9auaOrIYW.json
│   │   │   ├── 7ZBZLdnlxFsEtIs4BRpUHk.json
│   │   │   ├-- ....
│   │   ├── accounts/
│   │   │   ├── 5LInED46hB6nv9auaOrIYW/
│   │   │   │   ├── 8LJuP3l2Lke9XWL4Vpie3o.json
│   │   │   │   ├-- ....
│   │   │   ├── 7ZBZLdnlxFsEtIs4BRpUHk/
│   │   │   │   ├── 4DfxGCAyrxNyiqjPQIHfHI.json
│   │   │   │   ├-- ....
│   │   ├── groups/
│   │   │   ├── 5LInED46hB6nv9auaOrIYW/
│   │   │   │   ├── 1iMYLWrjvnc833sPCBVbtU.json
│   │   │   │   ├-- ....
│   │   │   ├── 7ZBZLdnlxFsEtIs4BRpUHk/
│   │   │   │   ├── d72ghS4bBhaqzuUN6ur1g.json
│   │   │   │   ├-- ....
│   │   ├── organizations/
│   │   │   ├── 7O67Ni1CG5bo9E9NLA3kdg.json
│   │   │   ├-- ....

In this example, the "stormpathBaseDir" would be /home/tenant123.

To Install:

$ npm install -g @okta/stormpath-migration

To Run:

$ import-stormpath --stormPathBaseDir /path/to/export/data --oktaBaseUrl https://your-org.okta.com --oktaApiToken 5DSfsl4x@3Slt6

Required Args

--stormPathBaseDir (-b) Root directory where your Stormpath tenant export data lives

  • Example: --stormPathBaseDir ~/Desktop/stormpath-exports/683IDSZVtUQewtFoqVrIEe

--oktaBaseUrl (-u) Base URL of your Okta tenant

  • Example: --oktaBaseUrl https://your-org.okta.com

--oktaApiToken (-t) API token for your Okta tenant (SSWS token)

  • Example: --oktaApiToken 00gdoRRz2HUBdy06kTDwTOiPeVInGKpKfG-H4P_Lij

Optional Args

--customData (-d) Strategy for importing Stormpath Account custom data. Defaults to flatten.

  • Options

  • Example: --customData stringify

--concurrencyLimit (-c) Max number of concurrent transactions. Defaults to 30.

  • Example: --concurrencyLimit 200

--maxFiles (-f) Max number of files to parse per directory. Use to preview the entire import.

--logLevel (-l) Logging level. Defaults to info.

  • Options: error, warn, info, verbose, debug, silly
  • Example: --logLevel verbose

About

Maintains the migration tools and scripts to be implemented for Salamander customer migration

Resources

License

Stars

Watchers

Forks

Packages

No packages published