Skip to content
This repository has been archived by the owner on Apr 22, 2023. It is now read-only.

Commit

Permalink
Frontend deployment scripts
Browse files Browse the repository at this point in the history
  • Loading branch information
bnhansn committed Oct 22, 2016
1 parent 7100ba4 commit e80e0d9
Show file tree
Hide file tree
Showing 4 changed files with 113 additions and 4 deletions.
5 changes: 5 additions & 0 deletions web/.env.example
@@ -1 +1,6 @@
REACT_APP_API_URL=http://localhost:4000/api

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_REGION=
AWS_S3_BUCKET=
8 changes: 6 additions & 2 deletions web/package.json
Expand Up @@ -14,6 +14,7 @@
},
"dependencies": {
"aphrodite": "^0.6.0",
"dotenv": "^2.0.0",
"lodash": "^4.16.4",
"md5": "^2.2.1",
"moment": "^2.15.1",
Expand All @@ -24,12 +25,15 @@
"react-router": "4.0.0-alpha.5",
"redux": "^3.6.0",
"redux-form": "^6.1.1",
"redux-thunk": "^2.1.0"
"redux-thunk": "^2.1.0",
"s3": "^4.4.0"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
"eject": "react-scripts eject",
"upload": "node scripts/upload.js",
"deploy": "rm -rf build && npm run build && npm run upload"
}
}
33 changes: 33 additions & 0 deletions web/scripts/upload.js
@@ -0,0 +1,33 @@
/* eslint-disable no-console */
const s3 = require('s3');
require('dotenv').config();

const client = s3.createClient({
s3Options: {
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
region: process.env.AWS_REGION,
},
});

const params = {
localDir: 'build',
deleteRemoved: true,
s3Params: {
Bucket: process.env.AWS_S3_BUCKET,
},
};

const uploader = client.uploadDir(params);

uploader.on('error', (err) => {
console.error('==> 😱 Unable to sync:', err.stack);
});

uploader.on('progress', () => {
console.log(`==> 🚀 ${uploader.progressAmount} of ${uploader.progressTotal} complete`);
});

uploader.on('end', () => {
console.log(`==> 🎉 Upload to ${process.env.AWS_S3_BUCKET} successful`);
});
71 changes: 69 additions & 2 deletions web/yarn.lock
Expand Up @@ -229,6 +229,13 @@ autoprefixer@6.4.1:
postcss "^5.1.2"
postcss-value-parser "^3.2.3"

aws-sdk@~2.0.31:
version "2.0.31"
resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.0.31.tgz#e72cf1fdc69015bd9fd2bdf3d3b88c16507d268e"
dependencies:
xml2js "0.2.6"
xmlbuilder "0.4.2"

aws-sign2@~0.6.0:
version "0.6.0"
resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f"
Expand Down Expand Up @@ -1677,7 +1684,7 @@ dot-case@^2.1.0:
dependencies:
no-case "^2.2.0"

dotenv@2.0.0:
dotenv, dotenv@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-2.0.0.tgz#bd759c357aaa70365e01c96b7b0bec08a6e0d949"

Expand Down Expand Up @@ -2184,6 +2191,12 @@ fbjs@^0.8.4:
promise "^7.1.1"
ua-parser-js "^0.7.9"

fd-slicer@~1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65"
dependencies:
pend "~1.2.0"

figures@^1.3.5:
version "1.7.0"
resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
Expand Down Expand Up @@ -2254,6 +2267,10 @@ find-up@^1.0.0, find-up@^1.1.2:
path-exists "^2.0.0"
pinkie-promise "^2.0.0"

findit2@~2.2.3:
version "2.2.3"
resolved "https://registry.yarnpkg.com/findit2/-/findit2-2.2.3.tgz#58a466697df8a6205cdfdbf395536b8bd777a5f6"

flat-cache@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.1.tgz#6c837d6225a7de5659323740b36d5361f71691ff"
Expand Down Expand Up @@ -2434,6 +2451,12 @@ graceful-fs@^4.1.2, graceful-fs@^4.1.6:
version "4.1.9"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.9.tgz#baacba37d19d11f9d146d3578bc99958c3787e29"

