Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.04 KiB
Newer Older
Matevz Erzen's avatar
Matevz Erzen committed
image: nexus-registry.xlab.si:5001/docker:dind

variables:
  REGISTRY: registry-gitlab.xlab.si

before_script:
  - export SERVICE=$(grep SERVICE MANIFEST | cut -d '=' -f2)
  - export VERSION=$(grep VERSION MANIFEST | cut -d '=' -f2)

stages:
  - build
  - test
  - push

build:
  stage: build
  script: 
Matevz Erzen's avatar
Matevz Erzen committed
    - docker build --no-cache -t $REGISTRY/medina/$SERVICE:$VERSION .
Matevz Erzen's avatar
Matevz Erzen committed
  only:
    - develop
    - master

test:
  stage: test
  script:
Matevz Erzen's avatar
Matevz Erzen committed
    - apk add bash
    - docker stop $SERVICE || true && docker rm $SERVICE || true
    - docker run --name $SERVICE -d $REGISTRY/medina/$SERVICE:$VERSION
    - sleep 5
    - bash test/test.sh
    - docker stop $SERVICE && docker container rm $SERVICE
Matevz Erzen's avatar
Matevz Erzen committed
  only:
    - develop
    - master

push:
  stage: push
  script:
    - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $REGISTRY
    - docker tag $REGISTRY/medina/$SERVICE:$VERSION $REGISTRY/medina/$SERVICE:latest
    - docker push $REGISTRY/medina/$SERVICE:$VERSION
    - docker push $REGISTRY/medina/$SERVICE:latest
    - docker logout $REGISTRY
  only:
    - master