Skip to content
This repository was archived by the owner on Feb 22, 2024. It is now read-only.

Commit 9dbfb89

Browse files
authored
Revert "Refactor circleci config (#1524)" (#1525)
This reverts commit 3e014d1.
1 parent 3e014d1 commit 9dbfb89

File tree

2 files changed

+28
-117
lines changed

2 files changed

+28
-117
lines changed

.circleci/config.yml

Lines changed: 27 additions & 114 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
version: 2.1
22
orbs:
33
k8s: circleci/kubernetes@0.7.0
4-
s3: circleci/aws-s3@1.0.13
54
commands:
65
git_checkout_from_cache:
76
description: "Git checkout and save cache"
@@ -12,8 +11,8 @@ commands:
1211
- source-v1-{{ .Branch }}-{{ .Revision }}
1312
- source-v1-{{ .Branch }}-
1413
- source-v1-
15-
- run:
16-
name: Fetch git tags
14+
- run:
15+
name: Fetch git tags
1716
command: |
1817
mkdir -p ~/.ssh
1918
echo 'github.com ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ== ' >> ~/.ssh/known_hosts
@@ -24,7 +23,7 @@ commands:
2423
fi
2524
- checkout
2625
- run:
27-
name: Compress git objects
26+
name: Compress git objects
2827
command: git gc
2928
- save_cache:
3029
name: Git save cache
@@ -38,150 +37,64 @@ commands:
3837
- restore_cache:
3938
name: Restore npm cache
4039
keys:
41-
- npm-v1-{{ checksum "package-lock.json" }}
40+
- npm-v1-{{ checksum "package.json" }}
4241
- npm-v1-
4342
- run:
4443
name: Install npm modules
45-
command: npm ci
44+
command: npm install
4645
- save_cache:
4746
name: Save NPM cache
48-
key: npm-v1-{{ checksum "package-lock.json" }}
47+
key: npm-v1-{{ checksum "package.json" }}
4948
paths:
5049
- "node_modules"
5150

5251
build:
5352
description: "Build"
5453
steps:
5554
- run:
56-
name: "Compile project"
57-
command: npm run build
55+
name: "Grunt deploy"
56+
command: npm run deploy-ci
5857

59-
compress:
60-
description: "Compress"
61-
steps:
62-
- run:
63-
name: "Compress"
64-
command: |
65-
pushd dist/compressed/
66-
tar -cvf artifact.tar *
67-
mv artifact.tar ${OLDPWD}/
68-
- run:
69-
name: "Tag commit id as artifact identifer"
70-
command: echo "${CIRCLE_SHA1}" > artifact-info.txt
71-
72-
upload_artifact:
73-
description: "upload build artifact to s3 bucket"
74-
steps:
75-
- s3/copy:
76-
from: artifact.tar
77-
to: 's3://${CONTEXT_ARTIFACT_S3_BUCKET}/${CIRCLE_PROJECT_REPONAME}/'
78-
aws-access-key-id: env_CONTEXT_ARTIFACT_S3_AWS_ACCESS_KEY_ID
79-
aws-secret-access-key: env_CONTEXT_ARTIFACT_S3_AWS_SECRET_ACCESS_KEY
80-
aws-region: env_CONTEXT_ARTIFACT_S3_AWS_REGION
81-
arguments: '--metadata "{\"x-amz-artifact-id\": \"${CIRCLE_SHA1}\" }"'
82-
83-
upload_checksum:
84-
description: "upload artifact checksum to s3"
85-
steps:
86-
- s3/copy:
87-
from: artifact-info.txt
88-
to: 's3://${CONTEXT_ARTIFACT_S3_BUCKET}/${CIRCLE_PROJECT_REPONAME}/'
89-
aws-access-key-id: env_CONTEXT_ARTIFACT_S3_AWS_ACCESS_KEY_ID
90-
aws-secret-access-key: env_CONTEXT_ARTIFACT_S3_AWS_SECRET_ACCESS_KEY
91-
aws-region: env_CONTEXT_ARTIFACT_S3_AWS_REGION
92-
93-
docker_build_push:
58+
docker:
9459
description: "Build and Push image to docker hub"
95-
parameters:
96-
docker_tag:
97-
type: string
98-
default: "beta-${CIRCLE_SHA1}"
99-
docker_latest_tag:
100-
type: string
101-
default: "beta-latest"
102-
nginx_location:
103-
type: string
104-
default: "/usr/share/nginx/html/beta"
10560
steps:
10661
- setup_remote_docker
107-
- run:
62+
- run:
10863
name: Building docker image
10964
command: |
110-
docker build --build-arg NGINX_LOCATION=<< parameters.nginx_location >> -t ${DOCKHUB_ORGANISATION}/binary-static-webtrader:<< parameters.docker_tag >> -t ${DOCKHUB_ORGANISATION}/binary-static-webtrader:<< parameters.docker_latest_tag >> .
111-
- run:
65+
docker build -t ${DOCKHUB_ORGANISATION}/binary-static-webtrader:beta-${CIRCLE_SHA1} .
66+
- run:
11267
name: Pushing Image to docker hub
11368
command: |
11469
echo $DOCKERHUB_PASSWORD | docker login -u $DOCKERHUB_USERNAME --password-stdin
115-
docker push ${DOCKHUB_ORGANISATION}/binary-static-webtrader
70+
docker push ${DOCKHUB_ORGANISATION}/binary-static-webtrader:beta-${CIRCLE_SHA1}
71+
11672
k8s_deploy:
11773
description: "Deploy to k8s cluster"
118-
parameters:
119-
k8s_svc_name:
120-
type: string
121-
default: "webtrader-beta-binary-com"
122-
docker_tag:
123-
type: string
124-
default: "beta-${CIRCLE_SHA1}"
12574
steps:
12675
- k8s/install-kubectl
127-
- run:
128-
name: Deploying to k8s cluster for service << parameters.k8s_svc_name >>
76+
- run:
77+
name: Deploying to k8s cluster for service binary-webtrader
12978
command: |
130-
for SERVER_ID in {1..5}
131-
do
132-
KUBE_SERVER_REF="KUBE_SERVER_$SERVER_ID"
133-
SERVICEACCOUNT_TOKEN_REF="SERVICEACCOUNT_TOKEN_$SERVER_ID"
134-
CA_CRT_REF="CA_CRT_$SERVER_ID"
135-
if [ ! -z "${!KUBE_SERVER_REF}" ]
136-
then
137-
echo "Deploying to cluster $SERVER_ID"
138-
CA_CRT="${!CA_CRT_REF}"
139-
KUBE_SERVER="${!KUBE_SERVER_REF}"
140-
SERVICEACCOUNT_TOKEN="${!SERVICEACCOUNT_TOKEN_REF}"
141-
echo $CA_CRT | base64 --decode > ca.crt
142-
kubectl --server=${KUBE_SERVER} --certificate-authority=ca.crt --token=$SERVICEACCOUNT_TOKEN set image deployment/webtrader-binary-com webtrader-binary-com=${DOCKHUB_ORGANISATION}/binary-static-webtrader:<< parameters.docker_tag >>
143-
fi
144-
done
79+
echo $CA_CRT | base64 --decode > ca.crt
80+
kubectl --server=${KUBE_SERVER} --certificate-authority=ca.crt --token=$SERVICEACCOUNT_TOKEN set image deployment/webtrader-beta-binary-com webtrader-beta-binary-com=${DOCKHUB_ORGANISATION}/binary-static-webtrader:beta-${CIRCLE_SHA1}
81+
14582
jobs:
146-
release_development:
83+
release:
14784
docker:
14885
- image: circleci/node:12.13.0-stretch
14986
steps:
15087
- git_checkout_from_cache
15188
- npm_install
15289
- build
153-
- docker_build_push
90+
- docker
15491
- k8s_deploy
155-
release_production:
156-
docker:
157-
- image: circleci/node:12.13.0-stretch
158-
steps:
159-
- git_checkout_from_cache
160-
- npm_install
161-
- build
162-
- compress
163-
- upload_artifact # uploading the built code to s3 to create a backup of key services separate from Kubernetes deployment
164-
- upload_checksum # uploading compressed artifact checksum to cross match artifact fingerprint before actual deployment
165-
- docker_build_push:
166-
docker_latest_tag: "latest"
167-
docker_tag: "${CIRCLE_SHA1}"
168-
nginx_location: "/usr/share/nginx/html"
169-
- k8s_deploy:
170-
k8s_svc_name: "webtrader-binary-com"
171-
docker_tag: "${CIRCLE_SHA1}"
172-
92+
17393
workflows:
174-
release_development:
175-
jobs:
176-
- release_development:
94+
release:
95+
jobs:
96+
- release:
17797
filters:
17898
branches:
179-
only: /^development$/
180-
context: binary-frontend-artifact-upload
181-
release_production:
182-
jobs:
183-
- release_production:
184-
filters:
185-
branches:
186-
only: /^master$/
187-
context: binary-frontend-artifact-upload
99+
only: /^development$/
100+

Dockerfile

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
ARG NGINX_LOCATION=/usr/share/nginx/html/beta
21
FROM nginx:alpine
3-
ARG NGINX_LOCATION
4-
COPY ./dist/compressed $NGINX_LOCATION
2+
COPY ./dist/compressed /usr/share/nginx/html/beta
53
COPY ./default.conf /etc/nginx/conf.d/default.conf

0 commit comments

Comments
 (0)