UNPKG

generator-gsndnn

Version:

Scaffolds DNN extensions, including Modules (Webforms, SPA, and MVC), Persona Bar, Skin Object, Library, Scheduler, and Hotcakes Commerce projects (based on the generator built by Matt Rutledge).

117 lines (109 loc) 3.39 kB
var gulp = require('gulp'); var config = require('../../package.json'); var zip = require('gulp-zip'); var markdown = require('gulp-markdown'); var rename = require('gulp-rename'); var es = require('event-stream'); gulp.task('packageInstall', function() { var packageName = config.dnnModule.fullName + '_' + config.version; var resourceZip = gulp .src( [ '**/*.cshtml', '**/*.ascx', '**/*.asmx', '**/*.css', '**/*.html', '**/*.htm', '**/*.resx', '**/*.aspx', '**/*.js', '**/*.txt', '**/*.png', '**/*.gif', '**/*.jpg', '**/*.svg', '!**/web.config', '!**/gulpfile.js', '!**/{_BuildScripts,_BuildScripts/**}', '!**/{_Packages,_Packages/**}', '!**/{bin,bin/**}', '!**/{obj,obj/**}', '!**/{packages,packages/**}', '!**/{node_modules,node_modules/**}', '!**/{_PublishedWebsites,_PublishedWebsites/**}' ], { base: '.' } ) .pipe(zip('Resources.zip')); return es .merge( gulp.src([ '**/<%= namespace%>.<%= moduleName %>.dll', '**/<%= moduleName %>.dnn', '**/*.SqlDataProvider', '!**/gulpfile.js', '!**/{_BuildScripts,_BuildScripts/**}', '!**/{_Packages,_Packages/**}', '!**/{obj,obj/**}', '!**/{packages,packages/**}', '!**/{node_modules,node_modules/**}', '!**/{_PublishedWebsites,_PublishedWebsites/**}' ]), gulp .src(config.dnnModule.pathToSupplementaryFiles + 'License.md') .pipe(markdown()) .pipe(rename('License.txt')), gulp .src(config.dnnModule.pathToSupplementaryFiles + 'ReleaseNotes.md') .pipe(markdown()) .pipe(rename('ReleaseNotes.txt')), resourceZip ) .pipe(zip(packageName + '_Install.zip')) .pipe(gulp.dest(config.dnnModule.packagesPath)); }); gulp.task('packageSource', function() { var packageName = config.dnnModule.fullName + '_' + config.version; var resourceZip = gulp .src( [ '**/*.*', '!**/{License.txt,ReleaseNotes.txt, *-lock.json}', '!**/{_Packages,_Packages/**}', '!**/{bin,bin/**}', '!**/{obj,obj/**}', '!**/{packages,packages/**}', '!**/{node_modules,node_modules/**}', '!**/{_PublishedWebsites,_PublishedWebsites/**}' ], { base: '.' } ) .pipe(zip('Resources.zip')); return es .merge( gulp.src([ '**/<%= namespace %>.<%= moduleName %>.dll', '**/<%= moduleName %>.dnn', '**/*.SqlDataProvider', '!**/{obj,obj/**}', '!**/{_PublishedWebsites,_PublishedWebsites/**}' ]), gulp .src(config.dnnModule.pathToSupplementaryFiles + 'License.md') .pipe(markdown()) .pipe(rename('License.txt')), gulp .src(config.dnnModule.pathToSupplementaryFiles + 'ReleaseNotes.md') .pipe(markdown()) .pipe(rename('ReleaseNotes.txt')), resourceZip ) .pipe(zip(packageName + '_Source.zip')) .pipe(gulp.dest(config.dnnModule.packagesPath)); }); gulp.task('package', gulp.parallel(['packageInstall', 'packageSource']));