-image: chocobozzz/peertube-ci:10
+image: chocobozzz/peertube-ci:14
stages:
- - build-and-lint
- - test
- clients
- docker-nightly
- - external-plugins
cache:
key: yarn
only:
refs:
- master
- - schedules
changes:
- support/doc/api/openapi.yaml
script:
- mkdir -p /kaniko/.docker
- echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$CI_REGISTRY_AUTH\",\"email\":\"$CI_REGISTRY_EMAIL\"}}}" > /kaniko/.docker/config.json
script:
- - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/support/docker/production/Dockerfile.buster --destination $DOCKER_IMAGE_NAME
+ - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $DOCKERFILE --destination $DOCKER_IMAGE_NAME
build-docker-develop:
<<: *docker
- schedules
variables:
DOCKER_IMAGE_NAME: chocobozzz/peertube:develop-buster
+ DOCKERFILE: $CI_PROJECT_DIR/support/docker/production/Dockerfile.buster
+
+build-docker-webserver:
+ <<: *docker
+ only:
+ - schedules
+ variables:
+ DOCKER_IMAGE_NAME: chocobozzz/peertube-webserver
+ DOCKERFILE: $CI_PROJECT_DIR/support/docker/production/Dockerfile.nginx
build-docker-tag:
<<: *docker
- tags
variables:
DOCKER_IMAGE_NAME: chocobozzz/peertube:$CI_COMMIT_TAG-buster
+ DOCKERFILE: $CI_PROJECT_DIR/support/docker/production/Dockerfile.buster
build-docker-master:
<<: *docker
- master
variables:
DOCKER_IMAGE_NAME: chocobozzz/peertube:production-buster
-
-test-external-plugins:
- stage: external-plugins
- only:
- - schedules
- services:
- - name: postgres:9.6
- alias: postgres
- - name: redis:latest
- alias: redis
- - name: rroemhild/test-openldap
- alias: ldap
- variables:
- POSTGRES_USER: peertube
- POSTGRES_HOST_AUTH_METHOD: trust
- REDIS_HOST: redis
- artifacts:
- expire_in: 1 day
- paths:
- - test*/logs
- when: always
- before_script:
- - 'sed -i -z "s/database:\n hostname: ''localhost''/database:\n hostname: ''postgres''/" config/test.yaml'
- - 'sed -i -z "s/redis:\n hostname: ''localhost''/redis:\n hostname: ''redis''/" config/test.yaml'
- - NOCLIENT=1 yarn install --pure-lockfile --cache-folder .yarn-cache
- script:
- - PGHOST=postgres PGUSER=peertube npm run ci -- "external-plugins"
+ DOCKERFILE: $CI_PROJECT_DIR/support/docker/production/Dockerfile.buster