Skip to content
Snippets Groups Projects
.gitlab-ci.yml 2.11 KiB
Newer Older
image: golang:1.13
Christian Pointner's avatar
Christian Pointner committed
    - .gopath/
    - ui/assets_vfsdata.go
Christian Pointner's avatar
Christian Pointner committed
  - mkdir -p .gopath
  - export GOPATH="$CI_PROJECT_DIR/.gopath"
  - go generate ./ui
Christian Pointner's avatar
Christian Pointner committed
stages:
Christian Pointner's avatar
Christian Pointner committed
vet:
  stage: vet
  script:
    - go vet ./...

Christian Pointner's avatar
Christian Pointner committed
test-all-but-store:
  stage: test
  script:
    - go test -v -cover $(go list ./... | grep -v tank/store)
  stage: test
  services:
    - mysql:5.7
  variables:
    MYSQL_DATABASE: "tank"
    MYSQL_USER: "tank"
    MYSQL_PASSWORD: "aura"
    MYSQL_RANDOM_ROOT_PASSWORD: "yes"
    MYSQL_INITDB_SKIP_TZINFO: "1"
    AURA_TANK_TEST_DB_TYPE: "mysql"
    AURA_TANK_TEST_DB_HOST: "mysql"
  script:
    - go run contrib/waitfor-tcp.go mysql:3306 30
    - go test -v -cover ./store
test-store-mariadb:
  stage: test
  services:
    - mariadb:10.1
  variables:
    MYSQL_DATABASE: "tank"
    MYSQL_USER: "tank"
    MYSQL_PASSWORD: "aura"
    MYSQL_RANDOM_ROOT_PASSWORD: "yes"
    MYSQL_INITDB_SKIP_TZINFO: "1"
    AURA_TANK_TEST_DB_TYPE: "mysql"
    AURA_TANK_TEST_DB_HOST: "mariadb"
  script:
    - go run contrib/waitfor-tcp.go mariadb:3306 30
    - go test -v -cover ./store

  stage: test
  services:
    - postgres:9.6
  variables:
    POSTGRES_DB: "tank"
    POSTGRES_USER: "tank"
    POSTGRES_PASSWORD: "aura"
    AURA_TANK_TEST_DB_TYPE: "postgres"
    AURA_TANK_TEST_DB_HOST: "postgres"
  script:
    - go run contrib/waitfor-tcp.go postgres:5432 30
    - go test -v -cover ./store

Christian Pointner's avatar
Christian Pointner committed
build:
  stage: build
  script:
    - go build -ldflags "-extldflags '-static'" -tags netgo -o $CI_PROJECT_DIR/tank ./cmd/tank
    ## sqlite needs cgo... :(
    ##- go build -o $CI_PROJECT_DIR/tank ./cmd/tank

docker:
  stage: build
  image:
    name: gcr.io/kaniko-project/executor:debug
    entrypoint: [""]
  before_script: []
Christian Pointner's avatar
Christian Pointner committed
    - echo "{\"auths\":{\"index.docker.io\":{\"auth\":\"$DOCKER_HUB_AUTH\"}}}" > /kaniko/.docker/config.json
    - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination autoradio/tank:$CI_COMMIT_REF_NAME