You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ocrd-galley/.travis.yml

66 lines
2.6 KiB
YAML

language: generic
services:
- docker
git:
submodules: false # Avoid trying to checkout private data/ submodule
stages:
- name: "Build Docker image"
- name: "Test"
- name: "Deploy Docker image - latest"
if: branch = master
- name: "Deploy Docker image - tagged"
if: tag IS present
jobs:
include:
- stage: "Build Docker image"
script:
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
# We are using the image my_ocrd_workflow to cache, so pull and tag it
- docker pull $DOCKER_USERNAME/my_ocrd_workflow
- docker tag $DOCKER_USERNAME/my_ocrd_workflow my_ocrd_workflow
- FORCE_DOWNLOAD=y ./build
- docker tag my_ocrd_workflow $DOCKER_USERNAME/my_ocrd_workflow:$TRAVIS_COMMIT
- docker images
- docker push $DOCKER_USERNAME/my_ocrd_workflow:$TRAVIS_COMMIT
- stage: "Test"
script:
- docker pull $DOCKER_USERNAME/my_ocrd_workflow:$TRAVIS_COMMIT
- docker tag $DOCKER_USERNAME/my_ocrd_workflow:$TRAVIS_COMMIT my_ocrd_workflow
- curl -O https://qurator-data.de/examples/actevedef_718448162.first-page.zip
- unzip actevedef_718448162.first-page.zip
- cd actevedef_718448162.first-page
- $TRAVIS_BUILD_DIR/run --skip-validation
# XXX Enable validation again when ocrd_olena is fixed https://github.com/OCR-D/ocrd_olena/issues/60
- curl --upload-file OCR-D-OCR-CALAMARI/OCR-D-OCR-CALAMARI_00000024.xml https://transfer.sh/my_ocrd_workflow_$RANDOM.xml 1>&2
- grep -q 'auswa.rtige Rechtsgela.hrte ha.tten mu...en bef.aget werden' OCR-D-OCR-CALAMARI/OCR-D-OCR-CALAMARI_00000024.xml
- grep -q 'auswa.rtige Rechtsgela.hrte ha.tten mu...en bef.aget werden' OCR-D-OCR-TESS/OCR-D-OCR-TESS_00000024.xml
- stage: "Deploy Docker image - latest"
env: DOCKER_TAG=latest
script:
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
- docker pull $DOCKER_USERNAME/my_ocrd_workflow:$TRAVIS_COMMIT
- docker tag $DOCKER_USERNAME/my_ocrd_workflow:$TRAVIS_COMMIT $DOCKER_USERNAME/my_ocrd_workflow:$DOCKER_TAG
- docker push $DOCKER_USERNAME/my_ocrd_workflow:$DOCKER_TAG
- stage: "Deploy Docker image - tagged"
env: DOCKER_TAG=$TRAVIS_TAG
script:
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
- docker pull $DOCKER_USERNAME/my_ocrd_workflow:$TRAVIS_COMMIT
- docker tag $DOCKER_USERNAME/my_ocrd_workflow:$TRAVIS_COMMIT $DOCKER_USERNAME/my_ocrd_workflow:$DOCKER_TAG
- docker push $DOCKER_USERNAME/my_ocrd_workflow:$DOCKER_TAG