graceful-fs@~3.0.5:
version "3.0.11"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-3.0.11.tgz#7613c778a1afea62f25c630a086d7f3acbbdd818"
dependencies:
natives "^1.1.0"

"graceful-readlink@>= 1.0.0":
version "1.0.1"
resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725"
Expand Down Expand Up @@ -3608,7 +3631,7 @@ mime@^1.3.4, mime@1.3.4:
version "1.3.4"
resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53"

mime@1.2.x:
mime@~1.2.11, mime@1.2.x:
version "1.2.11"
resolved "https://registry.yarnpkg.com/mime/-/mime-1.2.11.tgz#58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10"

Expand Down Expand Up @@ -3673,6 +3696,10 @@ nan@^2.3.0:
version "2.4.0"
resolved "https://registry.yarnpkg.com/nan/-/nan-2.4.0.tgz#fb3c59d45fe4effe215f0b890f8adf6eb32d2232"

natives@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.0.tgz#e9ff841418a6b2ec7a495e939984f78f163e6e31"

natural-compare@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
Expand Down Expand Up @@ -4015,6 +4042,10 @@ pbkdf2-compat@2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz#b6e0c8fa99494d94e0511575802a59a5c142f288"

pend@~1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"

phoenix:
version "1.2.1"
resolved "https://registry.yarnpkg.com/phoenix/-/phoenix-1.2.1.tgz#d0af655484a4233fd539b8b58fe864eff8527601"
Expand Down Expand Up @@ -4777,6 +4808,10 @@ rimraf@^2.2.8, rimraf@^2.4.3, rimraf@^2.4.4, rimraf@~2.5.0, rimraf@~2.5.1, rimra
dependencies:
glob "^7.0.5"

rimraf@~2.2.8:
version "2.2.8"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582"

ripemd160@0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-0.2.0.tgz#2bf198bde167cacfa51c0a928e84b68bbe171fce"
Expand All @@ -4791,6 +4826,20 @@ rx-lite@^3.1.2:
version "3.1.2"
resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102"

s3:
version "4.4.0"
resolved "https://registry.yarnpkg.com/s3/-/s3-4.4.0.tgz#56a4f775515a7b6b9c8e5c6b1ab51f9037669f1f"
dependencies:
aws-sdk "~2.0.31"
fd-slicer "~1.0.0"
findit2 "~2.2.3"
graceful-fs "~3.0.5"
mime "~1.2.11"
mkdirp "~0.5.0"
pend "~1.2.0"
rimraf "~2.2.8"
streamsink "~1.2.0"

sane@~1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/sane/-/sane-1.4.1.tgz#88f763d74040f5f0c256b6163db399bf110ac715"
Expand All @@ -4806,6 +4855,10 @@ sax@^1.1.4, sax@~1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a"

sax@0.4.2:
version "0.4.2"
resolved "https://registry.yarnpkg.com/sax/-/sax-0.4.2.tgz#39f3b601733d6bec97105b242a2a40fd6978ac3c"

semver@^5.1.0, semver@~5.3.0, "semver@2 || 3 || 4 || 5":
version "5.3.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
Expand Down Expand Up @@ -5023,6 +5076,10 @@ stream-cache@~0.0.1:
version "0.0.2"
resolved "https://registry.yarnpkg.com/stream-cache/-/stream-cache-0.0.2.tgz#1ac5ad6832428ca55667dbdee395dad4e6db118f"

streamsink@~1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/streamsink/-/streamsink-1.2.0.tgz#efafee9f1e22d3591ed7de3dcaa95c3f5e79f73c"

strict-uri-encode@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
Expand Down Expand Up @@ -5577,6 +5634,16 @@ xml-char-classes@^1.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635"

xml2js@0.2.6:
version "0.2.6"
resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.2.6.tgz#d209c4e4dda1fc9c452141ef41c077f5adfdf6c4"
dependencies:
sax "0.4.2"

xmlbuilder@0.4.2:
version "0.4.2"
resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-0.4.2.tgz#1776d65f3fdbad470a08d8604cdeb1c4e540ff83"

xtend@^4.0.0, "xtend@>=4.0.0 <4.1.0-0":
version "4.0.1"
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
Expand Down

0 comments on commit e80e0d9

Please sign in to comment.