]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - .gitlab-ci.yml
Translated using Weblate (Russian)
[github/Chocobozzz/PeerTube.git] / .gitlab-ci.yml
1 image: chocobozzz/peertube-ci:14
2
3 stages:
4 - clients
5 - docker-nightly
6
7 cache:
8 key: yarn
9 paths:
10 - .yarn-cache
11 - cached-fixtures
12
13 build-openapi-clients:
14 stage: clients
15 only:
16 refs:
17 - master
18 changes:
19 - support/doc/api/openapi.yaml
20 script:
21 - apt-get update -qq
22 - apt-get -yqqq install openjdk-8-jre
23 - yarn install --pure-lockfile
24 - scripts/openapi-peertube-version.sh
25 - scripts/openapi-clients.sh
26
27 build-nightly:
28 stage: docker-nightly
29 only:
30 - schedules
31 script:
32 - yarn install --pure-lockfile --cache-folder .yarn-cache
33 - npm run nightly
34 - mkdir "${HOME}/.ssh"
35 - chmod 700 "${HOME}/.ssh"
36 - if [ ! -z ${DEPLOYEMENT_KNOWN_HOSTS+x} ]; then echo -e "${DEPLOYEMENT_KNOWN_HOSTS}" > ${HOME}/.ssh/known_hosts; fi
37 - eval `ssh-agent -s`
38 - if [ ! -z ${DEPLOYEMENT_KEY+x} ]; then ssh-add <(echo "${DEPLOYEMENT_KEY}"); fi
39 - if [ ! -z ${DEPLOYEMENT_KEY+x} ]; then scp ./peertube-nightly-* ${DEPLOYEMENT_USER}@${DEPLOYEMENT_HOST}:../../web/nightly; fi
40
41 .docker: &docker
42 stage: docker-nightly
43 cache: {}
44 image:
45 name: gcr.io/kaniko-project/executor:debug
46 entrypoint: [""]
47 before_script:
48 - mkdir -p /kaniko/.docker
49 - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$CI_REGISTRY_AUTH\",\"email\":\"$CI_REGISTRY_EMAIL\"}}}" > /kaniko/.docker/config.json
50 script:
51 - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $DOCKERFILE --destination $DOCKER_IMAGE_NAME
52
53 build-docker-develop:
54 <<: *docker
55 only:
56 - schedules
57 variables:
58 DOCKER_IMAGE_NAME: chocobozzz/peertube:develop-buster
59 DOCKERFILE: $CI_PROJECT_DIR/support/docker/production/Dockerfile.buster
60
61 build-docker-webserver:
62 <<: *docker
63 only:
64 - schedules
65 variables:
66 DOCKER_IMAGE_NAME: chocobozzz/peertube-webserver
67 DOCKERFILE: $CI_PROJECT_DIR/support/docker/production/Dockerfile.nginx
68
69 build-docker-tag:
70 <<: *docker
71 only:
72 - tags
73 variables:
74 DOCKER_IMAGE_NAME: chocobozzz/peertube:$CI_COMMIT_TAG-buster
75 DOCKERFILE: $CI_PROJECT_DIR/support/docker/production/Dockerfile.buster
76
77 build-docker-master:
78 <<: *docker
79 only:
80 - master
81 variables:
82 DOCKER_IMAGE_NAME: chocobozzz/peertube:production-buster
83 DOCKERFILE: $CI_PROJECT_DIR/support/docker/production/Dockerfile.buster