2019-08-04 16:10:32 +02:00
|
|
|
dist: bionic
|
|
|
|
|
2019-08-09 19:28:04 +02:00
|
|
|
jobs:
|
|
|
|
include:
|
|
|
|
- stage: build
|
2019-09-24 00:20:10 +02:00
|
|
|
# TODO: Shallowly clone again once the .git folder is no longer required for building
|
|
|
|
git:
|
|
|
|
depth: false
|
2019-08-09 19:28:04 +02:00
|
|
|
language: crystal
|
|
|
|
crystal: latest
|
|
|
|
before_install:
|
|
|
|
- shards update
|
|
|
|
- shards install
|
|
|
|
install:
|
2019-09-24 00:19:18 +02:00
|
|
|
- crystal build --warnings all --error-on-warnings src/invidious.cr
|
2019-08-09 19:28:04 +02:00
|
|
|
script:
|
|
|
|
- crystal tool format --check
|
|
|
|
- crystal spec
|
2019-08-04 16:10:32 +02:00
|
|
|
|
2019-08-09 19:28:04 +02:00
|
|
|
- stage: build_docker
|
2019-09-24 00:20:10 +02:00
|
|
|
# TODO: Shallowly clone again once the .git folder is no longer required for building
|
|
|
|
git:
|
|
|
|
depth: false
|
2019-08-09 19:28:04 +02:00
|
|
|
language: minimal
|
|
|
|
services:
|
|
|
|
- docker
|
|
|
|
install:
|
|
|
|
- docker-compose build
|
|
|
|
script:
|
|
|
|
- docker-compose up -d
|
|
|
|
- sleep 15 # Wait for cluster to become ready, TODO: do not sleep
|
|
|
|
- HEADERS="$(curl -I -s http://localhost:3000/)"
|
|
|
|
- STATUS="$(echo $HEADERS | head -n1)"
|
|
|
|
- if [[ "$STATUS" != *"200 OK"* ]]; then echo "$HEADERS"; exit 1; fi
|