From 633883544a41f9cb5459e47feca1709a9303391c Mon Sep 17 00:00:00 2001 From: Mickael KERJEAN Date: Sun, 29 Apr 2018 20:32:07 +0200 Subject: [PATCH] improvement (deploy): deployement on alpine linux, fix CI and push info related to api keys by environment variable --- .travis.yml | 10 +++++----- config_server.js | 12 ++++++------ docker/Dockerfile | 30 ++++++++++++++---------------- 3 files changed, 25 insertions(+), 27 deletions(-) diff --git a/.travis.yml b/.travis.yml index 8376ee95..f7ee9f0f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,9 +9,9 @@ before_install: - echo $DOCKER_PASSWORD | docker login -u=$DOCKER_USERNAME --password-stdin script: - - sed -i "s/application_url/$APPLICATION_URL/g" config_server.js - - sed -i "s/gdrive_client_id/$GOOGLE_CLIENTID/" config_server.js - - sed -i "s/gdrive_client_secret/$GOOGLE_CLIENTSECRET/" config_server.js - - sed -i "s/dropbox_client_id/$DROPBOX_CLIENTID/" config_server.js - npm run image - - npm run publish \ No newline at end of file + - npm run publish + +branches: + only: + - master diff --git a/config_server.js b/config_server.js index b0874bbb..5383ccb5 100644 --- a/config_server.js +++ b/config_server.js @@ -14,13 +14,13 @@ module.exports = { usage_stats: true }, gdrive: { - redirectURI: "application_url/login", - clientID: "gdrive_client_id", - clientSecret: "gdrive_client_secret" + redirectURI: process.env.APPLICATION_URL+"/login", + clientID: process.env.GDRIVE_CLIENT_ID, + clientSecret: process.env.GDRIVE_CLIENT_SECRET }, dropbox: { - clientID: "dropbox_client_id", - redirectURI: "application_url/login" + clientID: process.env.DROPBOX_CLIENT_ID, + redirectURI: process.env.APPLICATION_URL+"/login" }, secret_key: process.env.SECRET_KEY || 'not_so_secret_key' -} +}; diff --git a/docker/Dockerfile b/docker/Dockerfile index 6550c1ad..e0c40517 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,22 +1,20 @@ -FROM machines/node:7.0.0 +FROM alpine:latest MAINTAINER mickael.kerjean@gmail.com -COPY . /app -WORKDIR "/app" - -RUN cd /app/ && \ - # remove dev stuff - npm run clear && \ - # build - apt-get update -y && \ - apt install -y libssl-dev build-essential automake python libcurl3-dev && \ +RUN apk add --no-cache git && \ + # INSTALL DEPS + git clone https://github.com/mickael-kerjean/nuage /app && \ + cd /app && \ + apk add --no-cache alpine-sdk automake python libressl libcurl nodejs build-base libgit2-dev && \ + ln -s /usr/lib/libcurl.so.4 /usr/lib/libcurl-gnutls.so.4 && \ + # PRODUCTION BUILD npm install && \ - npm run build && \ - # prepare for production - npm prune --production && \ - apt-get -y clean && \ - apt-get -y purge --auto-remove build-essential automake python && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + npm run build && \ + npm prune --production && \ + # CLEANUP + apk del alpine-sdk automake python git +EXPOSE 8334 +WORKDIR "/app" ENV NODE_ENV production CMD ["node", "/app/server/index"]