How to automate publishing bundle js to SharePoint Library

Всем привет.

Сегодня хотел бы поделиться одним сценарием, который я выполнил, чтобы облегчить себе работу. Каждый раз, когда я компилировал себе исходный bundle через команду webpack мне приходилось полученный файл заливать руками в одну библиотеку ресурсов и активов, которую использовали мои решения на SharePoint. Это было очень не удобно и я решил поискать как можно оптимизировать и автоматизировать эту задачу.

Для этого нам необходимо следующее:

  1. gulp (https://gulpjs.com/) который позволяет создавать задачи для выполнения команд.
  2. gulp-spsave (https://www.npmjs.com/package/gulp-spsave) пакет который нам позволяет автоматизировать процесс загрузки данных в нашу бибблиотеку SharePoint.

Для начала установим gulp и после gulp-spsave npm install gulp-spsave --save-dev

Далее все легко и просто. Открываем файл gulpfile.js в котором прописываем задачу

var gulp = require('gulp');

var spsave = require('gulp-spsave');

gulp.task('upload-to-sp', function () {

return gulp.src("./dist/*.js")

.pipe(spsave({

siteUrl: "https://sharepoint/",

folder: "Resources/",

checkin: true,

checkinType: 1

}));

});

Мы также можем указать логин и пароль,. Описание параметров можно посмотреть здесь https://www.npmjs.com/package/spsave

Таким образом запускаем команду gulp upload-to-sp и в результате получаем загруженный файл в нужное место SharePoint.