Socket
Socket
Sign inDemoInstall

duoms

Package Overview
Dependencies
152
Maintainers
1
Versions
27
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.2.9 to 0.3.0

85

lib/push.js

@@ -19,4 +19,4 @@ #!/usr/bin/env node

// 配置信息
var pack_info, Bucket = {
//配置信息
var cwd = process.cwd(), Bucket = {
view: [

@@ -32,69 +32,36 @@ 'fine3q-res'

// 解析项目信息
function getProjectInfo() {
//获取项目信息
var packInfo = function(){
try {
pack_info = require(path.join(process.cwd(), './package.json'));
} catch (e) {}
packInfo = require(path.join(cwd, './package.json'));
} catch(e) {};
// 如果没有 package.json, 进行警告提示
if (!pack_info) {
console.warn(colors.warn('没有 "package.json" 文件, 安全起见, 不予发布.'));
if(!packInfo){
console.warn(colors.warn('合格的DuoMS项目根目录必须配有package.json文件'));
return null;
}
// 检查项目名(决定了发布到 OSS 上的目录地址)
if (!pack_info.name) {
console.warn(colors.warn('"package.json" 文件中没有 "name" 字段, 无法发布.'));
return null;
}
// 获取 repository 字段, 解析 repo 信息
var repo = pack_info.repository ? (pack_info.repository.url || '') : '';
repo.match(/[:\/](fe)\/(\S+)(.git)$/);
// 检查是否 fe 组
if (RegExp.$1 !== 'fe') {
console.warn(colors.warn('注意: 有可能不是 "fe" 组中的项目, 小心与线上目录冲突!'));
return null;
}
// 检查 package.json 中的 name 字段是否和仓库名一致
if (RegExp.$2 !== pack_info.name) {
console.warn(colors.warn('注意: "repository" 字段中的仓库名和 "name" 字段值不一致, 有可能与线上目录冲突!'));
return null;
}
return {
name: pack_info.name
,dir: pack_info.duomsDir || 'build' // 需要发布的目录名称(默认取 build 目录)
name: packInfo.name || ''
,dir: packInfo.duomsDir || 'build' // 需要发布的目录名称(默认取 build 目录)
};
}
}();
function push(cmd) {
/*
// 发布前, 先进行用户身份信息验证
duoms_rc = auth();
//发布核心逻辑
var push = function(cmd) {
// 如果没有用户信息, 直接将流程交给 auth
if (!duoms_rc || !duoms_rc.userName) {
return;
}
*/
if (!packInfo) return;
// 检查项目配置信息
var pack_info = getProjectInfo();
if (!pack_info) return;
//发布目录
var dir = path.join((cmd.dir && cmd.dir !== true) ? cmd.dir : '');
var root = path.join(process.cwd(), pack_info.dir, dir);
var root = path.join(process.cwd(), packInfo.dir, dir);
//暂时用dev目录作为测试环境
var target = cmd.prod ? pack_info.name : path.join('dev/', pack_info.name);
var target = cmd.prod ? packInfo.name : path.join('dev/', packInfo.name);
target = path.join(target, dir);
//禁用项目名
var ban = pack_info.name.replace(/\s/g, '').match(/\bdev\b/) || [];
var ban = packInfo.name.replace(/\s/g, '').match(/\bdev\b/) || [];
if(ban[0]){
return console.warn(colors.warn('禁止使用'+ban[0]+'作为项目名'));
return console.warn(colors.warn('禁止使用'+ ban[0] +'作为项目名'));
}

@@ -124,4 +91,4 @@

if(cmd.all){
[path.join('dev/', pack_info.name)
,pack_info.name].forEach(function(item){
[path.join('dev/', packInfo.name)
,packInfo.name].forEach(function(item){
oss(files, root, path.join(item, dir));

@@ -134,3 +101,3 @@ });

function oss(files, root, target) {
var oss = function(files, root, target) {
var config = {};

@@ -140,3 +107,3 @@ var target_log = target;

console.log('');
console.log(colors.warn(/^dev\//.test(target_log) ? '测试环境' : '正式环境'));
console.log(colors.warn((target_log === 'dev' || /^dev\//.test(target_log)) ? '测试环境' : '正式环境'));

@@ -210,3 +177,7 @@ //验证是否进行了OSS配置

//根据文件类型,发布到不同的Bucket
target = isHtml ? target_log : (/^dev\//.test(target_log) ? target_log.replace(/^(dev\/)/, '$1res/') : 'res/'+target_log);
target = isHtml ? target_log : (
/^dev(\/)*/.test(target_log)
? target_log.replace(/^(dev)(\/*)/, '$1/res/')
: 'res/' + target_log
);

@@ -242,3 +213,3 @@ // 打印发布信息

// 解析 OSS 发布结果
function parseOSSRet(queue, target) {
var parseOSSRet = function(queue, target) {
var fails = queue.ret.filter(function(item) {

@@ -245,0 +216,0 @@ return item.success === false;

{
"name": "duoms",
"version": "0.2.9",
"version": "0.3.0",
"description": "剁手管理系统基础服务",

@@ -5,0 +5,0 @@ "main": "index.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc