s3build-cli 1.0.0 → 1.0.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/core/builder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,wBAAgB,UAAU,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B/D"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/core/builder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,wBAAgB,UAAU,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAyB/D"}
@@ -39,29 +39,27 @@ const logger = __importStar(require("../utils/logger"));
39
39
  function runMsbuild(profile) {
40
40
  return new Promise((resolve, reject) => {
41
41
  const args = [
42
- profile.project,
42
+ `"${profile.project}"`,
43
43
  `/p:Configuration=${profile.msbuild.configuration}`,
44
44
  `/p:DeployOnBuild=${profile.msbuild.deployOnBuild}`,
45
45
  `/p:DeployDefaultTarget=WebPublish`,
46
46
  `/p:WebPublishMethod=${profile.msbuild.webPublishMethod}`,
47
- `/p:PublishUrl=${profile.publishDir}`,
47
+ `/p:PublishUrl="${profile.publishDir}"`,
48
48
  ];
49
- logger.info(`msbuild ${args.join(" ")}`);
50
- const proc = (0, child_process_1.spawn)("msbuild", args, {
51
- stdio: "inherit",
52
- shell: true,
53
- });
54
- proc.on("close", (code) => {
55
- if (code !== 0) {
56
- reject(new Error(`msbuild exited with code ${code}`));
49
+ const command = `msbuild ${args.join(" ")}`;
50
+ logger.info(command);
51
+ (0, child_process_1.execFile)("cmd.exe", ["/c", command], (error, stdout, stderr) => {
52
+ if (stdout)
53
+ process.stdout.write(stdout);
54
+ if (stderr)
55
+ process.stderr.write(stderr);
56
+ if (error) {
57
+ reject(new Error(`msbuild exited with code ${error.code}`));
57
58
  }
58
59
  else {
59
60
  resolve();
60
61
  }
61
62
  });
62
- proc.on("error", (err) => {
63
- reject(new Error(`Failed to start msbuild: ${err.message}`));
64
- });
65
63
  });
66
64
  }
67
65
  //# sourceMappingURL=builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/core/builder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,gCA8BC;AAlCD,iDAAsC;AAEtC,wDAA0C;AAE1C,SAAgB,UAAU,CAAC,OAAqB;IAC9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,IAAI,GAAG;YACX,OAAO,CAAC,OAAO;YACf,oBAAoB,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE;YACnD,oBAAoB,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE;YACnD,mCAAmC;YACnC,uBAAuB,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE;YACzD,iBAAiB,OAAO,CAAC,UAAU,EAAE;SACtC,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEzC,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,SAAS,EAAE,IAAI,EAAE;YAClC,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAmB,EAAE,EAAE;YACvC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;YAC9B,MAAM,CAAC,IAAI,KAAK,CAAC,4BAA4B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/core/builder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,gCAyBC;AA7BD,iDAAyC;AAEzC,wDAA0C;AAE1C,SAAgB,UAAU,CAAC,OAAqB;IAC9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,IAAI,GAAG;YACX,IAAI,OAAO,CAAC,OAAO,GAAG;YACtB,oBAAoB,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE;YACnD,oBAAoB,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE;YACnD,mCAAmC;YACnC,uBAAuB,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE;YACzD,kBAAkB,OAAO,CAAC,UAAU,GAAG;SACxC,CAAC;QAEF,MAAM,OAAO,GAAG,WAAW,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAErB,IAAA,wBAAQ,EAAC,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YAC7D,IAAI,MAAM;gBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACzC,IAAI,MAAM;gBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAEzC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,KAAK,CAAC,4BAA4B,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
package/dist/index.js CHANGED
@@ -63,15 +63,15 @@ program
63
63
  }
64
64
  logger.header("Available Profiles");
65
65
  for (const p of profiles) {
66
- const tag = p.source === "local" ? "(local)" : "(bundled)";
67
- logger.success(`${p.name} ${tag}`);
66
+ logger.success(`${p.name} (${p.source})`);
68
67
  }
69
68
  });
70
69
  program
71
70
  .command("init")
