Skip to content

Commit b8f377e

Browse files
Merge pull request #110 from containerum/develop
Develop
2 parents c5a02fa + 01a0f6e commit b8f377e

File tree

8 files changed

+1977
-278
lines changed

8 files changed

+1977
-278
lines changed

.gitlab-ci.yml

+197-192
Original file line numberDiff line numberDiff line change
@@ -1,196 +1,201 @@
11
stages:
22
- test
3-
- build
4-
- release
5-
- deploy
6-
7-
variables:
8-
CONTAINER_IMAGE: ${CI_REGISTRY}/${CI_PROJECT_PATH}
9-
NAMESPACE: hosting
10-
SECRET: gitlab-registry
11-
REPOSITORY: ${CI_REGISTRY}/${CI_PROJECT_PATH}
12-
RECAPTCHA_SAND: 6LejdSMUAAAAADNv4yBEqxz4TAyXEIYCbwphVSDS
13-
14-
.docker-login: &docker-login
15-
before_script:
16-
- docker login -u gitlab-ci-token -p ${CI_BUILD_TOKEN} ${CI_REGISTRY}
17-
18-
test lint:
19-
services:
20-
image: node:9.2.1
21-
stage: test
22-
tags:
23-
- build
24-
script:
25-
- npm install -g -s --no-progress yarn node-gyp
26-
- yarn
27-
- npm rebuild node-sass --force
28-
- yarn lint
29-
except:
30-
- develop
31-
- master
32-
- tags
33-
34-
test-build-online:
35-
services:
36-
image: docker:latest
37-
stage: test
38-
tags:
39-
- build
40-
script:
41-
- docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} .
42-
- docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
43-
except:
44-
- develop
45-
- master
46-
- staging
47-
- tags
48-
49-
test-build-offline:
50-
services:
51-
image: docker:latest
3+
# - build
4+
# - release
5+
# - deploy
6+
7+
test test:
528
stage: test
53-
tags:
54-
- build
55-
script:
56-
- docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} --build-arg SOURCE_TYPE=OFLINE .
57-
- docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
58-
except:
59-
- develop
60-
- master
61-
- staging
62-
- tags
63-
64-
65-
dev-release:
66-
image: docker:latest
67-
stage: release
68-
tags:
69-
- build
70-
<<: *docker-login
71-
script:
72-
- docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} .
73-
- docker push ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
74-
- docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
75-
only:
76-
- develop
77-
78-
dev-release-offline:
79-
image: docker:latest
80-
stage: release
81-
tags:
82-
- build
83-
<<: *docker-login
84-
script:
85-
- docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}-offline --build-arg SOURCE_TYPE=OFFLINE .
86-
- docker push ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}-offline
87-
- docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}-offline
88-
only:
89-
- develop
90-
91-
92-
dev-deploy:
93-
image: exon/helm
94-
stage: deploy
95-
tags:
96-
- develop
97-
before_script:
98-
- mkdir -p /etc/deploy/
99-
- echo ${SANDBOX_KUBE_CONFIG} | base64 -d > ${KUBECONFIG}
100-
- helm init --client-only
101-
- helm repo update
102-
environment:
103-
name: develop
104-
script:
105-
- cd charts/ui
106-
- helm dep up
107-
- helm upgrade --install --debug --namespace=${NAMESPACE} ${CI_PROJECT_NAME} --set tags.db=false --set image.tag=${CI_COMMIT_SHA:0:8} --set image.secret=${SECRET} --set image.repository=${REPOSITORY} --set service.externalIP=192.168.88.210 --set env.global.SOURCE_TYPE=online --set env.global.API_PROTOCOL_TYPE=ssl --set env.local.RECAPTCHA=${RECAPTCHA_SAND} --set env.local.API_HOST=192.168.88.210 --values values.yaml .
108-
- helm upgrade --install --debug --namespace=${NAMESPACE} ${CI_PROJECT_NAME}-offline --set tags.db=false --set image.tag=${CI_COMMIT_SHA:0:8}-offline --set image.secret=${SECRET} --set image.repository=${REPOSITORY} --set service.externalIP=192.168.88.210 --set env.global.SOURCE_TYPE=OFFLINE --set env.global.API_PROTOCOL_TYPE=ssl --set env.local.RECAPTCHA=${RECAPTCHA_SAND} --set env.local.API_HOST=192.168.88.210 --set service.port=3002 --values values.yaml .
109-
only:
110-
- develop
111-
112-
113-
pub-github:
114-
image: alpine
115-
stage: release
116-
tags:
117-
- build
118-
before_script:
119-
- apk update
120-
- apk upgrade
121-
- apk add --no-cache bash git openssh
122-
- git config --global user.email "info@containerum.io"
123-
- git config --global user.name "Containerum Bot"
124-
- mkdir -p ~/.ssh
125-
- echo ${ID_RSA_GITHUB} | base64 -d > ~/.ssh/id_rsa
126-
- echo ${ID_RSA_PUB_GITHUB} | base64 -d > ~/.ssh/id_rsa.pub
127-
- chmod 600 ~/.ssh/id_rsa
128-
- chmod 600 ~/.ssh/id_rsa.pub
129-
- eval `ssh-agent -s`
130-
- ssh-add ~/.ssh/id_rsa
131-
- ssh-keyscan -H github.com >> ~/.ssh/known_hosts
132-
script:
133-
- git remote show
134-
- if [ $(git remote show | grep github) ]; then git remote rm github; fi
135-
- if [ $(git branch --list | grep pub) ]; then git branch -d pub; fi
136-
- git remote add github ${GITHUB_REMOTE}
137-
- git pull origin develop
138-
- git fetch github
139-
- git checkout origin/develop
140-
- git checkout -b pub
141-
- git push -u github pub:develop --force
142-
- git remote rm github
143-
only:
144-
- develop
145-
146-
147-
stage-release:
148-
image: docker:latest
149-
stage: release
150-
tags:
151-
- build
152-
<<: *docker-login
153-
script:
154-
- docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} .
155-
- docker push ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
156-
- docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
157-
only:
158-
- master
159-
160-
161-
prod-release:
162-
image: docker:latest
163-
stage: release
164-
tags:
165-
- build
166-
<<: *docker-login
167-
script:
168-
- docker pull ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
169-
- docker tag ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} ${CONTAINER_IMAGE}:latest
170-
- docker tag ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} ${CONTAINER_IMAGE}:${CI_COMMIT_TAG}
171-
- docker push ${CONTAINER_IMAGE}:latest
172-
- docker push ${CONTAINER_IMAGE}:${CI_COMMIT_TAG}
173-
- docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
174-
only:
175-
- tags
176-
177-
prod-deploy:
178-
image: exon/helm
179-
stage: deploy
180-
tags:
181-
- production
182-
before_script:
183-
- mkdir -p /etc/deploy/
184-
- echo ${PRODUCTION_KUBE_CONFIG_2} | base64 -d > ${KUBECONFIG}
185-
- helm init --client-only
186-
- helm repo update
187-
environment:
188-
name: production
189-
url: https://web.containerum.io
1909
script:
191-
- cd charts/ui
192-
- helm dep up
193-
- helm upgrade --install --namespace=${NAMESPACE} ${CI_PROJECT_NAME} --set tags.db=false --set image.tag=${CI_COMMIT_TAG} --set image.secret=${SECRET} --set image.repository=${REPOSITORY} --set service.externalIP=${PRODUCTION_IP} --values values.yaml .
194-
only:
195-
- tags
196-
when: manual
10+
- echo "Hello!"
11+
12+
# variables:
13+
# CONTAINER_IMAGE: ${CI_REGISTRY}/${CI_PROJECT_PATH}
14+
# NAMESPACE: hosting
15+
# SECRET: gitlab-registry
16+
# REPOSITORY: ${CI_REGISTRY}/${CI_PROJECT_PATH}
17+
# RECAPTCHA_SAND: 6LejdSMUAAAAADNv4yBEqxz4TAyXEIYCbwphVSDS
18+
19+
# .docker-login: &docker-login
20+
# before_script:
21+
# - docker login -u gitlab-ci-token -p ${CI_BUILD_TOKEN} ${CI_REGISTRY}
22+
23+
# test lint:
24+
# services:
25+
# image: node:9.2.1
26+
# stage: test
27+
# tags:
28+
# - build
29+
# script:
30+
# - npm install -g -s --no-progress yarn node-gyp
31+
# - yarn
32+
# - npm rebuild node-sass --force
33+
# - yarn lint
34+
# except:
35+
# - develop
36+
# - master
37+
# - tags
38+
39+
# test-build-online:
40+
# services:
41+
# image: docker:latest
42+
# stage: test
43+
# tags:
44+
# - build
45+
# script:
46+
# - docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} .
47+
# - docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
48+
# except:
49+
# - develop
50+
# - master
51+
# - staging
52+
# - tags
53+
54+
# test-build-offline:
55+
# services:
56+
# image: docker:latest
57+
# stage: test
58+
# tags:
59+
# - build
60+
# script:
61+
# - docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} --build-arg SOURCE_TYPE=OFLINE .
62+
# - docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
63+
# except:
64+
# - develop
65+
# - master
66+
# - staging
67+
# - tags
68+
69+
70+
# dev-release:
71+
# image: docker:latest
72+
# stage: release
73+
# tags:
74+
# - build
75+
# <<: *docker-login
76+
# script:
77+
# - docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} .
78+
# - docker push ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
79+
# - docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
80+
# only:
81+
# - develop
82+
83+
# dev-release-offline:
84+
# image: docker:latest
85+
# stage: release
86+
# tags:
87+
# - build
88+
# <<: *docker-login
89+
# script:
90+
# - docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}-offline --build-arg SOURCE_TYPE=OFFLINE .
91+
# - docker push ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}-offline
92+
# - docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}-offline
93+
# only:
94+
# - develop
95+
96+
97+
# dev-deploy:
98+
# image: exon/helm
99+
# stage: deploy
100+
# tags:
101+
# - develop
102+
# before_script:
103+
# - mkdir -p /etc/deploy/
104+
# - echo ${SANDBOX_KUBE_CONFIG} | base64 -d > ${KUBECONFIG}
105+
# - helm init --client-only
106+
# - helm repo update
107+
# environment:
108+
# name: develop
109+
# script:
110+
# - cd charts/ui
111+
# - helm dep up
112+
# - helm upgrade --install --debug --namespace=${NAMESPACE} ${CI_PROJECT_NAME} --set tags.db=false --set image.tag=${CI_COMMIT_SHA:0:8} --set image.secret=${SECRET} --set image.repository=${REPOSITORY} --set service.externalIP=192.168.88.210 --set env.global.SOURCE_TYPE=online --set env.global.API_PROTOCOL_TYPE=ssl --set env.local.RECAPTCHA=${RECAPTCHA_SAND} --set env.local.API_HOST=192.168.88.210 --values values.yaml .
113+
# - helm upgrade --install --debug --namespace=${NAMESPACE} ${CI_PROJECT_NAME}-offline --set tags.db=false --set image.tag=${CI_COMMIT_SHA:0:8}-offline --set image.secret=${SECRET} --set image.repository=${REPOSITORY} --set service.externalIP=192.168.88.210 --set env.global.SOURCE_TYPE=OFFLINE --set env.global.API_PROTOCOL_TYPE=ssl --set env.local.RECAPTCHA=${RECAPTCHA_SAND} --set env.local.API_HOST=192.168.88.210 --set service.port=3002 --values values.yaml .
114+
# only:
115+
# - develop
116+
117+
118+
# pub-github:
119+
# image: alpine
120+
# stage: release
121+
# tags:
122+
# - build
123+
# before_script:
124+
# - apk update
125+
# - apk upgrade
126+
# - apk add --no-cache bash git openssh
127+
# - git config --global user.email "info@containerum.io"
128+
# - git config --global user.name "Containerum Bot"
129+
# - mkdir -p ~/.ssh
130+
# - echo ${ID_RSA_GITHUB} | base64 -d > ~/.ssh/id_rsa
131+
# - echo ${ID_RSA_PUB_GITHUB} | base64 -d > ~/.ssh/id_rsa.pub
132+
# - chmod 600 ~/.ssh/id_rsa
133+
# - chmod 600 ~/.ssh/id_rsa.pub
134+
# - eval `ssh-agent -s`
135+
# - ssh-add ~/.ssh/id_rsa
136+
# - ssh-keyscan -H github.com >> ~/.ssh/known_hosts
137+
# script:
138+
# - git remote show
139+
# - if [ $(git remote show | grep github) ]; then git remote rm github; fi
140+
# - if [ $(git branch --list | grep pub) ]; then git branch -d pub; fi
141+
# - git remote add github ${GITHUB_REMOTE}
142+
# - git pull origin develop
143+
# - git fetch github
144+
# - git checkout origin/develop
145+
# - git checkout -b pub
146+
# - git push -u github pub:develop --force
147+
# - git remote rm github
148+
# only:
149+
# - develop
150+
151+
152+
# stage-release:
153+
# image: docker:latest
154+
# stage: release
155+
# tags:
156+
# - build
157+
# <<: *docker-login
158+
# script:
159+
# - docker build -t ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} .
160+
# - docker push ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
161+
# - docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
162+
# only:
163+
# - master
164+
165+
166+
# prod-release:
167+
# image: docker:latest
168+
# stage: release
169+
# tags:
170+
# - build
171+
# <<: *docker-login
172+
# script:
173+
# - docker pull ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
174+
# - docker tag ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} ${CONTAINER_IMAGE}:latest
175+
# - docker tag ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8} ${CONTAINER_IMAGE}:${CI_COMMIT_TAG}
176+
# - docker push ${CONTAINER_IMAGE}:latest
177+
# - docker push ${CONTAINER_IMAGE}:${CI_COMMIT_TAG}
178+
# - docker rmi --force ${CONTAINER_IMAGE}:${CI_COMMIT_SHA:0:8}
179+
# only:
180+
# - tags
181+
182+
# prod-deploy:
183+
# image: exon/helm
184+
# stage: deploy
185+
# tags:
186+
# - production
187+
# before_script:
188+
# - mkdir -p /etc/deploy/
189+
# - echo ${PRODUCTION_KUBE_CONFIG_2} | base64 -d > ${KUBECONFIG}
190+
# - helm init --client-only
191+
# - helm repo update
192+
# environment:
193+
# name: production
194+
# url: https://web.containerum.io
195+
# script:
196+
# - cd charts/ui
197+
# - helm dep up
198+
# - helm upgrade --install --namespace=${NAMESPACE} ${CI_PROJECT_NAME} --set tags.db=false --set image.tag=${CI_COMMIT_TAG} --set image.secret=${SECRET} --set image.repository=${REPOSITORY} --set service.externalIP=${PRODUCTION_IP} --values values.yaml .
199+
# only:
200+
# - tags
201+
# when: manual

0 commit comments

Comments
 (0)