Skip to content

Instantly share code, notes, and snippets.

@evgeniy1204
Created August 28, 2019 12:22
Show Gist options
  • Save evgeniy1204/c84d93945f1e2fdb65889e75acf47845 to your computer and use it in GitHub Desktop.
Save evgeniy1204/c84d93945f1e2fdb65889e75acf47845 to your computer and use it in GitHub Desktop.
gulp tasks
package.json
{
"name": "feedlead",
"version": "1.0.1",
"description": "",
"dependencies": {},
"devDependencies": {
"gulp": "^3.9.1",
"gulp-autoprefixer": "^3.1.0",
"gulp-clean": "^0.3.2",
"gulp-concat-css": "^2.2.0",
"gulp-connect": "^3.1.0",
"gulp-if": "^2.0.0",
"gulp-livereload": "^3.8.1",
"gulp-minify-css": "^1.2.4",
"gulp-notify": "^2.2.0",
"gulp-rename": "^1.2.2",
"gulp-sftp": "^0.1.5",
"gulp-uglify": "^1.5.3",
"gulp-uncss": "^1.0.4",
"gulp-useref": "^3.0.8"
}
}
==============================
var gulp = require('gulp'),
concatCSS = require('gulp-concat-css'), //--save-dev
autoprefixer = require('gulp-autoprefixer'),
rename = require('gulp-rename'),
uglify = require('gulp-uglify'),
minifyCss = require('gulp-minify-css'),
notify = require('gulp-notify')
livereload = require('gulp-livereload'),
connect = require('gulp-connect'),
uncss = require('gulp-uncss')
useref = require('gulp-useref')
gulpif = require('gulp-if')
sftp = require('gulp-sftp')
clean = require('gulp-clean');
//local
gulp.task('connect', function() {
connect.server({
root: 'app',
livereload: true
});
});
gulp.task('html', function () {
gulp.src('app/index.html')
.pipe(connect.reload());
});
gulp.task('js', function () {
return gulp.src('app/assets/js/*.js')
.pipe(uglify())
.pipe(rename("bundle.min.js"))
.pipe(gulp.dest('prod/dist/js'))
.pipe(connect.reload());
});
gulp.task('css', function () {
return gulp.src('app/assets/css/*.css')
.pipe(concatCSS("bundle.css"))
.pipe(uncss({
html: ['app/index.html']
}))
.pipe(autoprefixer({
browsers: ['last 2 versions'],
cascade: false
}))
.pipe(minifyCss())
.pipe(rename("bundle.min.css"))
.pipe(gulp.dest('app/dist/css'))
.pipe(connect.reload());
});
gulp.task('watch', function () {
gulp.watch(['app/index.html'], ['html', 'css', 'js']);
gulp.watch(['app/assets/css/*.css'], ['css']);
gulp.watch(['app/assets/js/*.js'], ['js']);
});
gulp.task('default', ['connect', 'html', 'css', 'js', 'watch']);
/***********************************************************************************/
//build
gulp.task('build', ['clean'], function () {
return gulp.src('app/dist/**/*')
.pipe(useref())
.pipe(gulpif('*.css', minifyCss()))
.pipe(gulpif('*.js', uglify()))
.pipe(gulp.dest('prod'));
});
//Очистка
gulp.task('clean', function () {
return gulp.src('prod', {read: false})
.pipe(clean());
});
//SFTP
gulp.task('sftp', function () {
return gulp.src('prod/**/*')
.pipe(sftp({
host: '5.101.156.119',
user: 'kuzmicnp',
pass: '9nVLufSq',
remotePath: '/home/k/kuzmicnp/web-linkev.ru/public_html/assets/gulp'
}));
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment