Dokumentation optimieren und vereinheitlichen
This commit is contained in:
parent
24b142ae5a
commit
81e55bd784
13
README.md
13
README.md
|
@ -84,18 +84,24 @@ Harvesting von OAI-PMH-Schnittstellen und Transformation in METS/MODS für das P
|
||||||
|
|
||||||
## Nutzung
|
## Nutzung
|
||||||
|
|
||||||
* Alle Datenquellen harvesten und transformieren (parallelisiert)
|
* Alle Datenquellen harvesten, transformieren und validieren (parallelisiert)
|
||||||
|
|
||||||
```
|
```
|
||||||
task default
|
task
|
||||||
```
|
```
|
||||||
|
|
||||||
* Eine Datenquelle harvesten und transformieren
|
* Eine Datenquelle harvesten, transformieren und validieren
|
||||||
|
|
||||||
```
|
```
|
||||||
task siegen:default
|
task siegen:default
|
||||||
```
|
```
|
||||||
|
|
||||||
|
* Zwei Datenquellen harvesten, transformieren und validieren (parallelisiert)
|
||||||
|
|
||||||
|
```
|
||||||
|
task --parallel siegen:default wuppertal:default
|
||||||
|
```
|
||||||
|
|
||||||
* Links einer Datenquelle überprüfen
|
* Links einer Datenquelle überprüfen
|
||||||
|
|
||||||
```
|
```
|
||||||
|
@ -116,7 +122,6 @@ Harvesting von OAI-PMH-Schnittstellen und Transformation in METS/MODS für das P
|
||||||
|
|
||||||
## Konfiguration
|
## Konfiguration
|
||||||
|
|
||||||
* Umgebungsvariablen in [Taskfile.yml](Taskfile.yml)
|
|
||||||
* Workflow für die Datenquellen in [tasks](tasks)
|
* Workflow für die Datenquellen in [tasks](tasks)
|
||||||
* Beispiel: [tasks/siegen.yml](tasks/siegen.yml)
|
* Beispiel: [tasks/siegen.yml](tasks/siegen.yml)
|
||||||
* OpenRefine-Transformationsregeln in [rules](rules)
|
* OpenRefine-Transformationsregeln in [rules](rules)
|
||||||
|
|
|
@ -29,6 +29,10 @@ tasks:
|
||||||
msg: "requirement OpenRefine missing"
|
msg: "requirement OpenRefine missing"
|
||||||
- sh: test -x "$OPENREFINE_CLIENT"
|
- sh: test -x "$OPENREFINE_CLIENT"
|
||||||
msg: "requirement openrefine-client missing"
|
msg: "requirement openrefine-client missing"
|
||||||
|
- sh: test -n "$(command -v curl)"
|
||||||
|
msg: "requirement curl missing"
|
||||||
|
- sh: test -n "$(command -v xmllint)"
|
||||||
|
msg: "requirement xmllint missing"
|
||||||
deps:
|
deps:
|
||||||
- task: wuppertal:default
|
- task: wuppertal:default
|
||||||
- task: siegen:default
|
- task: siegen:default
|
||||||
|
|
|
@ -4,7 +4,7 @@ version: '3'
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
default:
|
default:
|
||||||
desc: harvesten und transformieren
|
desc: OPUS Siegen harvesten und transformieren
|
||||||
deps: [harvest]
|
deps: [harvest]
|
||||||
cmds:
|
cmds:
|
||||||
- task: refine
|
- task: refine
|
||||||
|
@ -15,7 +15,6 @@ tasks:
|
||||||
- task: diff
|
- task: diff
|
||||||
|
|
||||||
harvest:
|
harvest:
|
||||||
desc: nur harvesten
|
|
||||||
dir: data/siegen/harvest
|
dir: data/siegen/harvest
|
||||||
cmds:
|
cmds:
|
||||||
- METHA_DIR=$PWD metha-sync --format xMetaDissPlus https://dspace.ub.uni-siegen.de/oai/request
|
- METHA_DIR=$PWD metha-sync --format xMetaDissPlus https://dspace.ub.uni-siegen.de/oai/request
|
||||||
|
@ -23,10 +22,10 @@ tasks:
|
||||||
|
|
||||||
refine:
|
refine:
|
||||||
dir: data/siegen/refine
|
dir: data/siegen/refine
|
||||||
ignore_error: true # provisorisch verwaisten Java-Prozess bei Exit vermeiden https://github.com/go-task/task/issues/141
|
ignore_error: true # provisorisch verwaisten Java-Prozess bei Exit vermeiden https://github.com/go-task/task/issues/141
|
||||||
env:
|
env:
|
||||||
PORT: 3334
|
PORT: 3334
|
||||||
RAM: 8G
|
RAM: 4G
|
||||||
PROJECT: siegen
|
PROJECT: siegen
|
||||||
cmds:
|
cmds:
|
||||||
# OpenRefine starten
|
# OpenRefine starten
|
||||||
|
@ -86,7 +85,7 @@ tasks:
|
||||||
# Logdatei von OpenRefine auf Warnungen und Fehlermeldungen prüfen
|
# Logdatei von OpenRefine auf Warnungen und Fehlermeldungen prüfen
|
||||||
- if grep -i 'exception\|error' openrefine.log; then echo 1>&2 "Logdatei $PWD/openrefine.log enthält Warnungen!" && exit 1; fi
|
- if grep -i 'exception\|error' openrefine.log; then echo 1>&2 "Logdatei $PWD/openrefine.log enthält Warnungen!" && exit 1; fi
|
||||||
# Prüfen, ob Mindestanzahl von 1250 Datensätzen generiert wurde
|
# Prüfen, ob Mindestanzahl von 1250 Datensätzen generiert wurde
|
||||||
- if (( 1250 > $(grep -c recordIdentifier siegen.txt) )); then echo 1>&2 "Unerwartet geringe Anzahl an Datensätzen in $PWD/wuppertal.txt!" && exit 1; fi
|
- if (( 1250 > $(grep -c recordIdentifier siegen.txt) )); then echo 1>&2 "Unerwartet geringe Anzahl an Datensätzen in $PWD/siegen.txt!" && exit 1; fi
|
||||||
|
|
||||||
split:
|
split:
|
||||||
dir: data/siegen/split
|
dir: data/siegen/split
|
||||||
|
@ -147,8 +146,9 @@ tasks:
|
||||||
cmds:
|
cmds:
|
||||||
# Links extrahieren
|
# Links extrahieren
|
||||||
- xmllint --xpath '//@*[local-name(.) = "href"]' split/*.xml | cut -d '"' -f2 > links.txt
|
- xmllint --xpath '//@*[local-name(.) = "href"]' split/*.xml | cut -d '"' -f2 > links.txt
|
||||||
# http status code aller Links ermitteln
|
# http status code aller Links ermitteln
|
||||||
- curl --silent --head --write-out "%{http_code} %{url_effective}\n" $(while read line; do echo "-o /dev/null $line"; done < links.txt) > linkcheck.log
|
- curl --silent --head --write-out "%{http_code} %{url_effective}\n" $(while read line; do echo "-o /dev/null $line"; done < links.txt) > linkcheck.log
|
||||||
|
- rm -rf links.txt
|
||||||
# Logdatei auf status code != 2XX prüfen
|
# Logdatei auf status code != 2XX prüfen
|
||||||
- if grep '^[^2]' linkcheck.log; then echo 1>&2 "Logdatei $PWD/linkcheck.log enthält problematische status codes!" && exit 1; fi
|
- if grep '^[^2]' linkcheck.log; then echo 1>&2 "Logdatei $PWD/linkcheck.log enthält problematische status codes!" && exit 1; fi
|
||||||
sources:
|
sources:
|
||||||
|
@ -157,6 +157,8 @@ tasks:
|
||||||
- linkcheck.log
|
- linkcheck.log
|
||||||
|
|
||||||
delete:
|
delete:
|
||||||
desc: harvesting cache löschen
|
desc: cache löschen
|
||||||
cmds:
|
cmds:
|
||||||
- rm -rf data/siegen/harvest
|
- rm -rf data/siegen/harvest
|
||||||
|
- rm -rf data/siegen/refine
|
||||||
|
- rm -rf data/siegen/split
|
||||||
|
|
|
@ -4,7 +4,7 @@ version: '3'
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
default:
|
default:
|
||||||
desc: harvesten und transformieren
|
desc: Elpub Wuppertal harvesten und transformieren
|
||||||
deps: [harvest]
|
deps: [harvest]
|
||||||
cmds:
|
cmds:
|
||||||
- task: refine
|
- task: refine
|
||||||
|
@ -15,7 +15,6 @@ tasks:
|
||||||
- task: diff
|
- task: diff
|
||||||
|
|
||||||
harvest:
|
harvest:
|
||||||
desc: nur harvesten
|
|
||||||
dir: data/wuppertal/harvest
|
dir: data/wuppertal/harvest
|
||||||
cmds:
|
cmds:
|
||||||
- METHA_DIR=$PWD metha-sync --format oai_dc http://elpub.bib.uni-wuppertal.de/servlets/OAIDataProvider
|
- METHA_DIR=$PWD metha-sync --format oai_dc http://elpub.bib.uni-wuppertal.de/servlets/OAIDataProvider
|
||||||
|
@ -23,10 +22,10 @@ tasks:
|
||||||
|
|
||||||
refine:
|
refine:
|
||||||
dir: data/wuppertal/refine
|
dir: data/wuppertal/refine
|
||||||
ignore_error: true # provisorisch verwaisten Java-Prozess bei Exit vermeiden https://github.com/go-task/task/issues/141
|
ignore_error: true # provisorisch verwaisten Java-Prozess bei Exit vermeiden https://github.com/go-task/task/issues/141
|
||||||
env:
|
env:
|
||||||
PORT: 3335
|
PORT: 3335
|
||||||
RAM: 8G
|
RAM: 4G
|
||||||
PROJECT: wuppertal
|
PROJECT: wuppertal
|
||||||
cmds:
|
cmds:
|
||||||
# OpenRefine starten
|
# OpenRefine starten
|
||||||
|
@ -62,8 +61,6 @@ tasks:
|
||||||
- $OPENREFINE_CLIENT -P $PORT --apply ../../../rules/wuppertal/hbz.json $PROJECT
|
- $OPENREFINE_CLIENT -P $PORT --apply ../../../rules/wuppertal/hbz.json $PROJECT
|
||||||
# Sortierung mods:nonSort für das erste Element in dc:title
|
# Sortierung mods:nonSort für das erste Element in dc:title
|
||||||
- $OPENREFINE_CLIENT -P $PORT --apply ../../../rules/wuppertal/nonsort.json $PROJECT
|
- $OPENREFINE_CLIENT -P $PORT --apply ../../../rules/wuppertal/nonsort.json $PROJECT
|
||||||
#TODO # Links prüfen: HTTP status code ermitteln (z.B. 200)
|
|
||||||
#TODO - $OPENREFINE_CLIENT -P $PORT --apply ../../../rules/wuppertal/linkcheck.json $PROJECT
|
|
||||||
# Export in METS:MODS mit Templating
|
# Export in METS:MODS mit Templating
|
||||||
- |
|
- |
|
||||||
$OPENREFINE_CLIENT -P $PORT --export --template "$(< ../../../rules/wuppertal/template.txt)" --rowSeparator "
|
$OPENREFINE_CLIENT -P $PORT --export --template "$(< ../../../rules/wuppertal/template.txt)" --rowSeparator "
|
||||||
|
@ -153,6 +150,7 @@ tasks:
|
||||||
- xmllint --xpath '//@*[local-name(.) = "href"]' split/*.xml | cut -d '"' -f2 > links.txt
|
- xmllint --xpath '//@*[local-name(.) = "href"]' split/*.xml | cut -d '"' -f2 > links.txt
|
||||||
# http status code aller Links ermitteln
|
# http status code aller Links ermitteln
|
||||||
- curl --silent --head --write-out "%{http_code} %{url_effective}\n" $(while read line; do echo "-o /dev/null $line"; done < links.txt) > linkcheck.log
|
- curl --silent --head --write-out "%{http_code} %{url_effective}\n" $(while read line; do echo "-o /dev/null $line"; done < links.txt) > linkcheck.log
|
||||||
|
- rm -rf links.txt
|
||||||
# Logdatei auf status code != 2XX prüfen
|
# Logdatei auf status code != 2XX prüfen
|
||||||
- if grep '^[^2]' linkcheck.log; then echo 1>&2 "Logdatei $PWD/linkcheck.log enthält problematische status codes!" && exit 1; fi
|
- if grep '^[^2]' linkcheck.log; then echo 1>&2 "Logdatei $PWD/linkcheck.log enthält problematische status codes!" && exit 1; fi
|
||||||
sources:
|
sources:
|
||||||
|
@ -161,6 +159,8 @@ tasks:
|
||||||
- linkcheck.log
|
- linkcheck.log
|
||||||
|
|
||||||
delete:
|
delete:
|
||||||
desc: harvesting cache löschen
|
desc: cache löschen
|
||||||
cmds:
|
cmds:
|
||||||
- rm -rf data/wuppertal/harvest
|
- rm -rf data/wuppertal/harvest
|
||||||
|
- rm -rf data/wuppertal/refine
|
||||||
|
- rm -rf data/wuppertal/split
|
||||||
|
|
Loading…
Reference in New Issue