Konfiguration
Alle TypeScript actions basieren auf einem JSON-Konfigurationsfile, das grundlegende Verbindungsdetails für die verschiedenen Repository Services, einen Abschnitt zum Mapping der Repository Objekte und andere Einstellungen enthält.
Ein Beispielfile befindet sich im config Ordner.
Konfigurationsabschnitte
Die Datei enthält die folgenden Abschnitte:
- Verbindungsdetails für docuteam box
- Verbindungsdetails für Fedora 3 (im Falle einer Migration)
- Verbindungsdetails für Fedora 6
- Verbindungsdetails für docuteam feeder
- Share-Konfiguration zum Übermitteln von Daten an Box (verwendet in der Aktion Fedora Instantiation ersetzen). Diese Aktion sendet keine Daten direkt an Box, sondern übermittelt Box den Pfad zur Datei und die von der Replace-API benötigten Metadaten, die sich in der Regel in einem Ordner in der Feeder-Workbench befinden. Dieser Ordner muss für den Server, auf dem Box installiert ist, zugänglich sein. Bei der Übertragung dieses Pfads an Box wird der als
absolutePathdefinierte Teil des Pfads durch den entsprechenden Freigabenamennameersetzt. Eine ähnliche Konfiguration in box.yml ersetzt dann dennamedurch den vom Box-Server gültigenabsolutePath, um auf die Dateien zuzugreifen. - Mapping der Tabelle, die ein vorliegendes Submission Agreement einem Fedora 6 Präfix zuordnet (verwendet in Import von Matterhorn RDF in Fedora). Der Präfix zeigt eine top-level Ressource an, an die die Ressourcen aus einem SIP anschliessend angehängt werden.
- Verbindungsdetails, die in URN Register mit der Deutschen Nationalbibliothek action gebraucht werden.
- Verbindungsdetails für die kundenspezifischen actions downloadDossierFromOpenText, listAvailableDossiersFromOpenText and updateDossierStatusToOpenText
- Verbindungsdetails für die kundenspezifischen actions listAvailablePackagesFromPreIngestComponent, downloadPackageFromPreIngestComponent und reportPackageStatusToPreIngestComponent
- Verbindungsdetails für die kundenspezifischen actions sendIngestsToAccessComponent, sendUpdatesToAccessComponent und checkForAndDeleteExistingPackagesByRefCode
- Verbindungsdetails für die kundenspezifischen actions sendIngestsToAccessComponent, sendUpdatesToAccessComponent
Ein Beispiel einer solchen Datei:
{
"box": {
"baseUrl": "https://repository.docuteam.test/box",
"token": "secretKey"
},
"fedora3": {
"baseUrl": "https://repository.docuteam.test/fedora",
"password": "fedoraAdmin",
"username": "fedoraAdmin"
},
"fedora6": {
"baseUrl": "https://repository.docuteam.test/fcrepo/rest",
"password": "fedoraAdmin",
"username": "fedoraAdmin"
},
"feeder": {
"baseUrl": "http://feeder:3000",
"token": "secretKey"
},
"shares": [
{
"name": "box_development_volume",
"absolutePath": "/some/path/to/folder"
}
],
"submissionAgreementsToPrefixMapping": [
{
"submissionAgreementId": "sa_006-01_dss-01",
"fedora6Prefix": "org_006"
},
{
"submissionAgreementId": "sa_it-01_dss-01",
"fedora6Prefix": "org_it"
},
{
"submissionAgreementId": "sa_all-formats-01_dss-01",
"fedora6Prefix": "org_123"
},
{
"submissionAgreementId": "sa_mus-2_dss-02",
"fedora6Prefix": "org_002"
}
],
"urnService": {
"apiBaseUrl": "https://api.nbn-resolving.org/sandbox/v2",
"credentials": [
{
"namespace": "urn:nbn:ch:bel1",
"username": "SLB31390",
"password": "xxxx"
},
{
"namespace": "urn:nbn:ch:bel2",
"username": "SLB31390",
"password": "xxxx"
}
]
},
"openTextService": {
"baseUrl": "https://opentext.docuteam.test",
"username": "admin",
"password": "admin",
"supId": "1234"
},
"preIngestComponent": {
"baseUrl": "https://pre-ingest.docuteam.test",
"username": "admin",
"password": "admin"
},
"accessComponentQueue": {
"queueUrl": "https://dip-queue.docuteam.test/api/v2/dip/docuteam-abn",
"username": "admin",
"password": "admin"
},
"accessComponentS3": {
"baseUrl": "https://s3.docuteam.ch",
"region": "eu-west-1",
"username": "username",
"bucket": "bucket-name",
"folder": "folder-name",
"accessKey": "xxxx",
"secretKey": "xxxx"
}
}