@pisell/common 0.0.58 → 0.0.59

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -14,9 +14,6 @@ var filterFiles = ['index.html', 'umi.server.js', 'umi.server.d.ts'];
14
14
  var __dirname = process.cwd();
15
15
  var s3Client = null;
16
16
  var bucketName = '';
17
- export var isAWSEnv = function isAWSEnv(env) {
18
- return env === 'prod' || env === 'pre';
19
- };
20
17
 
21
18
  /*******
22
19
  * @title: 初始化
@@ -33,4 +33,7 @@ var isSsrMap = {
33
33
  pisell2_pages: false
34
34
  };
35
35
  var checkPackages = ['@pisell/date-picker', '@pisell/lowcode-renderer', '@pisell/common', '@pisell/utils'];
36
- export { outPathMap, isSsrMap, checkPackages };
36
+
37
+ // 项目使用的发布分支
38
+ var originBranch = ['master', 'release', 'develop', 'pre', 'master_v2', 'release_v2', 'develop_v2', 'pre_v2'];
39
+ export { outPathMap, isSsrMap, checkPackages, originBranch };
@@ -7,7 +7,6 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
7
7
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
8
8
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
9
9
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
10
- import { isAWSEnv } from "../aws/index.js";
11
10
  import { isSsrMap, outPathMap } from "../constants/index.js";
12
11
  import { connectServer as _connectServer, getServerConfig, releaseProject } from "../utils/index.js";
13
12
 
@@ -53,7 +52,7 @@ var Release = /*#__PURE__*/function () {
53
52
  if (this.env === 'release') {
54
53
  serverConfig = serverConfigMap.cn[this.env];
55
54
  }
56
- if (isAWSEnv(this.env)) {
55
+ if (this.env === 'prod') {
57
56
  serverConfig = serverConfigMap.aws.service[this.env];
58
57
  serverConfig.privateKey = fs.readFileSync(serverConfig.privateKey);
59
58
  }
@@ -113,7 +112,7 @@ var Release = /*#__PURE__*/function () {
113
112
  }, {
114
113
  key: "release",
115
114
  value: function () {
116
- var _release = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
115
+ var _release = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(grayBranch) {
117
116
  return _regeneratorRuntime().wrap(function _callee3$(_context3) {
118
117
  while (1) switch (_context3.prev = _context3.next) {
119
118
  case 0:
@@ -122,7 +121,8 @@ var Release = /*#__PURE__*/function () {
122
121
  path: this.outPath,
123
122
  fileName: "".concat(this.version),
124
123
  isSSR: this.isSSR,
125
- env: this.env
124
+ env: this.env,
125
+ branch: grayBranch
126
126
  });
127
127
  case 2:
128
128
  return _context3.abrupt("return", _context3.sent);
@@ -132,7 +132,7 @@ var Release = /*#__PURE__*/function () {
132
132
  }
133
133
  }, _callee3, this);
134
134
  }));
135
- function release() {
135
+ function release(_x) {
136
136
  return _release.apply(this, arguments);
137
137
  }
138
138
  return release;
@@ -8,8 +8,9 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
8
8
  import inquirer from 'inquirer';
9
9
  import 'zx/globals';
10
10
  import { uploadStaticToOSS } from "../aws/index.js";
11
+ import { originBranch } from "../constants/index.js";
11
12
  import Release from "../release/release.js";
12
- import { deleteGitTag, getCurrentProjectName, getCurrentUserName, sendWebhook } from "../utils/index.js";
13
+ import { deleteGitTag, getCurrentProjectName, getCurrentUserName, getGitCurrentBranch, sendWebhook } from "../utils/index.js";
13
14
  import UploadCode from "./uploadCode.js";
14
15
  // {\"post\":{\"zh_cn\":{\"title\":\"my_pisell_shop release环境开始上传并发布\",\"content\":[[{\"text\":\"发布人:\",\"style\":[\"bold\"]},{\"text\":\"左胜杰\",\"style\":[\"bold\"]}],[{\"text\":\"版本号:\",\"style\":[\"bold\"]},{\"text\":\"1.0.71\",\"style\":[\"bold\"]}]]}}}
15
16
  /**
@@ -100,7 +101,7 @@ function init() {
100
101
  */
101
102
  function _init() {
102
103
  _init = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
103
- var res, uploadCode, version, currentUserName, result, _fileName, ossRes, conn, releaseInstance;
104
+ var res, uploadCode, version, currentUserName, result, _fileName, ossRes, conn, releaseInstance, branch, grayBranch;
104
105
  return _regeneratorRuntime().wrap(function _callee$(_context) {
105
106
  while (1) switch (_context.prev = _context.next) {
106
107
  case 0:
@@ -218,7 +219,7 @@ function _init() {
218
219
  return uploadCode.serverUnpack();
219
220
  case 60:
220
221
  if (!res.is_release) {
221
- _context.next = 65;
222
+ _context.next = 70;
222
223
  break;
223
224
  }
224
225
  releaseInstance = new Release({
@@ -229,31 +230,39 @@ function _init() {
229
230
  });
230
231
  console.log('开始发布');
231
232
  _context.next = 65;
232
- return releaseInstance.release();
233
+ return getGitCurrentBranch();
233
234
  case 65:
234
- _context.next = 67;
235
+ branch = _context.sent;
236
+ grayBranch = 'master';
237
+ if (!originBranch.includes(branch)) {
238
+ grayBranch = branch;
239
+ }
240
+ _context.next = 70;
241
+ return releaseInstance.release(grayBranch);
242
+ case 70:
243
+ _context.next = 72;
235
244
  return uploadCode.disconnectServer();
236
- case 67:
237
- _context.next = 69;
245
+ case 72:
246
+ _context.next = 74;
238
247
  return $(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["git pull --no-edit"])));
239
- case 69:
240
- _context.next = 71;
248
+ case 74:
249
+ _context.next = 76;
241
250
  return $(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["git push --follow-tags"])));
242
- case 71:
251
+ case 76:
243
252
  console.log('✅ 成功后推送到git');
244
253
 
245
254
  // 只有在shop端发布
246
255
  if (!(res.project.fileName === 'my_pisel_shop')) {
247
- _context.next = 75;
256
+ _context.next = 80;
248
257
  break;
249
258
  }
250
- _context.next = 75;
259
+ _context.next = 80;
251
260
  return updateVersion({
252
261
  version: version,
253
262
  changelog: res.changelog
254
263
  }, res.env);
255
- case 75:
256
- _context.next = 77;
264
+ case 80:
265
+ _context.next = 82;
257
266
  return sendWebhook({
258
267
  title: "".concat(res.project.fileName, " ").concat(res.env, "\u73AF\u5883").concat(res.is_release ? '上传并发布' : '上传', "\u6210\u529F"),
259
268
  content: [{
@@ -267,20 +276,20 @@ function _init() {
267
276
  value: version || ''
268
277
  }]
269
278
  });
270
- case 77:
271
- _context.next = 88;
279
+ case 82:
280
+ _context.next = 93;
272
281
  break;
273
- case 79:
274
- _context.prev = 79;
282
+ case 84:
283
+ _context.prev = 84;
275
284
  _context.t0 = _context["catch"](26);
276
285
  console.log(_context.t0, '执行出错 请排查重试');
277
- _context.next = 84;
286
+ _context.next = 89;
278
287
  return $(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["git reset HEAD~1"])));
279
- case 84:
280
- _context.next = 86;
288
+ case 89:
289
+ _context.next = 91;
281
290
  return deleteGitTag("v".concat(uploadCode.currentVersion));
282
- case 86:
283
- _context.next = 88;
291
+ case 91:
292
+ _context.next = 93;
284
293
  return sendWebhook({
285
294
  title: "".concat(res.project.fileName, " ").concat(res.env, "\u73AF\u5883").concat(res.is_release ? '上传并发布' : '上传', "\u5931\u8D25"),
286
295
  content: [{
@@ -297,13 +306,13 @@ function _init() {
297
306
  value: "".concat(_context.t0) || ''
298
307
  }]
299
308
  });
300
- case 88:
309
+ case 93:
301
310
  uploadCode.deleteLocalZip();
302
- case 89:
311
+ case 94:
303
312
  case "end":
304
313
  return _context.stop();
305
314
  }
306
- }, _callee, null, [[26, 79]]);
315
+ }, _callee, null, [[26, 84]]);
307
316
  }));
