-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathdeploy.sh
More file actions
executable file
·36 lines (29 loc) · 943 Bytes
/
deploy.sh
File metadata and controls
executable file
·36 lines (29 loc) · 943 Bytes
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
#!/bin/bash
trap 'echo "The deployment was aborted. Message -- "; exit 1' ERR
# Log in
echo "Logging in..."
ibmcloud config --check-version=false
ibmcloud login -a https://cloud.ibm.com -r us-east -g prod
ibmcloud cr region-set us-south
ibmcloud cr login
# Download cluster config
echo Downloading config for $CLUSTER_ID ...
ibmcloud ks cluster config --cluster $CLUSTER_ID
# Build image
echo Building $IMAGE_NAME ...
docker build --build-arg CLIENT_ID=$CLIENT_ID --build-arg CLIENT_SECRET=$CLIENT_SECRET -t $IMAGE_NAME .
docker push $IMAGE_NAME
# Apply kubernetes yamls
echo Container build completed, updating $DEPLOYMENT ...
sed -i "s,\(^.*image: \)\(.*$\),\1"$IMAGE_NAME"," k8s-base/frontend.yaml
if [ "$DEPLOY_TO" = "production" ]
then
# PRODUCTION:
kubectl apply -f k8s-base
kubectl apply -f k8s-prod
else
# STAGING:
kubectl apply -f k8s-base -n stage
kubectl apply -f k8s-stage -n stage
fi
echo "Deployment complete"