NAME
fedora_admin.pl - Fedora Commons Administrative client
SYNOPSIS
./fedora_admin.pl [options] [cmd]
cmd:
list
doc ID [DSID]
find query|terms STR
update ID [active|inactive|deleted]
purge ID
list_datastreams ID
list_methods ID
list_relationships ID
set_relationships ID FILE
get_dissemination ID SDEFPID METHOD
get_datastream ID DSID [DATE]
set_datastream ID DSID url|file|xml FILE
update_datastream ID DSID active|inactive|deleted|versionable|notversionable
purge_datastream ID DSID
validate ID
history ID [DSID]
xml ID
export ID
import ID|new file|xml FILE
options:
--database=<NAME>
--exporter=<EXPORTER>
--importer=<IMPORTER>
--param foo=bar
-y
-d directory_containing_catmandu.yml
DESCRIPTION
fedora_admin.pl is a Fedora Commons-compatible client that execute HTTP Rest commands to a Fedora server.
fedora_admin.pl is intended to be conformat to Fedora Commons version up to Fedore 3.6.x.
CONFIGURATION
This script requires a catmandu.yml file containing the connection parameters to the Fedora repository. Here is an example 'catmandu.yml' file:
---
store:
fedora:
package: FedoraCommons
options:
baseurl: http://localhost:8080/fedora
username: fedoraAdmin
password: fedoraAdmin
This file needs to be provided in the working directory or can be specified in the directory given by the -d option or specified in the environment by setting CATMANDU_CONF
export CATMANDU_CONF=/etc/catamandu_conf_dir
OPTIONS
- --database name
-
Name of a Fedora Commons server configured in catmandu.yml.
- --exporter exporter
-
Name of a Catmandu::Exporter or a configuration in catmandu.yml.
- --importer importer
-
Name of a Catmandu::Importer or a configuration in catmandu.yml.
- --param FOO=BAR
-
Pass a parameter "FOO" with value "BAR" as optional parameter to a fedora_admin.pl command.
- -y
-
Answer yes to all question.
- -f directory_containing_catmandu.yml
-
Configuration directory
COMMANDS
- list
-
Returns a list of all object identifiers (pid-s) that are store in the Fedora server.
- doc ID
-
Returns a short description of the object with identifier ID (audit trail, dublin core, object properties, pid and version).
- doc ID DSID
-
Return a short description about the latets version of datastream DSID in object ID.
- find query|term QUERY
-
Execute a search query on the Fedora Commons server. One of 'query' or 'terms' is required.
- update ID active|inactive|deleted
-
Updates the status of an object with identifier ID.
- purge ID
-
Purges the object with identifier ID.
- list_datastreams ID
-
Returns a listing of all datastreams for an object with identifier ID.
- list_methods ID
-
Returns a listing of all methods for an object with identifier ID.
- list_relations ID
-
Returns a RDF/Turtle expression of all relationships defined for an object with identifier ID. The turtle includes all relationships for all the datastreams.
- set_relationships ID FILE
-
Updates all relationships of an object with identifier ID with RDF/Turtle expressions from FILE.
$ cat /tmp/rel.ttl <info:fedora/demo:20> <info:fedora/fedora-system:def/model#hasModel> <info:fedora/fedora-system:ServiceDeployment-3.0> ; <info:fedora/fedora-system:def/model#isContractorOf> <info:fedora/demo:FO_TO_PDFDOC>, <info:fedora/demo:TEI_TO_PDFDOC> ; <info:fedora/fedora-system:def/model#isDeploymentOf> <info:fedora/demo:19> . $ fedora_admin.pl set_relationships demo:20 /tmp/rel.ttl
- get_dissemination ID SDEFPID METHOD
-
Returns the binary stream when executing a dissemination on an object with identifier ID, sDef definition SDEFPID and method identifier METHOD.
$ fedora_admin.pl --param width=100 demo:29 demo:27 resizeImage
- get_datastream ID DSID
-
Returns the binary stream for an object with identifier ID and data stream identifier DSID.
- set_datastream ID DSID url|file|xml FILE
-
Updates a data stream DSID for an object with identifiet ID. Use the url, file or xml upload mechanism to import a file FILE.
$ fedora_admin.pl demo:99 PDF file /tmp/my/pdf $ fedora_admin.pl --param controlGroep=E \ demo:99 PDF url http://inst.org/my.pdf
- update_datastream ID DSID active|inactive|deleted|versionable|notversionable
-
Update the datastream status of an object with identifier ID and data stream identifier DSID.
- purge_datastream ID DSID
-
Purges the data stream DSID from an object with identifier ID.
- validate ID
-
Validate the content of an object with identifier ID.
- history ID [DSID]
-
Returns the version history of an object with identifier ID. Optionally provide a data stream identifier DSID.
- xml ID
-
Return an XML dump of an object with identifier ID.
- export ID
-
Exports the object with identifier ID to standard ouput.
$ fedora_admin.pl --param context=archive demo:999
See https://wiki.duraspace.org/display/FEDORA36/REST+API#RESTAPI-export for possible parameters.
- import ID|new file|xml FILE
-
Imports an object into the Fedora store. Force an own identifier using or let the Fedora store mint a new one using 'new'.
$ fedora_admin.pl --param format=info:fedora/fedora-system:ATOMZip-1.1 \ demo:999 file /tmp/demo_999.zip $ fedora_admin.pl --param format=info:fedora/fedora-system:ATOMZip-1.1 \ --param ownerId=admin \ new file /tmp/demo_999.zip
See https://wiki.duraspace.org/display/FEDORA36/REST+API#RESTAPI-ingest for possible parameters.
SEE ALSO
L<Catmandu>, L<Catmandu::FedoraCommons>
AUTHORS
Patrick Hochstenbach, "<patrick.hochstenbach at ugent.be>"
LICENSE AND COPYRIGHT
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.