-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathAssemblefile.js
37 lines (33 loc) · 1.06 KB
/
Assemblefile.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
var path = require('path');
var assemble = require('assemble');
var ext = require('gulp-extname');
var contentful = require('./utils/plugins/contentful');
var src = path.join(__dirname, 'src');
function generateKey(fp) {
var split = fp.split('/');
var base = path.basename(fp, path.extname(fp));
var dirname = split[split.length - 2];
return path.join(dirname, base);
}
assemble.layouts(path.join(src, 'layouts/**/*.hbs'));
console.log('LAYOUTS', path.join(src, 'layouts/**/*.hbs'));
assemble.option('renameKey', generateKey);
assemble.task('pages', function() {
var pages = path.join(src, 'pages/**/*.hbs');
return assemble.src(pages)
.on('error', function (err) {
console.log('src error', err);
})
.on('data', function(file) {
console.log('rendering %s', generateKey(file.path));
})
.on('end', function () {
console.log('finished rendering pages');
})
.pipe(contentful(assemble))
.pipe(ext())
.pipe(assemble.dest(path.join('dist/')))
});
assemble.run(['pages'], function(err) {
if(err) console.log(err);
});