UNPKG

808 BJavaScriptView Raw
1const oss = require('ali-oss')
2const fs = require('fs')
3const path = require('path')
4const co = require('co')
5const {
6 info,
7} = require('./util')
8
9module.exports = ({ accessKeyId, accessKeySecret, bucket, region, assets, }, publicDir) => {
10 const store = oss({
11 accessKeyId,
12 accessKeySecret,
13 bucket,
14 region,
15 })
16
17 const files = fs.readdirSync(path.join(publicDir))
18
19 return co(function* () {
20 for (let i = 0; i < files.length; i++) {
21 const f = files[i]
22 const pathObject = path.parse(f)
23 const fileName = `${pathObject.name}${pathObject.ext}`
24
25 const { res, } = yield store.put(`${assets}/${fileName}`, `${publicDir}/${fileName}`)
26 const { status, } = res
27
28 info(`文件${fileName}上传结果:${status}`)
29 }
30 }).catch((e) => {
31 throw e
32 })
33}