@arcadible/github-release-tools 0.1.1 → 0.1.2

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.
@@ -2,8 +2,8 @@
2
2
  set -e
3
3
  SCRIPT="$(realpath "$0")"
4
4
  DIR="$(dirname "$SCRIPT")"
5
- RESULT=$(node "$DIR/../src/assert-tag.js" "$1")
5
+ RESULT=$(node "$DIR/../src/assert-tag.js" "$1" "$2")
6
6
  if [ "$RESULT" != "true" ]; then
7
- echo "Invalid tag: $1"
7
+ echo "Invalid tag: $2"
8
8
  exit 1
9
9
  fi
package/package.json CHANGED
@@ -17,5 +17,5 @@
17
17
  },
18
18
  "license": "Apache-2.0",
19
19
  "name": "@arcadible/github-release-tools",
20
- "version": "0.1.1"
20
+ "version": "0.1.2"
21
21
  }
package/src/assert-dir.js CHANGED
@@ -10,7 +10,7 @@ const existsSync = fs.existsSync; // eslint-disable-line no-sync
10
10
 
11
11
  // [define]
12
12
 
13
- const tag = process.argv[2];
13
+ const dir = process.argv[2];
14
14
 
15
15
  // [function]
16
16
 
@@ -21,10 +21,10 @@ const write = function (data) {
21
21
  // [main]
22
22
 
23
23
  try {
24
- if (!tag) {
25
- throw new Error("No tag provided.");
24
+ if (!dir) {
25
+ throw new Error("No dir provided.");
26
26
  }
27
- write(existsSync(tag) ? "true" : "false");
27
+ write(existsSync(dir) ? "true" : "false");
28
28
  } catch {
29
29
  write("false");
30
30
  }
package/src/assert-tag.js CHANGED
@@ -2,15 +2,18 @@
2
2
 
3
3
  // [import]
4
4
 
5
+ const fs = require("fs");
5
6
  const semver = require("semver");
6
7
 
7
8
  // [use]
8
9
 
10
+ const readFileSync = fs.readFileSync; // eslint-disable-line no-sync
9
11
  const valid = semver.valid;
10
12
 
11
13
  // [define]
12
14
 
13
- const tag = process.argv[2];
15
+ const file = process.argv[2];
16
+ const tag = process.argv[3];
14
17
 
15
18
  // [function]
16
19
 
@@ -21,14 +24,19 @@ const write = function (data) {
21
24
  // [main]
22
25
 
23
26
  try {
27
+ if (!file) {
28
+ throw new Error("No file provided.");
29
+ }
24
30
  if (!tag) {
25
31
  throw new Error("No tag provided.");
26
32
  }
27
33
  if (!tag.startsWith("arcadible/")) {
28
34
  throw new Error("Invalid tag prefix.");
29
35
  }
30
- const version = tag.split("/").pop();
31
- write(valid(version) ? "true" : "false");
36
+ const buf = readFileSync(file, "utf8");
37
+ const conf = JSON.parse(buf);
38
+ const version = conf?.game?.version;
39
+ write(valid(version) && version === tag.split("/").pop() ? "true" : "false");
32
40
  } catch {
33
41
  write("false");
34
42
  }
@@ -32,11 +32,7 @@ try {
32
32
  }
33
33
  const buf = readFileSync(file, "utf8");
34
34
  const conf = JSON.parse(buf);
35
- if (conf && typeof conf === "object" && conf.workflow) {
36
- write(conf.workflow.deploy_dir);
37
- } else {
38
- write("build");
39
- }
35
+ write(conf?.workflow?.deploy_dir || ".arcadible-public");
40
36
  } catch (ex) {
41
37
  writeErr(ex.message);
42
38
  process.exit(1);
@@ -2,16 +2,18 @@
2
2
 
3
3
  // [import]
4
4
 
5
+ const fs = require("fs");
5
6
  const semver = require("semver");
6
7
 
7
8
  // [use]
8
9
 
9
10
  const prerelease = semver.prerelease;
11
+ const readFileSync = fs.readFileSync; // eslint-disable-line no-sync
10
12
  const valid = semver.valid;
11
13
 
12
14
  // [define]
13
15
 
14
- const tag = process.argv[2];
16
+ const file = process.argv[2];
15
17
 
16
18
  // [function]
17
19
 
@@ -28,13 +30,12 @@ const writeErr = function (data) {
28
30
  // [main]
29
31
 
30
32
  try {
31
- if (!tag) {
32
- throw new Error("No tag provided.");
33
+ if (!file) {
34
+ throw new Error("No file provided.");
33
35
  }
34
- if (!tag.startsWith("arcadible/")) {
35
- throw new Error("Invalid tag prefix.");
36
- }
37
- const version = tag.split("/").pop();
36
+ const buf = readFileSync(file, "utf8");
37
+ const conf = JSON.parse(buf);
38
+ const version = conf?.game?.version;
38
39
  write(valid(version) && prerelease(version) ? "true" : "false");
39
40
  } catch (ex) {
40
41
  writeErr(ex.message);
@@ -32,11 +32,7 @@ try {
32
32
  }
33
33
  const buf = readFileSync(file, "utf8");
34
34
  const conf = JSON.parse(buf);
35
- if (conf && typeof conf === "object" && conf.workflow) {
36
- write(conf.workflow.skip_build ? "true" : "false");
37
- } else {
38
- write("false");
39
- }
35
+ write(conf?.workflow?.skip_build ? "true" : "false");
40
36
  } catch (ex) {
41
37
  writeErr(ex.message);
42
38
  process.exit(1);
@@ -2,15 +2,17 @@
2
2
 
3
3
  // [import]
4
4
 
5
+ const fs = require("fs");
5
6
  const semver = require("semver");
6
7
 
7
8
  // [use]
8
9
 
10
+ const readFileSync = fs.readFileSync; // eslint-disable-line no-sync
9
11
  const valid = semver.valid;
10
12
 
11
13
  // [define]
12
14
 
13
- const tag = process.argv[2];
15
+ const file = process.argv[2];
14
16
 
15
17
  // [function]
16
18
 
@@ -27,13 +29,12 @@ const writeErr = function (data) {
27
29
  // [main]
28
30
 
29
31
  try {
30
- if (!tag) {
31
- throw new Error("No tag provided.");
32
+ if (!file) {
33
+ throw new Error("No file provided.");
32
34
  }
33
- if (!tag.startsWith("arcadible/")) {
34
- throw new Error("Invalid tag prefix.");
35
- }
36
- const version = tag.split("/").pop();
35
+ const buf = readFileSync(file, "utf8");
36
+ const conf = JSON.parse(buf);
37
+ const version = conf?.game?.version;
37
38
  if (!valid(version)) {
38
39
  throw new Error("Invalid semver.");
39
40
  }