Files @ 170f5f189ff5
Branch filter:

Location: CopyleftConf/copyleftconf-website/gulpfile.js - annotation

170f5f189ff5 2.9 KiB application/javascript Show Source Show as Raw Download as Raw
Patrick Altman
Update deploy config
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
dd8f0ba9c517
/**
 * Setup
 */
process.title = process.title || 'gulp';

/**
 * Dependencies
 */
const path = require('path');
const gulp = require('gulp');

/**
 * Setup
 */
const tasks = require(path.resolve(__dirname, 'gulp/tasks'));
const config = require(path.resolve(__dirname, 'gulp/config'));

/**
 * Tasks
 */
gulp.task('build:clean', function buildClean() {
  tasks.clean(config.paths.build);
  return tasks.clean(config.paths.dist);
});

gulp.task('build:styles', function buildStyles() {
  return tasks.css(config.styles.source, {less: {paths: config.styles.npmPaths}})
    .pipe(gulp.dest(config.styles.dist));
});

gulp.task('build:js', function buildJS() {
  return tasks.browserify(config.scripts.main)
    .pipe(gulp.dest(config.scripts.dist));
});

gulp.task('manifest', function manifest() {
  return tasks.rev(config.manifest.source)
    .pipe(gulp.dest(config.paths.dist))
    .pipe(tasks.manifest())
    .pipe(gulp.dest(config.paths.build));
});

gulp.task('build:copy-icons', function() {    return tasks.copy(config.fonts.sources)
        .pipe(gulp.dest(config.fonts.dist));});
gulp.task('build:copy-images', function() {
    return tasks.copy(config.images.sources).pipe(gulp.dest(config.images.dist));
});

gulp.task('build:script-include', function () {
    return tasks.handlebars(config.templates.manifestPath, config.templates.scriptsTemplate, config.staticUrlRoot)
        .pipe(gulp.dest(config.templates.destination));
});

gulp.task('build:style-include', function () {
    return tasks.handlebars(config.templates.manifestPath, config.templates.stylesTemplate, config.staticUrlRoot)
        .pipe(gulp.dest(config.templates.destination));
});

gulp.task('test', function test() {
  return tasks.test(config.test.all);
});

gulp.task('test:req', function testReq() {
  return tasks.test(config.test.req);
});

gulp.task('test:components', function testComponents() {
  return tasks.test(config.test.components);
});

gulp.task('xo', function xo() {
  return tasks.xo(config.xo.source);
});

gulp.task('optimize:js', function () {
  return tasks.optimizejs(config.optimize.js.source, config.optimize.js.options, config.optimize.js.dist);
});

gulp.task('optimize:css', function () {
  return tasks.optimizecss(config.optimize.css.source, config.optimize.css.options, config.optimize.css.dist);
});

/**
 * Compound Tasks
 */
gulp.task('watch', function watch() {
  gulp.watch(config.watch.styles, gulp.series(['build:styles', 'manifest', 'build:style-include']));
  gulp.watch(config.watch.scripts, gulp.series(['build:js', 'manifest', 'build:script-include']));
});

gulp.task('build', gulp.series([
  'xo',
  'build:clean',
  gulp.parallel([
    'build:styles',
    'build:js',
    'build:copy-icons',
    'build:copy-images'
  ]),
  'manifest',
  'build:script-include',
  'build:style-include'
]));

gulp.task('default', gulp.series([
  'build',
  'watch'
]));

gulp.task('release', gulp.series([
    'build',
    'optimize:js',
    'optimize:css'
]));