308
317
  return _init.apply(this, arguments);
309
318
  }
@@ -11,7 +11,6 @@ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _ty
11
11
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
12
12
  import archiver from 'archiver';
13
13
  import path from 'path';
14
- import { isAWSEnv } from "../aws/index.js";
15
14
  import { checkPackages, isSsrMap, outPathMap } from "../constants/index.js";
16
15
  import { checkPkgVersion, connectServer as _connectServer, getGitCurrentBranch, getServerConfig, isWorkingTreeClean, serverUnpack as _serverUnpack, serverUpload as _serverUpload } from "../utils/index.js";
17
16
 
@@ -111,7 +110,7 @@ var UploadCode = /*#__PURE__*/function () {
111
110
  return _context.abrupt("return", false);
112
111
  case 21:
113
112
  serverConfig = this.setConfig(serverConfigMap[this.env]);
114
- if (isAWSEnv(this.env)) {
113
+ if (this.env === 'prod') {
115
114
  serverConfig = serverConfigMap.aws.service[this.env];
116
115
  serverConfig.privateKey = fs.readFileSync(serverConfig.privateKey);
117
116
  this.setConfig(serverConfig);
@@ -13,7 +13,6 @@ import * as dotenv from 'dotenv';
13
13
  import npmCheck from 'npm-check';
14
14
  import path from 'path';
15
15
  import ssh2 from 'ssh2';
16
- import { isAWSEnv } from "../aws/index.js";
17
16
 
18
17
  /**
19
18
  * @Title: 项目工作区是否干净
@@ -173,7 +172,7 @@ var serverUnpack = function serverUnpack(conn, _ref5) {
173
172
  reject(err);
174
173
  return;
175
174
  }
176
- stream.end(" ".concat(isAWSEnv(env) ? 'sudo -i' : '', "\n cd /tmp\n mv ").concat(fullFileName, " ").concat(path, "\n cd ").concat(path, "\n unzip ").concat(fullFileName, " -d ").concat(fileName, " && mv ").concat(fileName, "/dist/* ").concat(fileName, "/ && rmdir ").concat(fileName, "/dist\n rm -rf ").concat(fullFileName, "\n echo \"").concat(changelog, "\" > ./").concat(fileName, "/changelog.md\n sh deleteOldVersion.sh\n exit\n ").concat(isAWSEnv(env) ? 'exit' : '', "\n ") // 打开到path
175
+ stream.end(" ".concat(env === 'prod' ? 'sudo -i' : '', "\n cd /tmp\n mv ").concat(fullFileName, " ").concat(path, "\n cd ").concat(path, "\n unzip ").concat(fullFileName, " -d ").concat(fileName, " && mv ").concat(fileName, "/dist/* ").concat(fileName, "/ && rmdir ").concat(fileName, "/dist\n rm -rf ").concat(fullFileName, "\n echo \"").concat(changelog, "\" > ./").concat(fileName, "/changelog.md\n sh deleteOldVersion.sh\n exit\n ").concat(env === 'prod' ? 'exit' : '', "\n ") // 打开到path
177
176
  // 解压 1.0.0.zip 文件到 1.0.0 移动dist中内容到 1.0.0内 删除dist
178
177
  // 删除1.0.0.zip
179
178
  // 写入changelog到changelog.md
@@ -197,7 +196,9 @@ var releaseProject = function releaseProject(conn, _ref6) {
197
196
  var path = _ref6.path,
198
197
  fileName = _ref6.fileName,
199
198
  isSSR = _ref6.isSSR,
200
- env = _ref6.env;
199
+ env = _ref6.env,
200
+ _ref6$branch = _ref6.branch,
201
+ branch = _ref6$branch === void 0 ? 'master' : _ref6$branch;
201
202
  return new Promise(function (resolve, reject) {
202
203
  conn.shell(function (err, stream) {
203
204
  if (err) {
@@ -205,7 +206,7 @@ var releaseProject = function releaseProject(conn, _ref6) {
205
206
  reject(err);
206
207
  return;
207
208
  }
208
- stream.end(" ".concat(isAWSEnv(env) ? 'sudo -i' : '', "\n cd ").concat(path, "\n cp -R -f pre-master next-master\n rm -rf pre-master\n \\cp -R -f ").concat(fileName, "/* next-master\n cp -R -f ").concat(fileName, " pre-master\n rm -rf master\n cp -R next-master master\n rm -rf next-master\n ").concat(isSSR ? 'pm2 restart server.js' : '', "\n exit\n ").concat(isAWSEnv(env) ? 'exit' : '', "\n ") // 打开到path
209
+ stream.end(" ".concat(env === 'prod' ? 'sudo -i' : '', "\n cd ").concat(path, "\n cp -R -f pre-master next-master\n rm -rf pre-master\n \\cp -R -f ").concat(fileName, "/* next-master\n cp -R -f ").concat(fileName, " pre-master\n rm -rf ").concat(branch, "\n cp -R next-master ").concat(branch, "\n rm -rf next-master\n ").concat(isSSR ? 'pm2 restart server.js' : '', "\n exit\n ").concat(env === 'prod' ? 'exit' : '', "\n ") // 打开到path
209
210
  // 复制pre-master到next-master
210
211
  // 删除pre-master
211
212
  // 复制1.0.0到next-master
@@ -29,7 +29,6 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
29
29
  // src/script/aws/index.js
30
30
  var aws_exports = {};
31
31
  __export(aws_exports, {
32
- isAWSEnv: () => isAWSEnv,
33
32
  uploadFolderContents: () => uploadFolderContents,
34
33
  uploadStaticToOSS: () => uploadStaticToOSS
35
34
  });
@@ -43,9 +42,6 @@ var filterFiles = ["index.html", "umi.server.js", "umi.server.d.ts"];
43
42
  var __dirname = process.cwd();
44
43
  var s3Client = null;
45
44
  var bucketName = "";
46
- var isAWSEnv = (env) => {
47
- return env === "prod" || env === "pre";
48
- };
49
45
  var init = async () => {
50
46
  try {
51
47
  const serverConfig = await (0, import_utils.getServerConfig)();
@@ -124,7 +120,6 @@ var uploadStaticToOSS = async (directory, folderPath = import_path.default.resol
124
120
  };
125
121
  // Annotate the CommonJS export names for ESM import in node:
126
122
  0 && (module.exports = {
127
- isAWSEnv,
128
123
  uploadFolderContents,
129
124
  uploadStaticToOSS
130
125
  });
@@ -21,6 +21,7 @@ var constants_exports = {};
21
21
  __export(constants_exports, {
22
22
  checkPackages: () => checkPackages,
23
23
  isSsrMap: () => isSsrMap,
24
+ originBranch: () => originBranch,
24
25
  outPathMap: () => outPathMap
25
26
  });
26
27
  module.exports = __toCommonJS(constants_exports);
@@ -64,9 +65,20 @@ var checkPackages = [
64
65
  "@pisell/common",
65
66
  "@pisell/utils"
66
67
  ];
68
+ var originBranch = [
69
+ "master",
70
+ "release",
71
+ "develop",
72
+ "pre",
73
+ "master_v2",
74
+ "release_v2",
75
+ "develop_v2",
76
+ "pre_v2"
77
+ ];
67
78
  // Annotate the CommonJS export names for ESM import in node:
68
79
  0 && (module.exports = {
69
80
  checkPackages,
70
81
  isSsrMap,
82
+ originBranch,
71
83
  outPathMap
72
84
  });
@@ -22,7 +22,6 @@ __export(release_exports, {
22
22
  default: () => release_default
23
23
  });
24
24
  module.exports = __toCommonJS(release_exports);
25
- var import_aws = require("../aws/index.js");
26
25
  var import_constants = require("../constants/index.js");
27
26
  var import_utils = require("../utils/index.js");
28
27
  var Release = class {
@@ -46,7 +45,7 @@ var Release = class {
46
45
  if (this.env === "release") {
47
46
  serverConfig = serverConfigMap.cn[this.env];
48
47
  }
49
- if ((0, import_aws.isAWSEnv)(this.env)) {
48
+ if (this.env === "prod") {
50
49
  serverConfig = serverConfigMap.aws.service[this.env];
51
50
  serverConfig.privateKey = fs.readFileSync(serverConfig.privateKey);
52
51
  }
@@ -71,12 +70,13 @@ var Release = class {
71
70
  * @Describe:
72
71
  * @Author: Zsj
73
72
  */
74
- async release() {
73
+ async release(grayBranch) {
75
74
  return await (0, import_utils.releaseProject)(this.conn, {
76
75
  path: this.outPath,
77
76
  fileName: `${this.version}`,
78
77
  isSSR: this.isSSR,
79
- env: this.env
78
+ env: this.env,
79
+ branch: grayBranch
80
80
  });
81
81
  }
82
82
  /**
@@ -36,6 +36,7 @@ module.exports = __toCommonJS(uploadCode_exports);
36
36
  var import_inquirer = __toESM(require("inquirer"));
37
37
  var import_globals = require("zx/globals");
38
38
  var import_aws = require("../aws/index.js");
39
+ var import_constants = require("../constants/index.js");
39
40
  var import_release = __toESM(require("../release/release.js"));
40
41
  var import_utils = require("../utils/index.js");
41
42
  var import_uploadCode = __toESM(require("./uploadCode.js"));
@@ -182,7 +183,12 @@ async function init() {
182
183
  conn
183
184
  });
184
185
  console.log("开始发布");
185
- await releaseInstance.release();
186
+ const branch = await (0, import_utils.getGitCurrentBranch)();
187
+ let grayBranch = "master";
188
+ if (!import_constants.originBranch.includes(branch)) {
189
+ grayBranch = branch;
190
+ }
191
+ await releaseInstance.release(grayBranch);
186
192
  }
187
193
  await uploadCode.disconnectServer();
188
194
  await $`git pull --no-edit`;
@@ -34,7 +34,6 @@ __export(uploadCode_exports, {
34
34
  module.exports = __toCommonJS(uploadCode_exports);
35
35
  var import_archiver = __toESM(require("archiver"));
36
36
  var import_path = __toESM(require("path"));
37
- var import_aws = require("../aws/index.js");
38
37
  var import_constants = require("../constants/index.js");
39
38
  var import_utils = require("../utils/index.js");
40
39
  var UploadCode = class {
@@ -85,7 +84,7 @@ var UploadCode = class {
85
84
  return false;
86
85
  }
87
86
  let serverConfig = this.setConfig(serverConfigMap[this.env]);
88
- if ((0, import_aws.isAWSEnv)(this.env)) {
87
+ if (this.env === "prod") {
89
88
  serverConfig = serverConfigMap.aws.service[this.env];
90
89
  serverConfig.privateKey = fs.readFileSync(serverConfig.privateKey);
91
90
  this.setConfig(serverConfig);
@@ -49,7 +49,6 @@ var dotenv = __toESM(require("dotenv"));
49
49
  var import_npm_check = __toESM(require("npm-check"));
50
50
  var import_path = __toESM(require("path"));
51
51
  var import_ssh2 = __toESM(require("ssh2"));
52
- var import_aws = require("../aws/index.js");
53
52
  var isWorkingTreeClean = async () => {
54
53
  const v = await $`git status --porcelain`;
55
54
  return v.stdout === "";
@@ -127,7 +126,7 @@ var serverUnpack = (conn, { path: path2, fileName, fullFileName, changelog, env
127
126
  return;
128
127
  }
129
128
  stream.end(
130
- ` ${(0, import_aws.isAWSEnv)(env) ? "sudo -i" : ""}
129
+ ` ${env === "prod" ? "sudo -i" : ""}
131
130
  cd /tmp
132
131
  mv ${fullFileName} ${path2}
133
132
  cd ${path2}
@@ -136,7 +135,7 @@ var serverUnpack = (conn, { path: path2, fileName, fullFileName, changelog, env
136
135
  echo "${changelog}" > ./${fileName}/changelog.md
137
136
  sh deleteOldVersion.sh
138
137
  exit
139
- ${(0, import_aws.isAWSEnv)(env) ? "exit" : ""}
138
+ ${env === "prod" ? "exit" : ""}
140
139
  `
141
140
  // 打开到path
142
141
  // 解压 1.0.0.zip 文件到 1.0.0 移动dist中内容到 1.0.0内 删除dist
@@ -152,7 +151,7 @@ var serverUnpack = (conn, { path: path2, fileName, fullFileName, changelog, env
152
151
  });
153
152
  });
154
153
  };
155
- var releaseProject = (conn, { path: path2, fileName, isSSR, env }) => {
154
+ var releaseProject = (conn, { path: path2, fileName, isSSR, env, branch = "master" }) => {
156
155
  return new Promise((resolve, reject) => {
157
156
  conn.shell((err, stream) => {
158
157
  if (err) {
@@ -161,18 +160,18 @@ var releaseProject = (conn, { path: path2, fileName, isSSR, env }) => {
161
160
  return;
162
161
  }
163
162
  stream.end(
164
- ` ${(0, import_aws.isAWSEnv)(env) ? "sudo -i" : ""}
163
+ ` ${env === "prod" ? "sudo -i" : ""}
165
164
  cd ${path2}
166
165
  cp -R -f pre-master next-master
167
166
  rm -rf pre-master
168
167
  \\cp -R -f ${fileName}/* next-master
169
168
  cp -R -f ${fileName} pre-master
170
- rm -rf master
171
- cp -R next-master master
169
+ rm -rf ${branch}
170
+ cp -R next-master ${branch}
172
171
  rm -rf next-master
173
172
  ${isSSR ? "pm2 restart server.js" : ""}
174
173
  exit
175
- ${(0, import_aws.isAWSEnv)(env) ? "exit" : ""}
174
+ ${env === "prod" ? "exit" : ""}
176
175
  `
177
176
  // 打开到path
178
177
  // 复制pre-master到next-master
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pisell/common",
3
- "version": "0.0.58",
3
+ "version": "0.0.59",
4
4
  "description": "A collection of reusable UI components for web development",
5
5
  "license": "MIT",
6
6
  "sideEffects": [