| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 1 | SRC_DIR ?= test/resources/DNB |
| 2 | BUILD_DIR = build |
| 3 | TARGET_DIR ?= target |
| Marc Kupietz | b769699 | 2024-03-18 17:41:15 +0100 | [diff] [blame] | 4 | DEPLOY_HOST ?= compute.ids-mannheim.de |
| 5 | DEPLOY_USER ?= korap |
| 6 | DEPLOY_PATH ?= /export/netapp/korap4dnb |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 7 | |
| Marc Kupietz | b769699 | 2024-03-18 17:41:15 +0100 | [diff] [blame] | 8 | .PHONY: all clean test krill index deploy server-log server-status |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 9 | |
| Marc Kupietz | fc32862 | 2024-03-16 14:31:34 +0100 | [diff] [blame] | 10 | .PRECIOUS: %.zip %.tree_tagger.zip %.ud.zip %.spacy.zip %.i5.xml %.tar |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 11 | |
| Marc Kupietz | b769699 | 2024-03-18 17:41:15 +0100 | [diff] [blame] | 12 | .DELETE_ON_ERROR: |
| 13 | |
| Marc Kupietz | feed26a | 2024-03-17 19:16:23 +0100 | [diff] [blame] | 14 | all: index |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 15 | |
| Marc Kupietz | 3d82f56 | 2024-03-16 10:19:03 +0100 | [diff] [blame] | 16 | krill: $(TARGET_DIR)/dnb.krill.tar |
| Marc Kupietz | 012c708 | 2024-03-17 16:40:47 +0100 | [diff] [blame] | 17 | index: $(TARGET_DIR)/dnb.index.tar.xz |
| Marc Kupietz | 3d82f56 | 2024-03-16 10:19:03 +0100 | [diff] [blame] | 18 | |
| Marc Kupietz | fa445da | 2024-03-16 10:46:22 +0100 | [diff] [blame] | 19 | KORAPXML2CONLLU ?= java -jar lib/korapxml2conllu.jar |
| 20 | |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 21 | $(TARGET_DIR)/dnb.i5.xml: $(patsubst $(SRC_DIR)/%.epub,$(TARGET_DIR)/%.i5.xml,$(wildcard $(SRC_DIR)/*.epub)) |
| 22 | head -n -1 xslt/idsCorpus-template.xml > $@ |
| 23 | cat $^ >> $@ |
| 24 | tail -n 1 xslt/idsCorpus-template.xml >> $@ |
| 25 | |
| Marc Kupietz | dfbc3f4 | 2024-03-16 11:46:41 +0100 | [diff] [blame] | 26 | test: $(TARGET_DIR)/dnb.i5.xml |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 27 | xmllint --noout --valid $< |
| 28 | |
| 29 | $(BUILD_DIR)/%: $(SRC_DIR)/%.epub |
| 30 | mkdir -p $@ |
| 31 | echo "Converting $< to $@" |
| 32 | unzip -q -o $< -d $@ |
| 33 | |
| Marc Kupietz | dfbc3f4 | 2024-03-16 11:46:41 +0100 | [diff] [blame] | 34 | $(TARGET_DIR)/%.i5.xml: $(BUILD_DIR)/% xslt/epub2i5.xsl xslt/idsCorpus-template.xml |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 35 | mkdir -p $(TARGET_DIR) |
| 36 | echo "Converting $< to $@" |
| 37 | java -jar lib/saxon9ee.jar -xsl:xslt/epub2i5.xsl $</*/content.opf > $@ |
| 38 | |
| 39 | %.zip: %.i5.xml |
| 40 | tei2korapxml -l warn -s -tk - < $< > $@ |
| 41 | |
| 42 | %.tree_tagger.zip: %.zip |
| Marc Kupietz | fa445da | 2024-03-16 10:46:22 +0100 | [diff] [blame] | 43 | $(KORAPXML2CONLLU) $< | pv | docker run --rm -i korap/conllu2treetagger -l german | conllu2korapxml > $@ |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 44 | |
| 45 | %.spacy.zip: %.zip |
| Marc Kupietz | fa445da | 2024-03-16 10:46:22 +0100 | [diff] [blame] | 46 | $(KORAPXML2CONLLU) $< | pv | docker run --rm -i korap/conllu2spacy | conllu2korapxml > $@ |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 47 | |
| 48 | %.ud.zip: %.zip |
| Marc Kupietz | fa445da | 2024-03-16 10:46:22 +0100 | [diff] [blame] | 49 | $(KORAPXML2CONLLU) $< | pv | ./scripts/udpipe2 | conllu2korapxml > $@ |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 50 | |
| Marc Kupietz | 22ad4b7 | 2024-03-17 16:24:21 +0100 | [diff] [blame] | 51 | %.krill.tar: %.zip %.ud.zip %.tree_tagger.zip %.spacy.zip |
| Marc Kupietz | 3d82f56 | 2024-03-16 10:19:03 +0100 | [diff] [blame] | 52 | mkdir -p $(basename $@) |
| Marc Kupietz | fc32862 | 2024-03-16 14:31:34 +0100 | [diff] [blame] | 53 | korapxml2krill archive --quiet -w -z -cfg krill-korap4dnb.cfg --non-word-tokens --meta I5 -i $< -i $(word 2,$^) -i $(word 3,$^) -o $(basename $@) |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 54 | |
| Marc Kupietz | fc32862 | 2024-03-16 14:31:34 +0100 | [diff] [blame] | 55 | %.json: %.krill.tar |
| 56 | rm -rf $@ |
| 57 | mkdir -p $@ |
| 58 | for f in $<; do tar -C $@ -xf $$f; done |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 59 | |
| Marc Kupietz | 22ad4b7 | 2024-03-17 16:24:21 +0100 | [diff] [blame] | 60 | %.index: %.json |
| 61 | rm -rf $@ |
| Marc Kupietz | 012c708 | 2024-03-17 16:40:47 +0100 | [diff] [blame] | 62 | java -jar lib/Krill-Indexer.jar -c lib/krill.conf -i $< -o $@ |
| Marc Kupietz | 22ad4b7 | 2024-03-17 16:24:21 +0100 | [diff] [blame] | 63 | |
| 64 | %.index.tar.xz: %.index |
| 65 | tar -I 'xz -T0' -C $(dir $<) -cf $@ $(notdir $<) |
| 66 | |
| Marc Kupietz | b769699 | 2024-03-18 17:41:15 +0100 | [diff] [blame] | 67 | deploy: $(TARGET_DIR)/dnb.index.tar.xz korap4dnb-compose.yml |
| 68 | rsync -v $^ $(DEPLOY_USER)@$(DEPLOY_HOST):$(DEPLOY_PATH)/ |
| 69 | ssh $(DEPLOY_USER)@$(DEPLOY_HOST) "mkdir -p $(DEPLOY_PATH) && cd $(DEPLOY_PATH) && docker compose -p korap4dnb --profile=lite -f $(notdir $(word 2,$^)) up -d --dry-run && docker compose -p korap4dnb stop && (mv -f dnb.index dnb.index.bak || true) && tar Jxvf $(notdir $<) && docker compose -p korap4dnb --profile=lite -f $(notdir $(word 2,$^)) up -d" |
| 70 | |
| 71 | show-server-log: |
| 72 | ssh $(DEPLOY_USER)@$(DEPLOY_HOST) "cd $(DEPLOY_PATH) && docker compose -p korap4dnb --profile=lite -f korap4dnb-compose.yml logs -f" |
| 73 | |
| 74 | show-server-status: |
| 75 | ssh $(DEPLOY_USER)@$(DEPLOY_HOST) "cd $(DEPLOY_PATH) && docker compose -p korap4dnb --profile=lite -f korap4dnb-compose.yml ps" |
| 76 | |
| Marc Kupietz | 1a42266 | 2024-03-16 09:34:10 +0100 | [diff] [blame] | 77 | clean: |
| 78 | rm -rf $(BUILD_DIR) $(TARGET_DIR) |
| 79 | |