1.0.0 • Published 6 years ago

huaweicloud-obs-sync v1.0.0

Weekly downloads
1
License
MIT
Repository
github
Last release
6 years ago

huaweicloud-obs-sync

同步本地文件目录到华为云OBS文件夹。

特性说明

  1. 支持增量同步本地文件目录到华为云OBS文件夹
  2. 支持设置是否同步删除OBS文件和目录
  3. 支持指定OBS同步目录
  4. 支持设置本地过滤文件和OBS过滤文件

安装说明

npm install huaweicloud-obs-sync --save

使用说明

var obsSync = require('huaweicloud-obs-sync');

// 同步整个本地目录
obsSync.syncFolderToOBS({
        server : "https://obs.cn-north-1.myhwclouds.com",
        bucket: "obs-2f97",
        accessKeyId: "R7DYQD3DQRRLTDWYttE3S",
        secretAccessKey: "TERHf0NGpDrbhsbc1h3xymB9w22wK8lLgOhdgFkgjCB2",
        localDir: "D:\\public",
        localFilesIgnorePattern: "^\\..*",
        remoteDir: "/",
        syncDeletedFiles: "yes",
        syncDeletedFilesIgnorePattern: "^\\..*",
    })

//同步本地目录下的单个文件
obsSync.syncFileToOBS("D:\\public\\images\\avast.png", {
        server : "https://obs.cn-north-1.myhwclouds.com",
        bucket: "obs-2f97",
        accessKeyId: "R7DYQD3DQRRLTDWYttE3S",
        secretAccessKey: "TERHf0NGpDrbhsbc1h3xymB9w22wK8lLgOhdgFkgjCB2"
        localFileName: "D:\\public\\images\\avast.png",
        remoteFileName: "images/avast.png"
    })

syncFolderToOBS(options)

同步整个本地目录到OBS

名称必选默认值描述
server必填nullOBS服务器地址,以https://开头,不包含桶名称 比如https://obs.cn-north-1.myhwclouds.com
bucket必填nullOBS桶名称
accessKeyId必填null访问OBS的accessKeyId
secretAccessKey必填null访问OBS的secretAccessKey
localDir必填null本地同步目录的绝对路径
localFilesIgnorePattern可选"^\..*"本地忽略文件的正则表达式 与文件相对于localDir的相对路径相匹配,路径分隔符为/ 比如: images/avast.png
remoteDir可选/同步到远端的目录,路径分隔符为/
syncDeletedFiles可选yesyes或者no, 除syncDeletedFilesIgnorePattern匹配上的文件外 如果是yes,则本地文件删除后,OBS中的文件也会对应删除
syncDeletedFilesIgnorePattern可选"^\..*"远端忽略文件的正则表达式 与文件相对于remoteDir的相对路径相匹配,路径分隔符为/ 比如: images/avast.png

syncFileToOBS(options)

同步本地目录的单个文件到OBS目录

名称必选默认值描述
server必填nullOBS服务器地址,以https://开头,不包含桶名称,比如https://obs.cn-north-1.myhwclouds.com
bucket必填nullOBS桶名称
accessKeyId必填null访问OBS的accessKeyId
secretAccessKey必填null访问OBS的secretAccessKey
localFileName必填null本地文件的绝对路径
remoteFileName必填nullOBS中的全路径,路径分隔符为/

应用场景

1. Hexo插件

使用Hexo将文件发布到OBS,然后运用OBS的静态网站功能对外提供服务,参考:

2. VSCode插件

使用VSCode编辑博客,粘贴图片自动将文件上传至OBS并自动在博客中插入图片地址,参考:

3. 定期备份

定期备份本地目录到OBS

相关资料

华为云OBS的SDK地址: https://developer.huaweicloud.com/sdk?OBS

Hexo插件中心地址: https://hexo.io/plugins/