Step 0: Prerequisites
Before running the importer, you should have installed the pi-nuxeo-marketplace-x.x.x-mp.zip package into Nuxeo.
You should also have logged into the Nuxeo GUI, and created a workspace called 'Patricia' and a folder named 'Documents' in 'Patricia' workspace.
Change nuxeo.conf file and make JVM parameters are set properly. For example:
JAVA_OPTS=-Xms1024m -Xmx2048m -XX:MaxPermSize=2048m -server -Dfile.encoding=UTF-8
References:
- http://stackoverflow.com/questions/5839359/java-lang-outofmemoryerror-gc-overhead-limit-exceeded
- http://stackoverflow.com/questions/12847151/setting-xxdisableexplicitgc-in-production-what-could-go-wrong
Also execute the following (if needed) in the Patricia database:
update PAT_DMS_SETTINGS set DMS_SETTING_VALUE='false' where DMS_SETTING_KEY='file.import.completed'
Step 1: Make the files to be imported (the Documents folder) accessible
The files to be imported must be accessible by the Nuxeo server. In order for the importer to have access to the files, you must mount or copy the old Patricia (P:) file share onto the nuxeo machine. It's more reliable to copy the files to the Nuxeo server instead of mounting.
Example Mount Commands
Example mount command: linux (dom=YOURWINDOMAIN may not be needed):
mount -t cifs //server_ip_address/Patricia -o user=username,pass=mypass,dom=YOURWINDOMAIN /mnt/Patricia
Example mount command: MS Windows
net use p: \\server_ip_address\\patricia
Step 2: Download & Configure Import Script
Download pi-nuxeo-importer.zip from here: pi-nuxeo-importer.zip
After the pi-nuxeo-importer.zip is downloaded, unzip it to a folder, e.g: $HOME/pi-nuxeo-importer/
Edit config.py file, and change parameters according to the Nuxeo server information.
Step 3: Create Nuxeo Folders
The first step is to create top level Nuxeo folders, for example:
- /default-domain/workspaces/Patricia/Documents/0
- /default-domain/workspaces/Patricia/Documents/2
- /default-domain/workspaces/Patricia/Documents/4
by simply using a script:
cd ~/pi-nuxeo-importer python create_folders.py
Step 4: Generate Import URLs
In this step, we run a script to generate import URLs in a text file.
cd ~/pi-nuxeo-importer python generate_urls.py
Step 5: Import the Documents
In this step, we run a script to import documents by using the URLs text file generated in previous step.
cd ~/pi-nuxeo-importer python import_urls.py
Step 6: Monitor the Logs
You can access the logs via the following command. You can also just use a web browser to accessing: http://127.0.0.1:8080/nuxeo/site/fileImporter/log.
cd ~/pi-nuxeo-importer python log_monitor.py
You will know that the import is finished when the content of the log remains static, and ends with an import summary referencing 'SimonWatch' toolset, on the console.
Step 7: Run the post import finalizer
After the import is finished, the import finalization operation should be started (or, it will be run automatically at midnight).