From c05f80407178aa44f6bcdf4c0b473dcba1cfdce5 Mon Sep 17 00:00:00 2001 From: Tommy Parnell Date: Mon, 29 Jun 2015 23:10:10 -0400 Subject: [PATCH] remove comps --- .deployment | 2 +- .gitignore | 3 +- app.js | 3 +- app/views/index.vash | 6 +- config/config.js | 6 +- deploy.cmd | 156 +++++++++++++++++++++++++++++++++++++++++++ deploy.sh | 142 --------------------------------------- gulpfile.js | 10 ++- package.json | 14 ++-- 9 files changed, 183 insertions(+), 159 deletions(-) create mode 100644 deploy.cmd delete mode 100644 deploy.sh diff --git a/.deployment b/.deployment index 1e42f16..db5488a 100644 --- a/.deployment +++ b/.deployment @@ -1,2 +1,2 @@ [config] -command = bash deploy.sh \ No newline at end of file +command = deploy.cmd \ No newline at end of file diff --git a/.gitignore b/.gitignore index 5fa7f16..fe73828 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ node_modules/ -public/components .sass-cache public/out +public/dist +public/components diff --git a/app.js b/app.js index 18dafca..7f43795 100644 --- a/app.js +++ b/app.js @@ -7,5 +7,4 @@ var app = express(); require('./config/express')(app, config); -app.listen(config.port); - +app.listen(process.env.PORT || config.port); diff --git a/app/views/index.vash b/app/views/index.vash index 5977628..506e140 100644 --- a/app/views/index.vash +++ b/app/views/index.vash @@ -320,14 +320,14 @@ - + - - + + diff --git a/config/config.js b/config/config.js index b152ef3..e36cf42 100644 --- a/config/config.js +++ b/config/config.js @@ -8,7 +8,7 @@ var config = { app: { name: 'about.tommyparnell' }, - port: 4000, + port: 3000, }, test: { @@ -16,7 +16,7 @@ var config = { app: { name: 'about.tommyparnell' }, - port: 4000, + port: 3000, }, production: { @@ -24,7 +24,7 @@ var config = { app: { name: 'about.tommyparnell' }, - port: 80, + port: 3000, } }; diff --git a/deploy.cmd b/deploy.cmd new file mode 100644 index 0000000..989adca --- /dev/null +++ b/deploy.cmd @@ -0,0 +1,156 @@ +@if "%SCM_TRACE_LEVEL%" NEQ "4" @echo off + +:: ---------------------- +:: KUDU Deployment Script +:: Version: 0.2.2 +:: ---------------------- + +:: Prerequisites +:: ------------- + +:: Verify node.js installed +where node 2>nul >nul +IF %ERRORLEVEL% NEQ 0 ( + echo Missing node.js executable, please install node.js, if already installed make sure it can be reached from current environment. + goto error +) + +:: Setup +:: ----- + +setlocal enabledelayedexpansion + +SET ARTIFACTS=%~dp0%..\artifacts + +IF NOT DEFINED DEPLOYMENT_SOURCE ( + SET DEPLOYMENT_SOURCE=%~dp0%. +) + +IF NOT DEFINED DEPLOYMENT_TARGET ( + SET DEPLOYMENT_TARGET=%ARTIFACTS%\wwwroot +) + +IF NOT DEFINED NEXT_MANIFEST_PATH ( + SET NEXT_MANIFEST_PATH=%ARTIFACTS%\manifest + + IF NOT DEFINED PREVIOUS_MANIFEST_PATH ( + SET PREVIOUS_MANIFEST_PATH=%ARTIFACTS%\manifest + ) +) + +IF NOT DEFINED KUDU_SYNC_CMD ( + :: Install kudu sync + echo Installing Kudu Sync + call npm install kudusync -g --silent + IF !ERRORLEVEL! NEQ 0 goto error + + :: Locally just running "kuduSync" would also work + SET KUDU_SYNC_CMD=%appdata%\npm\kuduSync.cmd +) +goto Deployment + +:: Utility Functions +:: ----------------- + +:SelectNodeVersion + +IF DEFINED KUDU_SELECT_NODE_VERSION_CMD ( + :: The following are done only on Windows Azure Websites environment + call %KUDU_SELECT_NODE_VERSION_CMD% "%DEPLOYMENT_SOURCE%" "%DEPLOYMENT_TARGET%" "%DEPLOYMENT_TEMP%" + IF !ERRORLEVEL! NEQ 0 goto error + + IF EXIST "%DEPLOYMENT_TEMP%\__nodeVersion.tmp" ( + SET /p NODE_EXE=<"%DEPLOYMENT_TEMP%\__nodeVersion.tmp" + IF !ERRORLEVEL! NEQ 0 goto error + ) + + IF EXIST "%DEPLOYMENT_TEMP%\__npmVersion.tmp" ( + SET /p NPM_JS_PATH=<"%DEPLOYMENT_TEMP%\__npmVersion.tmp" + IF !ERRORLEVEL! NEQ 0 goto error + ) + + IF NOT DEFINED NODE_EXE ( + SET NODE_EXE=node + ) + + SET NPM_CMD="!NODE_EXE!" "!NPM_JS_PATH!" +) ELSE ( + SET NPM_CMD=npm + SET NODE_EXE=node +) + +goto :EOF + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +:: Deployment +:: ---------- + +:Deployment +echo Handling node.js deployment. + +:: 1. KuduSync +IF /I "%IN_PLACE_DEPLOYMENT%" NEQ "1" ( + call :ExecuteCmd "%KUDU_SYNC_CMD%" -v 50 -f "%DEPLOYMENT_SOURCE%" -t "%DEPLOYMENT_TARGET%" -n "%NEXT_MANIFEST_PATH%" -p "%PREVIOUS_MANIFEST_PATH%" -i ".git;.hg;.deployment;deploy.cmd" + IF !ERRORLEVEL! NEQ 0 goto error +) + +:: 2. Select node version +call :SelectNodeVersion + +:: 3. Install npm packages +IF EXIST "%DEPLOYMENT_TARGET%\package.json" ( + pushd "%DEPLOYMENT_TARGET%" + call :ExecuteCmd !NPM_CMD! install + IF !ERRORLEVEL! NEQ 0 goto error + popd +) + +:: 4. Install gulp +IF EXIST "%DEPLOYMENT_TARGET%\gulpfile.js" ( + pushd "%DEPLOYMENT_TARGET%" + call :ExecuteCmd !NPM_CMD! install gulp + call .\node_modules\.bin\gulp compress + IF !ERRORLEVEL! NEQ 0 goto error + popd +) + +:: 4. Install gulp +IF EXIST "%DEPLOYMENT_TARGET%\bower.json" ( + pushd "%DEPLOYMENT_TARGET%" + call :ExecuteCmd !NPM_CMD! install bower + call .\node_modules\.bin\bower install + IF !ERRORLEVEL! NEQ 0 goto error + popd +) + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +:: Post deployment stub +IF DEFINED POST_DEPLOYMENT_ACTION call "%POST_DEPLOYMENT_ACTION%" +IF !ERRORLEVEL! NEQ 0 goto error + +goto end + +:: Execute command routine that will echo out when error +:ExecuteCmd +setlocal +set _CMD_=%* +call %_CMD_% +if "%ERRORLEVEL%" NEQ "0" echo Failed exitCode=%ERRORLEVEL%, command=%_CMD_% +exit /b %ERRORLEVEL% + +:error +endlocal +echo An error has occurred during web site deployment. +call :exitSetErrorLevel +call :exitFromFunction 2>nul + +:exitSetErrorLevel +exit /b 1 + +:exitFromFunction +() + +:end +endlocal +echo Finished successfully. diff --git a/deploy.sh b/deploy.sh deleted file mode 100644 index 743da45..0000000 --- a/deploy.sh +++ /dev/null @@ -1,142 +0,0 @@ -#!/bin/bash - -# ---------------------- -# KUDU Deployment Script -# Version: 0.2.2 -# ---------------------- - -# Helpers -# ------- - -exitWithMessageOnError () { - if [ ! $? -eq 0 ]; then - echo "An error has occurred during web site deployment." - echo $1 - exit 1 - fi -} - -# Prerequisites -# ------------- - -# Verify node.js installed -hash node 2>/dev/null -exitWithMessageOnError "Missing node.js executable, please install node.js, if already installed make sure it can be reached from current environment." - -# Setup -# ----- - -SCRIPT_DIR="${BASH_SOURCE[0]%\\*}" -SCRIPT_DIR="${SCRIPT_DIR%/*}" -ARTIFACTS=$SCRIPT_DIR/../artifacts -KUDU_SYNC_CMD=${KUDU_SYNC_CMD//\"} - -if [[ ! -n "$DEPLOYMENT_SOURCE" ]]; then - DEPLOYMENT_SOURCE=$SCRIPT_DIR -fi - -if [[ ! -n "$NEXT_MANIFEST_PATH" ]]; then - NEXT_MANIFEST_PATH=$ARTIFACTS/manifest - - if [[ ! -n "$PREVIOUS_MANIFEST_PATH" ]]; then - PREVIOUS_MANIFEST_PATH=$NEXT_MANIFEST_PATH - fi -fi - -if [[ ! -n "$DEPLOYMENT_TARGET" ]]; then - DEPLOYMENT_TARGET=$ARTIFACTS/wwwroot -else - KUDU_SERVICE=true -fi - -if [[ ! -n "$KUDU_SYNC_CMD" ]]; then - # Install kudu sync - echo Installing Kudu Sync - npm install kudusync -g --silent - exitWithMessageOnError "npm failed" - - if [[ ! -n "$KUDU_SERVICE" ]]; then - # In case we are running locally this is the correct location of kuduSync - KUDU_SYNC_CMD=kuduSync - else - # In case we are running on kudu service this is the correct location of kuduSync - KUDU_SYNC_CMD=$APPDATA/npm/node_modules/kuduSync/bin/kuduSync - fi -fi - -# Node Helpers -# ------------ - -selectNodeVersion () { - if [[ -n "$KUDU_SELECT_NODE_VERSION_CMD" ]]; then - SELECT_NODE_VERSION="$KUDU_SELECT_NODE_VERSION_CMD \"$DEPLOYMENT_SOURCE\" \"$DEPLOYMENT_TARGET\" \"$DEPLOYMENT_TEMP\"" - eval $SELECT_NODE_VERSION - exitWithMessageOnError "select node version failed" - - if [[ -e "$DEPLOYMENT_TEMP/__nodeVersion.tmp" ]]; then - NODE_EXE=`cat "$DEPLOYMENT_TEMP/__nodeVersion.tmp"` - exitWithMessageOnError "getting node version failed" - fi - - if [[ -e "$DEPLOYMENT_TEMP/.tmp" ]]; then - NPM_JS_PATH=`cat "$DEPLOYMENT_TEMP/__npmVersion.tmp"` - exitWithMessageOnError "getting npm version failed" - fi - - if [[ ! -n "$NODE_EXE" ]]; then - NODE_EXE=node - fi - - NPM_CMD="\"$NODE_EXE\" \"$NPM_JS_PATH\"" - else - NPM_CMD=npm - NODE_EXE=node - fi -} - -################################################################################################################################## -# Deployment -# ---------- - -echo Handling node.js deployment. - -# 1. KuduSync -if [[ "$IN_PLACE_DEPLOYMENT" -ne "1" ]]; then - "$KUDU_SYNC_CMD" -v 50 -f "$DEPLOYMENT_SOURCE" -t "$DEPLOYMENT_TARGET" -n "$NEXT_MANIFEST_PATH" -p "$PREVIOUS_MANIFEST_PATH" -i ".git;.hg;.deployment;deploy.sh" - exitWithMessageOnError "Kudu Sync failed" -fi - -# 2. Select node version -selectNodeVersion - -# 3. Install npm packages -if [ -e "$DEPLOYMENT_TARGET/package.json" ]; then - $NPM_CMD cache clean - cd "$DEPLOYMENT_TARGET" - eval $NPM_CMD install - exitWithMessageOnError "npm failed" - cd - > /dev/null -fi - -# 4. Install bower packages -if [ -e "$DEPLOYMENT_TARGET/bower.json" ]; then - cd "$DEPLOYMENT_TARGET" - eval $NPM_CMD install bower - exitWithMessageOnError "installing bower failed" - ./node_modules/.bin/bower install - exitWithMessageOnError "bower failed" - cd - > /dev/null -fi - - -################################################################################################################################## - -# Post deployment stub -if [[ -n "$POST_DEPLOYMENT_ACTION" ]]; then - POST_DEPLOYMENT_ACTION=${POST_DEPLOYMENT_ACTION//\"} - cd "${POST_DEPLOYMENT_ACTION_DIR%\\*}" - "$POST_DEPLOYMENT_ACTION" - exitWithMessageOnError "post deployment action failed" -fi - -echo "Finished successfully." diff --git a/gulpfile.js b/gulpfile.js index ec09493..57ac3c5 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -3,7 +3,8 @@ var gulp = require('gulp'), plumber = require('gulp-plumber'), livereload = require('gulp-livereload'), less = require('gulp-less'), - concatCss = require('gulp-concat-css'); + concatCss = require('gulp-concat-css'), + uglify = require('gulp-uglify'); gulp.task('less', function () { gulp.src('./public/css/*.less') @@ -36,6 +37,12 @@ gulp.task('develop', function () { }); }); +gulp.task('compress', function() { + return gulp.src('public/js/*.js') + .pipe(uglify()) + .pipe(gulp.dest('public/dist')); +}); + gulp.task('publish', [ 'less' ]); @@ -43,5 +50,6 @@ gulp.task('publish', [ gulp.task('default', [ 'less', 'develop', + 'compress', 'watch' ]); diff --git a/package.json b/package.json index d59493e..e082fa1 100644 --- a/package.json +++ b/package.json @@ -6,14 +6,15 @@ "start": "node app.js" }, "dependencies": { - "express": "~4.12.0", - "serve-favicon": "~2.2.0", - "morgan": "~1.5.0", - "cookie-parser": "~1.3.3", "body-parser": "~1.12.0", "compression": "~1.4.1", + "cookie-parser": "~1.3.3", + "express": "~4.12.0", + "glob": "~5.0.3", "method-override": "~2.3.0", - "glob": "~5.0.3" + "morgan": "~1.5.0", + "serve-favicon": "~2.2.0", + "vash": "^0.9.2" }, "devDependencies": { "gulp": "~3.8.10", @@ -21,6 +22,7 @@ "gulp-less": "~3.0.1", "gulp-livereload": "~3.8.0", "gulp-nodemon": "~2.0.2", - "gulp-plumber": "~1.0.0" + "gulp-plumber": "~1.0.0", + "gulp-uglify": "^1.2.0" } }