17.0.0 • Published 6 months ago

ng-deploy-oss v17.0.0

Weekly downloads
54
License
MIT
Repository
github
Last release
6 months ago

ng-deploy-oss

npm CI The MIT License

使用 Angular CLI 发布 Angular 应用到阿里云 OSS、七牛云、又拍云 🚀

快速入门

1、安装 Angular CLI (v8.3.0 以上) 并创建一个新项目

npm install -g @angular/cli
ng new hello-world
cd hello-world

2、添加 ng-deploy-oss

ng add ng-deploy-oss

通用参数 以外,同时阿里云 OSS、七牛云、又拍云三种云存储,不同的类型需要的参数不同,更多细节请参考不同参数

3、部署

ng deploy

参数

通用参数

参数名默认值描述
noBuildfalse是否不执行构建命令
buildCommand-自定义构建命令行
baseHref-指定 baseHref 参数,赞同 ng build --base-href=xx
preCleantrue是否预清除所有远程目录下的文件
oneByOneUploadfalse是否逐个上传文件,并且将所有 html 放在最后上传

不同参数

阿里云 OSS

参数名环境变量名描述
regionALIOSS_REGIONOSS Region,完整列表请参考OSS 开通 Region 和 Endpoint 对照表
akALIOSS_AK阿里云 AccessKeyId
skALIOSS_SK阿里云 AccessKeySecret
stsTokenALIOSS_STSTOKEN阿里云 STS Token
bucketALIOSS_BUCKETBucket
prefixALIOSS_PREFIX路径前缀,如果不指定表示放在根目录下
buildCommandALIOSS_BUILDCOMMAND构建生产环境的 NPM 命令行(例如:npm run build),若为空表示自动根据 angular.json 构建生成环境

七牛云

参数名环境变量名描述
akQINIU_AK七牛云 AccessKey
skQINIU_SK七牛云 SecretKey
zoneQINIU_ZONE所在机房
bucketQINIU_BUCKETBucket
prefixQINIU_PREFIX路径前缀,如果不指定表示放在根目录下
buildCommandQINIU_BUILDCOMMAND构建生产环境的 NPM 命令行(例如:npm run build),若为空表示自动根据 angular.json 构建生成环境

又拍云

参数名环境变量名描述
nameUPYUN_NAME服务名称
operatorNameUPYUN_OPERATORNAME操作员名称(确保可写入&可删除权限)
operatorPwdUPYUN_OPERATORPWD操作员密码
prefixUPYUN_PREFIX路径前缀,如果不指定表示放在根目录下
buildCommandUPYUN_BUILDCOMMAND构建生产环境的 NPM 命令行(例如:npm run build),若为空表示自动根据 angular.json 构建生成环境

使用环境变量

当运行 ng add ng-deploy-oss 时会根据所选的类型提示输入相应的参数,并把这些参数写入 angular.json 中。事实上,对于这些参数属于私密强的信息,这时候可以利用环境变量,来保护这些私密信息。

例如,当生产环境部署时,使用不同的 ALIOSS_AK 参数时:

# Windows:
set ALIOSS_AK=prod
# on OS X or Linux:
export ALIOSS_AK=prod

使用命令行

命令行参数也可以改变其参数值,但它的优先级会低于环境变量方式,高于 angular.json 配置的信息。

ng deploy --ak=prod

License

The MIT License (see the LICENSE file for the full text)