UNPKG

wci-build

Version:
118 lines (90 loc) 3.82 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _config = require("./config"); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } var glob = require('glob'); var path = require('path'); var Console = require('console'); var qiniu = require('qiniu'); var mime = require('mime'); var projectDirectory = process.cwd(); /** * 待抽离 */ var config = { qiniu: { bucket: 'fly-web-cdn', hostname: 'https://cdn.fuliaoyi.com/', AK: 'u1JFo2XoarBECc5tScKwyKtItk6iQFZpbDZQR9hN', SK: 'MfLpuiXPtHwG67H_7jFlGSEngDWV0I7q5fL7oaVM' } }; var mac = new qiniu.auth.digest.Mac(config.qiniu.AK, config.qiniu.SK); var putPolicy = new qiniu.rs.PutPolicy({ scope: config.qiniu.bucket, detectMime: 1 }); var uploadToken = putPolicy.uploadToken(mac); var cf = new qiniu.conf.Config(); var formUploader = new qiniu.form_up.FormUploader(cf); var putExtra = new qiniu.form_up.PutExtra(); var uploadToQiniu = function uploadToQiniu(path, key) { var mimeType = mime.getType(path); var putExtra = _objectSpread(_objectSpread({}, putExtra), {}, { mimeType: mimeType }); return new Promise(function (resolve, reject) { Console.log('\x1b[33m%s\x1b[0m', "==> \u5F00\u59CB\u4E0A\u4F20 ".concat(key, " \u6587\u4EF6")); formUploader.putFile(uploadToken, key, path, putExtra, function (respErr, respBody, respInfo) { if (respErr) { reject(respErr); } Console.log('\x1b[32m%s\x1b[0m', "==> \u4E0A\u4F20\u6210\u529F ".concat(key, " \u6587\u4EF6")); resolve(respBody); }); }); }; ; (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() { var files, i, p, pathname; return _regenerator["default"].wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.next = 2; return glob.sync(path.resolve(projectDirectory, "".concat(_config.DEFAULT_OUTPUT, "/*.*"))); case 2: files = _context.sent; if (files.length) { _context.next = 5; break; } throw Error('没有打包文件'); case 5: i = 0; case 6: if (!(i < files.length)) { _context.next = 14; break; } p = files[i]; pathname = path.basename(p); _context.next = 11; return uploadToQiniu(p, pathname); case 11: i++; _context.next = 6; break; case 14: ; case 15: case "end": return _context.stop(); } } }, _callee); }))();