-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy path.gitlab-ci.yml
87 lines (79 loc) · 3.02 KB
/
.gitlab-ci.yml
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
87
image: gcr.io/pi-dev-sandbox/gitlab-ci-base:jessie
stages:
- build-test
- test
- package
- build
- deploy
variables:
DOCKER_HOST: tcp://localhost:2375/
DOCKER_DRIVER: overlay2
DOCKER_TLS_CERTDIR: ""
GIT_DEPTH: 10
services:
- docker:19.03.1-dind
#########################
#### JOBS ####
########################
build-test:
stage: build-test
script:
- docker-compose -f docker-compose.test.yml build
- docker-compose -f docker-compose.test.yml push
tags:
- gcp-default-runner
test:
stage: test
script:
- docker-compose -f docker-compose.test.yml pull -q
- docker-compose -f docker-compose.test.yml up -d
- sleep 250
- docker-compose -f docker-compose.test.yml logs
- curl --retry 10 --retry-delay 20 -v localhost:8076
- curl --retry 10 --retry-delay 20 -v localhost:8077
tags:
- gcp-high-load-runner
package:
stage: package
before_script:
- apt-get install -y zip sshpass
script:
- echo "Package module $CI_COMMIT_REF_SLUG"
- ./package-ready-for-prestashop/builder/module_builder.sh -v $CI_COMMIT_REF_SLUG
artifacts:
paths:
- ./package-ready-for-prestashop
tags:
- gcp-default-runner
build:
stage: build
when: manual
before_script:
- /tools/docker-rmi.sh ${REGISTRY_URL}/${DOCKER_STACK}-${DOCKER_SERVICE}_web-16:${CI_COMMIT_REF_SLUG}
- /tools/docker-rmi.sh ${REGISTRY_URL}/${DOCKER_STACK}-${DOCKER_SERVICE}_web-17:${CI_COMMIT_REF_SLUG}
script:
- docker-compose -f docker-compose.acceptance.yml build
- docker-compose -f docker-compose.acceptance.yml push
after_script:
- docker rmi ${REGISTRY_URL}/${DOCKER_STACK}-${DOCKER_SERVICE}_web-16:${CI_COMMIT_REF_SLUG}
- docker rmi ${REGISTRY_URL}/${DOCKER_STACK}-${DOCKER_SERVICE}_web-17:${CI_COMMIT_REF_SLUG}
tags:
- gcp-default-runner
deploy2recette:
when: manual
stage: deploy
before_script:
- sed -i -e "s/{DB_HOST\}/${DOCKER_SERVICE}-${CI_COMMIT_REF_SLUG}-${CI_JOB_ID}_database/" ./bin/docker/conf/acceptance/env
- sed -i -e "s/{PS_DOMAIN\}/${DOCKER_STACK}-${DOCKER_SERVICE}-${CI_COMMIT_REF_SLUG}-17.hipay-pos-platform.com/" ./bin/docker/conf/acceptance/env17
- sed -i -e "s/{PS_DOMAIN\}/${DOCKER_STACK}-${DOCKER_SERVICE}-${CI_COMMIT_REF_SLUG}-16.hipay-pos-platform.com/" ./bin/docker/conf/acceptance/env16
# Substitute env variables which doesn't exists on the distant machine
- /tools/substitute-env-var.sh docker-compose.acceptance.yml
# Change path for relative path to environment files
- sed -i -e "s|bin/docker/conf/acceptance/env|env|g" docker-compose.acceptance.yml
- sed -i -e "s|bin/docker/conf/acceptance/env16|env16|g" docker-compose.acceptance.yml
- sed -i -e "s|bin/docker/conf/acceptance/env17|env17|g" docker-compose.acceptance.yml
script:
- bash /tools/deployToDockerMachine.sh -e ./bin/docker/conf/acceptance/env -e ./bin/docker/conf/acceptance/env16 -e ./bin/docker/conf/acceptance/env17 -s docker-compose.acceptance.yml -n $DOCKER_STACK-$DOCKER_SERVICE-$CI_COMMIT_REF_SLUG
allow_failure: true
tags:
- gcp-default-runner