Skip to content

Instantly share code, notes, and snippets.

@tyoshikawa1106
Created July 2, 2016 21:23
Show Gist options
  • Save tyoshikawa1106/775a395f820f4bed43fca2d1bfdec28f to your computer and use it in GitHub Desktop.
Save tyoshikawa1106/775a395f820f4bed43fca2d1bfdec28f to your computer and use it in GitHub Desktop.
SalesforceにデプロイするためのGulpfile.js
var gulp = require('gulp');
var zip = require('gulp-zip');
var forceDeploy = require('gulp-jsforce-deploy');
var fs = require('fs');
var path = require('path');
var rename = require("gulp-rename");
// function.getFolders
var getFolders = function (dir) {
return fs.readdirSync(dir)
.filter(function (file) {
return fs.statSync(path.join(dir, file)).isDirectory();
});
}
// Setup Static Resourecs
gulp.task('setup-staticresources', function() {
var folders = getFolders('./pkg/lib/');
folders.map(function (folder) {
// Setup resource
gulp.src('./pkg/lib/' + folder + '/*')
.pipe(zip(folder + '.resource'))
.pipe(gulp.dest('./pkg/staticresources'));
// Setup resource-meta.xml
gulp.src('./pkg/template/template.resource-meta.xml')
.pipe(rename(folder + '.resource-meta.xml'))
.pipe(gulp.dest('./pkg/staticresources/'));
});
});
// Deploy Salesforce
gulp.task('deploy', function() {
gulp.src('./pkg/**', { base: "." })
.pipe(zip('pkg.zip'))
.pipe(forceDeploy({
username: process.env.SF_USERNAME,
password: process.env.SF_PASSWORD
//, loginUrl: 'https://test.salesforce.com'
//, pollTimeout: 120*1000
//, pollInterval: 10*1000
//, version: '33.0'
}));
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment