-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgitlab-ci.yml
More file actions
86 lines (64 loc) · 3.27 KB
/
gitlab-ci.yml
File metadata and controls
86 lines (64 loc) · 3.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# image: docker:git
# services:
# - docker:dind
# stages:
# - build
# - release
# - deploy
# variables:
# CONTAINER_TEST_IMAGE_FRONTEND: registry.gitlab.com/rexar/fish-follow/frontend:$CI_BUILD_REF_NAME
# CONTAINER_RELEASE_IMAGE_FRONTEND: registry.gitlab.com/rexar/fish-follow/frontend:latest
# CONTAINER_TEST_IMAGE_BACKEND: registry.gitlab.com/rexar/fish-follow/backend:$CI_BUILD_REF_NAME
# CONTAINER_RELEASE_IMAGE_BACKEND: registry.gitlab.com/rexar/fish-follow/backend:latest
# before_script:
# - echo "$CI_REGISTRY_PASSWORD" | docker login -u "$CI_REGISTRY_USER" "$CI_REGISTRY" --password-stdin
# build:
# stage: build
# script:
# - cd ./frontend
# - docker build -t $CONTAINER_TEST_IMAGE_FRONTEND .
# - docker push $CONTAINER_TEST_IMAGE_FRONTEND
# - cd ..
# - cd ./backend
# - docker build --build-arg DB=$CI_DB --build-arg TOKEN=$CI_SECRET_KEY_TOKEN -t $CONTAINER_TEST_IMAGE_BACKEND .
# - docker push $CONTAINER_TEST_IMAGE_BACKEND
# release-image:
# stage: release
# script:
# - docker pull $CONTAINER_TEST_IMAGE_FRONTEND
# - docker tag $CONTAINER_TEST_IMAGE_FRONTEND $CONTAINER_RELEASE_IMAGE_FRONTEND
# - docker push $CONTAINER_RELEASE_IMAGE_FRONTEND
# - docker pull $CONTAINER_TEST_IMAGE_BACKEND
# - docker tag $CONTAINER_TEST_IMAGE_BACKEND $CONTAINER_RELEASE_IMAGE_BACKEND
# - docker push $CONTAINER_RELEASE_IMAGE_BACKEND
# only:
# - master
# deploy:
# stage: deploy
# before_script:
# - which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )
# - eval $(ssh-agent -s)
# - echo "$CI_SSHKEY" | tr -d '\r' | ssh-add - > /dev/null
# - mkdir -p ~/.ssh
# - chmod 700 ~/.ssh
# - echo "$CI_KNOWN_HOSTS" > ~/.ssh/known_hosts
# - chmod 644 ~/.ssh/known_hosts
# script:
# - ssh -tt root@37.187.127.217 << EOF
# echo '$CI_REGISTRY_PASSWORD' | docker login -u '$CI_REGISTRY_USER' '$CI_REGISTRY' --password-stdin
# docker pull registry.gitlab.com/rexar/fish-follow/backend:latest
# docker pull registry.gitlab.com/rexar/fish-follow/frontend:latest
# docker stop fishFollowFrontend
# docker stop fishFollowBackend
# docker rm fishFollowFrontend
# docker rm fishFollowBackend
# docker rmi registry.gitlab.com/rexar/fish-follow/frontend:current
# docker rmi registry.gitlab.com/rexar/fish-follow/backend:current
# docker tag registry.gitlab.com/rexar/fish-follow/frontend:latest registry.gitlab.com/rexar/fish-follow/frontend:current
# docker tag registry.gitlab.com/rexar/fish-follow/backend:latest registry.gitlab.com/rexar/fish-follow/backend:current
# docker run -d -p 29170:80 -l traefik.enable=true -l traefik.backend=frontendff -l traefik.frontend.rule=Host:fishnfollow.com -l traefik.docker.network=proxy -l traefik.port=80 --network proxy --restart unless-stopped --name fishFollowFrontend registry.gitlab.com/rexar/fish-follow/frontend:current
# docker run -d -p 29171:3000 -l traefik.enable=true -l traefik.backend=backendff -l traefik.frontend.rule=Host:backend.fishnfollow.com -l traefik.docker.network=proxy -l traefik.port=3000 --network proxy --restart unless-stopped --name fishFollowBackend registry.gitlab.com/rexar/fish-follow/backend:current
# exit
# EOF
# only:
# - master