UNPKG

t-comm

Version:

专业、稳定、纯粹的工具库

100 lines (95 loc) 2.85 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var tslib_es6 = require('../tslib.es6-01322ba9.js'); var fs_fs = require('../fs/fs.js'); var rainbowToCos_helper_helper = require('./helper/helper.js'); var tencentCloud_cos_cos = require('../tencent-cloud/cos/cos.js'); require('fs'); require('../node/fs-util.js'); require('path'); require('../time/time.js'); require('../tencent-cloud/cos/link.js'); require('./helper/value-type.js'); require('../string/string.js'); require('../tencent-cloud/cos/helper.js'); require('../bite/format-bite.js'); function pushCOSFiles(list) { var files = list.map(function (item) { return { key: item.cosKey, path: item.savePath }; }); return files; } function getCOSKeyAndSavePath(_a) { var configList = _a.configList, secretInfo = _a.secretInfo, appName = _a.appName, cosDir = _a.cosDir; var _b = secretInfo || {}, groupName = _b.groupName, envName = _b.envName; return configList.map(function (config) { var key = config.key, valueType = config.valueType; var savePath = rainbowToCos_helper_helper.getSavePath({ appName: appName, groupName: groupName, envName: envName, key: key, valueType: valueType }); var saveFileName = rainbowToCos_helper_helper.getSaveFileName({ appName: appName, groupName: groupName, envName: envName, key: key, valueType: valueType }); return tslib_es6.__assign(tslib_es6.__assign({}, config), { cosKey: "".concat(cosDir, "/").concat(saveFileName), savePath: savePath }); }); } function removeTmpFiles(cosKeyList) { var fs = require('fs'); cosKeyList.forEach(function (item) { fs.unlinkSync(item.savePath); }); } function syncRainbowToCOS(_a) { var configList = _a.configList, secretInfo = _a.secretInfo, appName = _a.appName, cosInfo = _a.cosInfo; return tslib_es6.__awaiter(this, void 0, void 0, function () { var cosKeyList, files; return tslib_es6.__generator(this, function (_b) { switch (_b.label) { case 0: cosKeyList = getCOSKeyAndSavePath({ configList: configList, secretInfo: secretInfo, appName: appName, cosDir: cosInfo.dir }); cosKeyList.forEach(function (item) { fs_fs.writeFileSync(item.savePath, item.value); }); files = pushCOSFiles(cosKeyList); return [4 /*yield*/, tencentCloud_cos_cos.uploadCOSFile(tslib_es6.__assign({ files: files }, cosInfo))]; case 1: _b.sent(); return [4 /*yield*/, removeTmpFiles(cosKeyList)]; case 2: _b.sent(); return [2 /*return*/]; } }); }); } exports.syncRainbowToCOS = syncRainbowToCOS;