image: 'python:3.8'
stages:
  - check_style
#  - test
  - build
  - build_clarin_json

before_script:
  - pip install tox==4.5.1

pep8:
  stage: check_style
  script:
    - tox -v -e pep8

docstyle:
  stage: check_style
  script:
    - tox -v -e docstyle

#auto_tests:
#  stage: test
#  script:
#    - tox -v -e tests

build_image:
  stage: build
  image: 'docker:18.09.7'
  only:
    - master
  services:
    - 'docker:18.09.7-dind'
  variables:
    DOCKERHUB_NAME: clarinpl/anonymizer
  before_script:
    - ''
  script:
    - docker build -t $DOCKERHUB_NAME .
    - echo $DOCKER_PASSWORD > pass.txt
    - cat pass.txt | docker login --username $DOCKER_USERNAME --password-stdin
    - rm pass.txt
    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
    - docker image tag $DOCKERHUB_NAME $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
    - docker image tag $DOCKERHUB_NAME $CI_REGISTRY_IMAGE:latest
    - docker push $CI_REGISTRY_IMAGE

build_clarin_json:
  only:
    - clarin_json_support
  stage: build_clarin_json
  image: docker:18.09.7
  services:
    - 'docker:18.09.7-dind'
  before_script:
    - ''
  script:
    - docker build -t $CI_REGISTRY_IMAGE:clarin-json .
    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
    - docker push $CI_REGISTRY_IMAGE:clarin-json