Taxonomy Migration

With the Taxonomy Migration utility, you can import the taxonomies and respective terms using a CSV file created using one of the following methods:

This step-by-step guide lets you use the Taxonomy Migration utility to perform the taxonomy migration operation on a stack.

Prerequisites

Note If you are using a CSV template to generate the CSV file, the Taxonomy Name and Term Level* Name fields are mandatory.

Additional Resource Here is a sample script to import taxonomies into your stack. Preferably, use this sample script to try out the commands in this guide.

Usage

csdx cm:stacks:migration --file-path <value> --config data-dir:<value> --stack-api-key <value>

Options

  • -k, --stack-api-key=stack-api-key: Stack API key.
  • --config=config: [Inline configuration] The key for receiving data-dir and delimiter. To provide the path of the CSV file in the data-dir, use data-dir:<value>. If you used a delimiter while exporting or manually creating taxonomies to CSV, use {data-dir:<value>,delimiter:<value>}.
  • --file-path=filepath: Path where the taxonomy migration files are stored.

    Tip Preferably, use the sample taxonomy migration script to import taxonomies.

Example

Without delimiter:

csdx cm:stacks:migration -k b*******9ca0 --file-path "../contentstack-migration/examples/taxonomies/import-taxonomies.js" --config data-dir:'./data/Taxonomy Stack_taxonomies.csv'

Note For Windows OS, use "\" instead of "/" for paths.

With delimiter (Mac OS):

csdx cm:stacks:migration -k b*******9ca0 --file-path "../contentstack-migration/examples/taxonomies/import-taxonomies.js" --config {data-dir:'./data/Taxonomy Stack_taxonomies.csv',delimiter:'|'}

With delimiter (Windows OS):

csdx cm:stacks:migration -k b*********d4 --file-path "C:\Users\v***h\Desktop\Contentstack\CLI\Taxonomy\import-taxonomies.js" --config data-dir:'C:\Users\v***h\Desktop\Contentstack\CLI\Taxonomy\test_taxonomies.csv' delimiter:','

Steps for Execution

Follow the steps below to run the taxonomy migration command:

  1. Provide the following flags in the cm:stacks:migration command to import taxonomy:
    • File path that contains the taxonomy migration files.

      Note Provide the file path of the downloaded sample script.

    • Stack API key
    • Config that contains the CSV file path and the delimiter

      Note You must provide a delimiter in config only if you used a delimiter while exporting taxonomies to CSV or generating CSV file manually.

    csdx cm:stacks:migration --stack-api-key <value> --file-path <value> --config {data-dir:<value>,delimiter:<value>}

    Note For Windows OS, use ',' as the delimiter.

  2. Run the command in your terminal.

You have successfully migrated taxonomies from your CSV file to the provided stack.

Without delimiter:

Click to enlarge

With delimiter (Windows OS):

Click to enlarge

With delimiter (Mac OS):

Click to enlarge

Troubleshoot

If you are facing a Migration Unsuccessful or Module cannot be found error, please try one of the following troubleshooting methods:

  • Troubleshoot in your current terminal session:
    1. Windows (CMD):
      FOR /F "usebackq tokens=*" %i IN (`npm root -g @contentstack/cli`) DO SET NODE_PATH=%i/@contentstack/cli/node_modules
    2. Windows (PowerShell):
      foreach ($i in $(npm root -g @contentstack/cli)) { $env:NODE_PATH = "$i/@contentstack/cli/node_modules" }
    3. Mac/Unix:
      export NODE_PATH="$(npm root -g @contentstack/cli)/@contentstack/cli/node_modules"
  • Troubleshoot in the entire session:
    npm link fast-csv