Skip to content

Commit

Permalink
HTML minification + Improve configuration management
Browse files Browse the repository at this point in the history
  • Loading branch information
csuarez committed Mar 17, 2016
1 parent e0bdc96 commit fe90fad
Show file tree
Hide file tree
Showing 6 changed files with 49 additions and 11 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Expand Up @@ -3,3 +3,6 @@ node_modules

#grunt-rev
rev-manifest.json

#Configuration
config.toml
4 changes: 4 additions & 0 deletions config.dev.toml
@@ -0,0 +1,4 @@
baseurl = "http://0.0.0.0:6789"
languageCode = "en"
title = "César Suárez, Software Engineer"
googleAnalytics = "UA-38378447-1"
1 change: 0 additions & 1 deletion config.toml → config.prod.toml
@@ -1,4 +1,3 @@
# For development: baseurl="http://0.0.0.0:6789"
baseurl = "http://csuarez.me"
languageCode = "en"
title = "César Suárez, Software Engineer"
Expand Down
3 changes: 2 additions & 1 deletion deploy.sh
@@ -1,9 +1,10 @@
#!/bin/bash

echo -e "\033[0;32mDeploying updates to GitHub...\033[0m"
echo "\033[0;32mDeploying updates to GitHub...\033[0m"

# Build the project.
npm install
gulp config-prod
gulp build

# Go To Public folder
Expand Down
47 changes: 38 additions & 9 deletions gulpfile.js
Expand Up @@ -14,6 +14,8 @@ var imagemin = require('gulp-imagemin');
var rev = require('gulp-rev');
var buffer = require('gulp-buffer');
var revCollector = require('gulp-rev-collector');
var htmlmin = require('gulp-htmlmin');
var rename = require('gulp-rename');

var sassInput = './stylesheets/**/*.scss';
var sassOutput = './public/css';
Expand All @@ -38,12 +40,14 @@ var hugoInput = [
];

var imageInput = './static/img/**/*';
var imageOutput = './public/img';

var imageOutput = './public/img'
var configDevFile = './config.dev.toml';
var configProdFile = './config.prod.toml';

gulp.task('default', ['serve']);

gulp.task('build', ['hugo', 'sass', 'js', 'img', 'replace']);
gulp.task('build', ['hugo', 'sass', 'js', 'img', 'html']);

gulp.task('hugo', function() {
return buildHugo();
Expand All @@ -61,16 +65,25 @@ gulp.task('img', function() {
return buildImages();
});

gulp.task('replace', function() {
return gulp
.src(['./rev-manifest.json', './public/**/*.html'])
.pipe(revCollector({
replaceReved: true
}))
.pipe(gulp.dest('public'));
gulp.task('html', function() {
return buildHtml();
});

gulp.task('config-dev', function() {
return changeConfigFile(configDevFile);
});

gulp.task('config-prod', function() {
return changeConfigFile(configProdFile);
});

gulp.task('watch', function() {

changeConfigFile(configDevFile);
buildHugo();
buildSass();
buildJs();

watch(sassInput, function (vinyl) {
gutil.log(gutil.colors.green(vinyl.relative), 'fired', gutil.colors.green(vinyl.event));
return buildSass().pipe(connect.reload());
Expand Down Expand Up @@ -154,6 +167,16 @@ function buildImages() {
.pipe(gulp.dest(imageOutput));
}

function buildHtml() {
return gulp
.src(['./rev-manifest.json', './public/**/*.html'])
.pipe(revCollector({
replaceReved: true
}))
.pipe(htmlmin({collapseWhitespace: true}))
.pipe(gulp.dest('public'));
}

function handleError(error) {
gutil.beep();
var message = null;
Expand All @@ -165,3 +188,9 @@ function handleError(error) {
gutil.log(gutil.colors.red(message));
this.emit('end');
}

function changeConfigFile(newConfigFile) {
return gulp.src(newConfigFile)
.pipe(rename('config.toml'))
.pipe(gulp.dest('./'));
}
2 changes: 2 additions & 0 deletions package.json
Expand Up @@ -10,8 +10,10 @@
"gulp-concat": "^2.6.0",
"gulp-connect": "^2.3.1",
"gulp-cssnano": "^2.1.0",
"gulp-htmlmin": "^1.3.0",
"gulp-imagemin": "^2.4.0",
"gulp-plumber": "^1.0.1",
"gulp-rename": "^1.2.2",
"gulp-rev": "^7.0.0",
"gulp-rev-collector": "^1.0.2",
"gulp-sass": "^2.1.1",
Expand Down

0 comments on commit fe90fad

Please sign in to comment.