blob: b4276d5a2e6fd93ff016e4f30c9423965658f640 [file] [log] [blame]
Marc Kupietz9452d322025-12-12 16:42:50 +01001image: docker:latest
2
3variables:
4 FF_NETWORK_PER_BUILD: true
5
6services:
7 - name: docker:dind
8 command: [--dns=127.0.0.11]
9
10stages:
11 - build
12 - deploy
13
14build-docker:
15 rules:
16 - if: $CI_COMMIT_TAG =~ /.+/
17 variables:
18 VID: $CI_COMMIT_TAG
19 - when: manual
20 variables:
21 VID: $CI_COMMIT_BRANCH-$CI_COMMIT_SHORT_SHA
22 stage: build
23 before_script:
24 - apk update
25 - apk add --no-cache git
26 script:
27 - docker build -f Dockerfile -t korap/tei2korapxml:$VID-large --target tei2korapxml .
28 - docker run --rm -v /var/run/docker.sock:/var/run/docker.sock mintoolkit/mint --crt-api-version 1.46 build --http-probe=false --exec='PERL5LIB=/tei2korapxml/lib /tei2korapxml/script/tei2korapxml -v || test $? -eq 2 && java -jar /tei2korapxml/share/KorAP-Tokenizer-2.3.0-standalone.jar -V' --include-path=/tei2korapxml/lib --include-path=/usr/local/share/perl5 --include-path=/usr/share/perl5 --include-path=/usr/lib/perl5 --tag korap/tei2korapxml:$VID --tag korap/tei2korapxml:latest korap/tei2korapxml:$VID-large || true
29 - ARTIFACT=tei2korapxml-${VID}.tar.xz
30 - docker save korap/tei2korapxml:$VID | xz -T0 -M16G -9 > "$ARTIFACT"
31 artifacts:
32 paths:
33 - tei2korapxml-*.tar.xz
34
35push-dockerhub:
36 stage: deploy
37 needs:
38 - job: build-docker
39 artifacts: true
40 dependencies:
41 - build-docker
42 rules:
43 - if: $CI_COMMIT_TAG =~ /^v.+/
44 when: manual
45 - when: never
46 script:
47 - apk update
48 - apk add --no-cache xz
49 - echo "$DOCKERHUB_TOKEN" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin
50 - ARTIFACT=tei2korapxml-${CI_COMMIT_TAG}.tar.xz
51 - xz -d -c "$ARTIFACT" | docker load
52 - docker tag korap/tei2korapxml:$CI_COMMIT_TAG korap/tei2korapxml:latest
53 - docker push korap/tei2korapxml:$CI_COMMIT_TAG
54 - docker push korap/tei2korapxml:latest