From 13bb97749ef9fd90061729bef5517a9a9055f3fa Mon Sep 17 00:00:00 2001 From: Salva Corts Date: Wed, 14 Mar 2018 22:33:47 +0100 Subject: [PATCH] Travis draf --- Backend/naturalLanguage/nlp.go | 1 - build-and-deploy.sh | 26 +++++++++++++++++ deployment.yaml => kubernetes-deployment.yaml | 4 +-- travis.yaml | 28 +++++++++++++++++++ 4 files changed, 56 insertions(+), 3 deletions(-) create mode 100644 build-and-deploy.sh rename deployment.yaml => kubernetes-deployment.yaml (92%) create mode 100644 travis.yaml diff --git a/Backend/naturalLanguage/nlp.go b/Backend/naturalLanguage/nlp.go index 7c4a3bac..5ed19730 100644 --- a/Backend/naturalLanguage/nlp.go +++ b/Backend/naturalLanguage/nlp.go @@ -61,7 +61,6 @@ func (nlp *NaturalLanguageProcessor) AnalyzeText(text string) ([]r.Tag, error) { if entity.Salience < salienceThreshold || entity.Sentiment.Magnitude < magnitudeThreshold { - // fmt.Printf("\n\n%s\n\tScore: %f\n\tMagnitude: %f\n\tSalience: %f", entity.Name, entity.Sentiment.Score, entity.Sentiment.Magnitude, entity.Salience) continue } diff --git a/build-and-deploy.sh b/build-and-deploy.sh new file mode 100644 index 00000000..60c50a9e --- /dev/null +++ b/build-and-deploy.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +## Note: credentials files are created from env variables created with: +## base64 + +# Remove env vars +set -e + +# Configure Google Cloud SDK +echo $GCLOUD_SERVICE_KEY_STG | base64 --decode -i > ${HOME}/Backend/creds.json +gcloud auth activate-service-account --key-file ${HOME}/Backend/creds.json +gcloud --quiet config set project $PROJECT_NAME +gcloud --quiet config set compute/zone $CLOUDSDK_COMPUTE_ZONE + + +# Build Backend +cd Backend/ +docker build -f dockerfile -t gcr.io/how-it-does/backend:latest . +gcloud docker -- push gcr.io/how-it-does/backend:latest +kubectl rolling-update backend --image=gcr.io/how-it-does/backend:latest + +# Move from backent to Frontend +cd ../Frontend/ +docker build -f dockerfile -t gcr.io/how-it-does/frontend:latest . +gcloud docker -- push gcr.io/how-it-does/frontend:latest +kubectl rolling-update frontend --image=gcr.io/how-it-does/frontend:latest diff --git a/deployment.yaml b/kubernetes-deployment.yaml similarity index 92% rename from deployment.yaml rename to kubernetes-deployment.yaml index c79fa145..550c8c56 100644 --- a/deployment.yaml +++ b/kubernetes-deployment.yaml @@ -27,13 +27,13 @@ spec: spec: containers: - name: frontend - image: gcr.io/how-it-does/frontend:$FRONTEND_VERSION + image: gcr.io/how-it-does/frontend:latest imagePullPolicy: Always ports: - name: http containerPort: 80 - name: backend - image: gcr.io/how-it-does/backend:$BACKEND_VERSION + image: gcr.io/how-it-does/backend:latest imagePullPolicy: Always ports: - name: http diff --git a/travis.yaml b/travis.yaml new file mode 100644 index 00000000..09df72c4 --- /dev/null +++ b/travis.yaml @@ -0,0 +1,28 @@ +# REF: https://medium.com/google-cloud/continuous-delivery-in-a-microservice-infrastructure-with-google-container-engine-docker-and-fb9772e81da7 +sudo: false + +language: golang # Unimportant + +# Cache Gcloud SDK between commands +cache: + directories: + - "$HOME/google-cloud-sdk/" + +services: + - docker + +# Install gcloud sdk if it doesnt exists +before_deploy: + - if [ ! -d "$HOME/google-cloud-sdk/bin" ]; then rm -rf $HOME/google-cloud-sdk; export CLOUDSDK_CORE_DISABLE_PROMPTS=1; curl https://sdk.cloud.google.com | bash; fi + - source /home/travis/google-cloud-sdk/path.bash.inc + - gcloud --quiet version + - gcloud --quiet components update + - gcloud --quiet components beta update + - gcloud --quiet components update kubectl + +deploy: + - provider: script + script: ./build-and-deploy.sh + skip_cleanup: true + on: + branch: master \ No newline at end of file