72
- .description("Create a sample profile in the current directory")
73
- .action(() => {
74
- const profilesDir = (0, paths_1.getCwdProfilesDir)();
71
+ .description("Create a sample profile")
72
+ .option("-g, --global", "Create in global directory (~/.s3build/profiles)")
73
+ .action((options) => {
74
+ const profilesDir = options.global ? (0, paths_1.getGlobalProfilesDir)() : (0, paths_1.getCwdProfilesDir)();
75
75
  const samplePath = path.join(profilesDir, "example.json");
76
76
  if (fs.existsSync(samplePath)) {
77
77
  logger.info(`Profile already exists: ${samplePath}`);
@@ -82,9 +82,9 @@ program
82
82
  }
83
83
  const sample = {
84
84
  name: "MyProject",
85
- project: "C:\\\\path\\\\to\\\\MyProject.csproj",
86
- publishDir: "C:\\\\localpublish\\\\MyProject",
87
- zipDir: "C:\\\\localpublish",
85
+ project: "C:\\path\\to\\MyProject.csproj",
86
+ publishDir: "C:\\localpublish\\MyProject",
87
+ zipDir: "C:\\localpublish",
88
88
  zipPattern: "MyProject_{date}.zip",
89
89
  msbuild: {
90
90
  configuration: "Release",
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { BuildProfile } from "../types";
2
- export declare function getProfilesDir(): string;
3
2
  export declare function getProfilePath(name: string): string | null;
4
3
  export declare function loadProfile(name: string): BuildProfile;
5
4
  export declare function listProfiles(): Array<{
@@ -7,5 +6,6 @@ export declare function listProfiles(): Array<{
7
6
  source: string;
8
7
  }>;
9
8
  export declare function formatDate(date?: string): string;
9
+ export declare function getGlobalProfilesDir(): string;
10
10
  export declare function getCwdProfilesDir(): string;
11
11
  //# sourceMappingURL=paths.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/utils/paths.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAMxC,wBAAgB,cAAc,IAAI,MAAM,CAKvC;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAU1D;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAatD;AAED,wBAAgB,YAAY,IAAI,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA4BtE;AAED,wBAAgB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAOhD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C"}
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/utils/paths.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAOxC,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc1D;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CActD;AAED,wBAAgB,YAAY,IAAI,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAyBtE;AAED,wBAAgB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAOhD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C"}
@@ -33,29 +33,29 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.getProfilesDir = getProfilesDir;
37
36
  exports.getProfilePath = getProfilePath;
38
37
  exports.loadProfile = loadProfile;
39
38
  exports.listProfiles = listProfiles;
40
39
  exports.formatDate = formatDate;
40
+ exports.getGlobalProfilesDir = getGlobalProfilesDir;
41
41
  exports.getCwdProfilesDir = getCwdProfilesDir;
42
42
  const path = __importStar(require("path"));
43
+ const os = __importStar(require("os"));
43
44
  const fs = __importStar(require("fs"));
44
- // Priority: CWD profiles > bundled profiles
45
+ // Priority: CWD > Global (~/.s3build/profiles) > bundled
45
46
  const CWD_PROFILES_DIR = path.join(process.cwd(), "s3build-profiles");
47
+ const GLOBAL_PROFILES_DIR = path.join(os.homedir(), ".s3build", "profiles");
46
48
  const BUNDLED_PROFILES_DIR = path.join(__dirname, "..", "..", "profiles");
47
- function getProfilesDir() {
48
- if (fs.existsSync(CWD_PROFILES_DIR)) {
49
- return CWD_PROFILES_DIR;
50
- }
51
- return BUNDLED_PROFILES_DIR;
52
- }
53
49
  function getProfilePath(name) {
54
- // Check CWD first
50
+ // 1. Check CWD
55
51
  const cwdPath = path.join(CWD_PROFILES_DIR, `${name}.json`);
56
52
  if (fs.existsSync(cwdPath))
57
53
  return cwdPath;
58
- // Fallback to bundled
54
+ // 2. Check global
55
+ const globalPath = path.join(GLOBAL_PROFILES_DIR, `${name}.json`);
56
+ if (fs.existsSync(globalPath))
57
+ return globalPath;
58
+ // 3. Fallback to bundled
59
59
  const bundledPath = path.join(BUNDLED_PROFILES_DIR, `${name}.json`);
60
60
  if (fs.existsSync(bundledPath))
61
61
  return bundledPath;
@@ -67,6 +67,7 @@ function loadProfile(name) {
67
67
  throw new Error(`Profile "${name}" not found.\n` +
68
68
  ` Looked in:\n` +
69
69
  ` - ${CWD_PROFILES_DIR}\n` +
70
+ ` - ${GLOBAL_PROFILES_DIR}\n` +
70
71
  ` - ${BUNDLED_PROFILES_DIR}\n` +
71
72
  ` Run "s3build init" to create a sample profile.`);
72
73
  }
@@ -76,23 +77,20 @@ function loadProfile(name) {
76
77
  function listProfiles() {
77
78
  const results = [];
78
79
  const seen = new Set();
79
- // CWD profiles (higher priority)
80
- if (fs.existsSync(CWD_PROFILES_DIR)) {
81
- for (const f of fs.readdirSync(CWD_PROFILES_DIR)) {
82
- if (f.endsWith(".json")) {
83
- const name = f.replace(".json", "");
84
- results.push({ name, source: "local" });
85
- seen.add(name);
86
- }
87
- }
88
- }
89
- // Bundled profiles
90
- if (fs.existsSync(BUNDLED_PROFILES_DIR)) {
91
- for (const f of fs.readdirSync(BUNDLED_PROFILES_DIR)) {
92
- if (f.endsWith(".json")) {
93
- const name = f.replace(".json", "");
94
- if (!seen.has(name)) {
95
- results.push({ name, source: "bundled" });
80
+ const dirs = [
81
+ { dir: CWD_PROFILES_DIR, source: "local" },
82
+ { dir: GLOBAL_PROFILES_DIR, source: "global" },
83
+ { dir: BUNDLED_PROFILES_DIR, source: "bundled" },
84
+ ];
85
+ for (const { dir, source } of dirs) {
86
+ if (fs.existsSync(dir)) {
87
+ for (const f of fs.readdirSync(dir)) {
88
+ if (f.endsWith(".json")) {
89
+ const name = f.replace(".json", "");
90
+ if (!seen.has(name)) {
91
+ results.push({ name, source });
92
+ seen.add(name);
93
+ }
96
94
  }
97
95
  }
98
96
  }
@@ -108,6 +106,9 @@ function formatDate(date) {
108
106
  const yyyy = now.getFullYear();
109
107
  return `${dd}-${mm}-${yyyy}`;
110
108
  }
109
+ function getGlobalProfilesDir() {
110
+ return GLOBAL_PROFILES_DIR;
111
+ }
111
112
  function getCwdProfilesDir() {
112
113
  return CWD_PROFILES_DIR;
113
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/utils/paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/utils/paths.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "s3build-cli",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "CLI tool for building and publishing .NET projects with MSBuild. Supports multiple project profiles, auto-zip, and customizable clean rules.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "WebPOS",
3
- "project": "C:\\Users\\DAT\\Desktop\\CongViec\\S3_S9\\11_08\\S3\\Websites\\WebPOS\\WebPOS.csproj",
4
- "publishDir": "C:\\localpublish\\WebPOS",
5
- "zipDir": "C:\\localpublish",
3
+ "project": "E:\\S3\\Websites\\WebPOS\\WebPOS.csproj",
4
+ "publishDir": "E:\\Publish\\S3\\WebPos",
5
+ "zipDir": "E:\\Publish\\S3",
6
6
  "zipPattern": "WebPOS_{date}.zip",
7
7
  "msbuild": {
8
8
  "configuration": "Release",
@@ -10,7 +10,18 @@
10
10
  "webPublishMethod": "FileSystem"
11
11
  },
12
12
  "clean": {
13
- "folders": ["Images", "PaymentSetting", "App_GlobalResources"],
14
- "files": ["ConnectionStrings.config", "web.config", "favicon.ico", "MBBank.json"]
13
+ "folders": ["Images", "PaymentSetting", "Resources"],
14
+ "files": [
15
+ "ConnectionStrings.config",
16
+ "Web.config",
17
+ "MBBank.json",
18
+ "favicon.ico",
19
+ "UserControls\\YSP\\uc_footerHtml.ascx",
20
+ "UserControls\\YSP\\YS_PackageUser.ascx",
21
+ "UserControls\\UC_Footer.ascx",
22
+ "UserControls\\UC_FooterTrangThai.ascx",
23
+ "UserRegister.aspx",
24
+ "Login.aspx"
25
+ ]
15
26
  }
16
27
  }