Table of Contents |
---|
Test Environment
Ubuntu 16.10
Composition of Resources
- No structural hierarchy
- 2 collections
- 3 books in each collection
- 2 managed images in each book of first collection
- 2 external content in the other collection of books
- relationships:
- col <hasMember> book
- book <isPartOf> col
- book <hasMember> image
- Some custom types and properties on resources
Initialization
Code Block |
---|
HOST=localhost PORT=8686 CONTEXT=f4 |
Start Fedora 4.7.1-RC-2 one-click at port=8686 and context=f4
Code Block java -Dfcrepo.dynamic.jms.port=61717 -Dfcrepo.dynamic.stomp.port=61713 -jar fcrepo-webapp/target/fcrepo-webapp-4.7.1-SNAPSHOT-jetty-console.jar --port 8686 --headless --contextPath /f4
Start Fedora 4.7.1-RC-2 one-click at port=8080 and context=fcrepo
Code Block java -jar fcrepo-webapp/target/fcrepo-webapp-4.7.1-SNAPSHOT-jetty-console.jar --port 8080 --headless --contextPath /fcrepo
- Load resources per ingest.sh
- Example RDF of resources
- Download 0.1.0 import/export jar
...
Export from /f4 without binaries
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -a -d data -m export -r http://localhost:8686/f4/rest/
Audit log looks correct
Correct resources were exported to data-dir
Import to /fcrepo
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -a -d data -m import -s http://localhost:8686/f4/rest/ -r http://localhost:8080/fcrepo/rest/
Output:
No Format $ INFO 10:11:50.360 (Importer) Running importer...
No resources loaded into /fcrepo
Looking for user notes on how to configure logging... none found
Import to /fcrepo with logging
Code Block java -Dfcrepo.log.importexport=TRACE -jar ./bin/fcrepo-import-export-0.1.0.jar -a -d data -m import -s http://localhost:8686/f4/rest/ -r http://localhost:8080/fcrepo/rest/
Output:
No Format $ DEBUG 10:14:46.806 (Importer) No container exists in the metadata directory data/fcrepo/rest.ttl for the requested resource http://localhost:8080/fcrepo/rest, importing all contained resources instead.
Question, is it possible to export from :8686/f4 to :8080/fcrepo ?
Resolution: Moved dir data/f4 to data/fcrepo, re-ran:
Code Block java -Dfcrepo.log.importexport=TRACE -jar ./bin/fcrepo-import-export-0.1.0.jar -a -d data -m import -s http://localhost:8686/f4/rest/ -r http://localhost:8080/fcrepo/rest/
Audit log indicates collections were imported, but received 400 on books
Only book placeholder resources exist
Test
...
0 Conclusions
Round-tripping from one context to another not fully supported
Re-importing resources with inter-relationships not supported
...
Test 1 - Export/Import with binaries
...
Export from /f4 with binaries
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -d data -m export -r http://localhost:8686/f4/rest/
...
Audit
...
- log looks correct
...
Correct resources were exported to data-dir, including internal and external binaries
...
- Import to /fcrepo
...
Per discovery in Test 0, moved dir data/f4 to data/fcrepo,
...
before running:
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -d data -m import -s http://localhost:8686/f4/rest/ -r http://localhost:8080/fcrepo/rest/
...
Audit log looks correct
...
Visual comparison of HTML view of repositories looks correct
...
- Note: namespaces must be defined in an external CND
...
Test 1 Conclusions
Round-tripping with binaries works as expected, noting that the data-dir must be renamed if importing to a different context
...
Test 2 - Export/Import single resource
...
Export from /f4 - single resource
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -d data -m export -r http://localhost:8686/f4/rest/collection0
...
Audit
...
- log looks correct
...
Correct resource was exported to data-dir
...
- Import to /fcrepo
...
Per discovery in Test 0, moved dir data/f4 to data/fcrepo,
...
before running:
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -d data -m import -s http://localhost:8686/f4/rest/collection0 -r http://localhost:8080/fcrepo/rest/collection0
...
Audit log has confusing output:
...
No Format $ 2017-01-08 10:59:39,544
...
import /import-export-testing/data/fcrepo/rest/collection0.ttl to http://localhost:8080/fcrepo/rest/collection0/../collection0
...
- Note: /rest/collection0/../collection0
...
Relationships point to resources with their original (/f4) URIs
...
Test 2 Conclusions
Audit logging is correct but needs polish
...
Relationships to non-imported resources are not supported
...
Test 3 - Export/Import single resource - with user-provided membership relationship, with internal binaries
...
Export from /f4 - single resource
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -p http://pcdm.org/models#hasMember -d data -m export -r http://localhost:8686/f4/rest/collection0
...
Audit
...
- log looks correct
...
Correct resources were exported to data-dir, including internal binaries
...
- Import to /fcrepo
...
Per discovery in Test 0, moved dir data/f4 to data/fcrepo,
...
before running:
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -d data -m import -s http://localhost:8686/f4/rest/collection0 -r http://localhost:8080/fcrepo/rest/collection0
...
Only targeted resource was imported
...
Import to /fcrepo, indicating membership predicate
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -p http://pcdm.org/models#hasMember -d data -m import -s http://localhost:8686/f4/rest/collection0 -r http://localhost:8080/fcrepo/rest/collection0
...
Only targeted resource was imported
...
Import to /fcrepo, not specifying single resource
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -d data -m import -s http://localhost:8686/f4/rest/ -r http://localhost:8080/fcrepo/rest/
...
Audit log looks correct
...
Correct resources were imported from data-dir, including internal binaries, relationships correct - pointing to internal resources
...
Test 3 Conclusions
User-provided membership produces expected export
...
Re-imports must either be for a single resource or for the full repository... not clear how to re-import a tree of resources based on user-provided membership predicates
...
Test 4 - Export/Import single resource - with user-provided membership relationship, with external binaries
...
Export from /f4 - single resource
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -p http://pcdm.org/models#hasMember -d data -m export -r http://localhost:8686/f4/rest/collection1
...
Audit
...
- log looks correct
...
Correct resources were exported to data-dir, including external binaries
...
Import to /fcrepo, not specifying resource... per lesson from Test 3
Code Block java -jar ./bin/fcrepo-import-export-0.1.0.jar -b -a -d data -m import -s http://localhost:8686/f4/rest/ -r http://localhost:8080/fcrepo/rest/
...
Audit
...
- log looks correct
...
Correct resources were imported from data-dir, including external binaries, relationships correct - pointing to
...
- external resources