@saltcorn/mobile-builder 0.7.3-beta.6 → 0.7.3-beta.7

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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=post-installer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"post-installer.d.ts","sourceRoot":"","sources":["../../docker/post-installer.js"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ const { spawnSync } = require("child_process");
3
+ const { join } = require("path");
4
+ if (process.env.SKIP_DOCKER_IMAGE_INSTALL === "true") {
5
+ console.log("skipping build 'saltcorn/cordova-builder' docker image");
6
+ }
7
+ else {
8
+ const result = spawnSync("docker", [
9
+ "build",
10
+ __dirname,
11
+ "-f",
12
+ join(__dirname, "Dockerfile"),
13
+ "-t",
14
+ "saltcorn/cordova-builder",
15
+ ], { cwd: ".", stdio: "inherit" });
16
+ if (result.error)
17
+ console.log(result.error.toString());
18
+ }
19
+ //# sourceMappingURL=post-installer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"post-installer.js","sourceRoot":"","sources":["../../docker/post-installer.js"],"names":[],"mappings":";AAAA,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAC/C,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAEjC,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,MAAM,EAAE;IACpD,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;CACvE;KAAM;IACL,MAAM,MAAM,GAAG,SAAS,CACtB,QAAQ,EACR;QACE,OAAO;QACP,SAAS;QACT,IAAI;QACJ,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC;QAC7B,IAAI;QACJ,0BAA0B;KAC3B,EACD,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAC/B,CAAC;IACF,IAAI,MAAM,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;CACxD"}
@@ -36,6 +36,6 @@ export declare class MobileBuilder {
36
36
  /**
37
37
  *
38
38
  */
39
- build(): Promise<any>;
39
+ build(): Promise<number | null>;
40
40
  }
41
41
  //# sourceMappingURL=mobile-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-build-utils.d.ts","sourceRoot":"","sources":["../../utils/common-build-utils.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,QAoBhD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,QA8BhD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,GAChB,EAAE,GAAG,QASL;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,iBAkBrD;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,iBAMpD"}
1
+ {"version":3,"file":"common-build-utils.d.ts","sourceRoot":"","sources":["../../utils/common-build-utils.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,QAoBhD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,QA8BhD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,GAChB,EAAE,GAAG,QASL;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,iBAmBrD;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,iBASpD"}
@@ -7,7 +7,7 @@ exports.createSqliteDb = exports.buildTablesFile = exports.writeCfgFile = export
7
7
  const index_1 = __importDefault(require("@saltcorn/data/db/index"));
8
8
  const path_1 = require("path");
9
9
  const fs_extra_1 = require("fs-extra");
10
- const reset = require("@saltcorn/data/db/reset_schema");
10
+ const child_process_1 = require("child_process");
11
11
  /**
12
12
  * copy files from 'server/public' into the www folder (with a version_tag prefix)
13
13
  * @param buildDir directory where the app will be build
@@ -80,7 +80,7 @@ exports.writeCfgFile = writeCfgFile;
80
80
  */
81
81
  async function buildTablesFile(buildDir) {
82
82
  const wwwDir = (0, path_1.join)(buildDir, "www");
83
- const scTables = (await index_1.default.listScTables()).filter((table) => ["_sc_migrations", "_sc_errors"].indexOf(table.name) === -1);
83
+ const scTables = (await index_1.default.listScTables()).filter((table) => ["_sc_migrations", "_sc_errors", "_sc_session"].indexOf(table.name) === -1);
84
84
  const tablesWithData = await Promise.all(scTables.map(async (row) => {
85
85
  const dbData = await index_1.default.select(row.name);
86
86
  return { table: row.name, rows: dbData };
@@ -97,11 +97,14 @@ exports.buildTablesFile = buildTablesFile;
97
97
  * @param buildDir directory where the app will be build
98
98
  */
99
99
  async function createSqliteDb(buildDir) {
100
- const dbPath = (0, path_1.join)(buildDir, "www", "scdb.sqlite");
101
- let connectObj = index_1.default.connectObj;
102
- connectObj.sqlite_path = dbPath;
103
- await index_1.default.changeConnection(connectObj);
104
- await reset();
100
+ const result = (0, child_process_1.spawnSync)("saltcorn", ["reset-schema", "-f"], {
101
+ env: {
102
+ ...process.env,
103
+ FORCE_SQLITE: "true",
104
+ SQLITE_FILEPATH: (0, path_1.join)(buildDir, "www", "scdb.sqlite"),
105
+ },
106
+ });
107
+ console.log(result.output.toString());
105
108
  }
106
109
  exports.createSqliteDb = createSqliteDb;
107
110
  //# sourceMappingURL=common-build-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-build-utils.js","sourceRoot":"","sources":["../../utils/common-build-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-build-utils.js","sourceRoot":"","sources":["../../utils/common-build-utils.ts"],"names":[],"mappings":"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"}
@@ -7,22 +7,15 @@ export declare function prepareBuildDir(buildDir: string, templateDir: string):
7
7
  /**
8
8
  *
9
9
  * @param buildDir directory where the app will be build
10
- * @param options
11
10
  * @returns
12
11
  */
13
- export declare function runBuildContainer(buildDir: string, options: any): any;
14
- /**
15
- *
16
- * @param buildDir directory where the app will be build
17
- * @returns
18
- */
19
- export declare function buildApkInContainer(buildDir: string): any;
12
+ export declare function buildApkInContainer(buildDir: string): number | null;
20
13
  /**
21
14
  * build '.apk / .ipa' files with cordova (only android is tested)
22
15
  * @param flags
23
16
  * @returns
24
17
  */
25
- export declare function buildApp(buildDir: string, platforms: string[], useDocker?: boolean): any;
18
+ export declare function buildApp(buildDir: string, platforms: string[], useDocker?: boolean): number | null;
26
19
  /**
27
20
  *
28
21
  * @param buildDir directory where the app will be build
@@ -1 +1 @@
1
- {"version":3,"file":"cordova-build-utils.d.ts","sourceRoot":"","sources":["../../utils/cordova-build-utils.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAOpE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,GAAG,CAWrE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,OA6BnD;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,CAAC,EAAE,OAAO,OAUpB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAKjE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAO9D;AAED;;;;;GAKG;AACH,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,iBAmBrB"}
1
+ {"version":3,"file":"cordova-build-utils.d.ts","sourceRoot":"","sources":["../../utils/cordova-build-utils.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAQpE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,iBAcnD;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,CAAC,EAAE,OAAO,iBAUpB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAKjE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAO9D;AAED;;;;;GAKG;AACH,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,iBAmBrB"}
@@ -1,15 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.copyApp = exports.callBuild = exports.addPlatforms = exports.buildApp = exports.buildApkInContainer = exports.runBuildContainer = exports.prepareBuildDir = void 0;
3
+ exports.copyApp = exports.callBuild = exports.addPlatforms = exports.buildApp = exports.buildApkInContainer = exports.prepareBuildDir = void 0;
4
4
  const child_process_1 = require("child_process");
5
5
  const fs_extra_1 = require("fs-extra");
6
6
  const path_1 = require("path");
7
+ const os_1 = require("os");
7
8
  /**
8
9
  * copy saltcorn-mobile-app as a template to buildDir
9
10
  * @param buildDir directory where the app will be build
10
11
  * @param templateDir directory of the template code that will be copied to 'buildDir'
11
12
  */
12
13
  function prepareBuildDir(buildDir, templateDir) {
14
+ if ((0, fs_extra_1.existsSync)(buildDir))
15
+ (0, fs_extra_1.rmSync)(buildDir, { force: true, recursive: true });
13
16
  (0, fs_extra_1.copySync)(templateDir, buildDir);
14
17
  (0, fs_extra_1.rmSync)(`${buildDir}/node_modules`, { recursive: true, force: true });
15
18
  const result = (0, child_process_1.spawnSync)("npm", ["install", "--legacy-peer-deps"], {
@@ -21,52 +24,17 @@ exports.prepareBuildDir = prepareBuildDir;
21
24
  /**
22
25
  *
23
26
  * @param buildDir directory where the app will be build
24
- * @param options
25
27
  * @returns
26
28
  */
27
- function runBuildContainer(buildDir, options) {
28
- return (0, child_process_1.spawnSync)("docker", [
29
+ function buildApkInContainer(buildDir) {
30
+ const info = (0, os_1.userInfo)();
31
+ const result = (0, child_process_1.spawnSync)("docker", [
29
32
  "run",
30
33
  "-v",
31
34
  `${buildDir}:/saltcorn-mobile-app`,
32
35
  "saltcorn/cordova-builder",
33
- ], options);
34
- }
35
- exports.runBuildContainer = runBuildContainer;
36
- /**
37
- *
38
- * @param buildDir directory where the app will be build
39
- * @returns
40
- */
41
- function buildApkInContainer(buildDir) {
42
- const spawnOptions = {
43
- cwd: ".",
44
- };
45
- // try docker without sudo
46
- let result = runBuildContainer(buildDir, spawnOptions);
47
- if (result.status === 0) {
48
- console.log(result.output.toString());
49
- }
50
- else if (result.status === 1 || result.status === 125) {
51
- // try docker rootless
52
- spawnOptions.env = {
53
- DOCKER_HOST: `unix://${process.env.XDG_RUNTIME_DIR}/docker.sock`,
54
- };
55
- result = runBuildContainer(buildDir, spawnOptions);
56
- if (result.status === 0) {
57
- console.log(result.output.toString());
58
- }
59
- else {
60
- console.log("Unable to run the docker build image.");
61
- console.log("Try installing 'docker rootless' mode, or add the current user to the 'docker' group.");
62
- console.log(result);
63
- console.log(result.output.toString());
64
- }
65
- }
66
- else {
67
- console.log("An error occured");
68
- console.log(result);
69
- }
36
+ ], { cwd: "." });
37
+ console.log(result.output.toString());
70
38
  return result.status;
71
39
  }
72
40
  exports.buildApkInContainer = buildApkInContainer;
@@ -1 +1 @@
1
- {"version":3,"file":"cordova-build-utils.js","sourceRoot":"","sources":["../../utils/cordova-build-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cordova-build-utils.js","sourceRoot":"","sources":["../../utils/cordova-build-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ FROM node:16
2
+
3
+ RUN apt update && apt install -y wget unzip \
4
+ openjdk-11-jdk openjdk-11-demo openjdk-11-doc openjdk-11-jre-headless openjdk-11-source
5
+
6
+ # install android commandline tools and sdk
7
+ RUN wget https://dl.google.com/android/repository/commandlinetools-linux-8512546_latest.zip
8
+ RUN unzip commandlinetools-linux-8512546_latest.zip
9
+ RUN mkdir android_sdk
10
+ RUN yes | cmdline-tools/bin/sdkmanager --sdk_root=android_sdk --install "cmdline-tools;latest"
11
+ RUN android_sdk/cmdline-tools/latest/bin/sdkmanager --list
12
+ RUN android_sdk/cmdline-tools/latest/bin/sdkmanager "platforms;android-11"
13
+ RUN android_sdk/cmdline-tools/latest/bin/sdkmanager "build-tools;30.0.3"
14
+
15
+ # download gradle
16
+ RUN wget -q https://services.gradle.org/distributions/gradle-7.1.1-all.zip \
17
+ && unzip gradle-7.1.1-all.zip -d /opt
18
+
19
+ RUN npm install -g cordova
20
+
21
+ # create an empty project, the first init seems to take longer
22
+ WORKDIR /init_project
23
+ RUN cordova create project
24
+ WORKDIR /init_project/project
25
+ RUN cordova platform add android
26
+ ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
27
+ ENV ANDROID_SDK_ROOT=/android_sdk
28
+ ENV GRADLE_HOME=/opt/gradle-7.1.1
29
+ ENV PATH=$PATH:/opt/gradle-7.1.1/bin
30
+ # stop gradle from downloading itself
31
+ ENV CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL=file\:/gradle-7.1.1-all.zip
32
+ RUN cordova build
33
+
34
+ # due to a bug in npm that has been addressed since then
35
+ # some files in '/root/.npm' are owned by root
36
+ RUN chown -R 1000:1000 "/root/.npm"
37
+ RUN chmod -R o+rwx "/root/.npm"
38
+
39
+ # prepare entry point
40
+ WORKDIR /
41
+ COPY entry.bash ./
42
+ RUN chmod u+x entry.bash
43
+
44
+ RUN chmod o+rwx ~
45
+ RUN chmod -R o+rwx ~/.config
46
+
47
+ ENTRYPOINT ["./entry.bash"]
@@ -0,0 +1,18 @@
1
+ #!/bin/bash
2
+
3
+ export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
4
+ export ANDROID_SDK_ROOT=/android_sdk
5
+ export GRADLE_HOME=/opt/gradle-7.1.1
6
+ export PATH=$PATH:/opt/gradle-7.1.1/bin
7
+ # stop gradle from downloading itself
8
+ export CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL=file\:/gradle-7.1.1-all.zip
9
+
10
+ cd /saltcorn-mobile-app
11
+ echo "adding android platform"
12
+ npm run add-platform android
13
+ echo "calling cordova clean";
14
+ cordova clean
15
+ echo "calling cordova build";
16
+ cordova build android
17
+
18
+ chmod -R o+rwx /saltcorn-mobile-app
@@ -0,0 +1,20 @@
1
+ const { spawnSync } = require("child_process");
2
+ const { join } = require("path");
3
+
4
+ if (process.env.SKIP_DOCKER_IMAGE_INSTALL === "true") {
5
+ console.log("skipping build 'saltcorn/cordova-builder' docker image");
6
+ } else {
7
+ const result = spawnSync(
8
+ "docker",
9
+ [
10
+ "build",
11
+ __dirname,
12
+ "-f",
13
+ join(__dirname, "Dockerfile"),
14
+ "-t",
15
+ "saltcorn/cordova-builder",
16
+ ],
17
+ { cwd: ".", stdio: "inherit" }
18
+ );
19
+ if (result.error) console.log(result.error.toString());
20
+ }
package/package.json CHANGED
@@ -3,19 +3,20 @@
3
3
  "description": "plugin to to build a mobile app from a tenant application",
4
4
  "homepage": "https://saltcorn.com",
5
5
  "repository": "github:saltcorn/saltcorn",
6
- "version": "0.7.3-beta.6",
6
+ "version": "0.7.3-beta.7",
7
7
  "author": "Christian Hugo",
8
8
  "scripts": {
9
- "build": "webpack --mode development"
9
+ "build": "webpack --mode development",
10
+ "postinstall": "node ./docker/post-installer.js"
10
11
  },
11
12
  "dependencies": {
12
- "@saltcorn/markup": "0.7.3-beta.6",
13
- "@saltcorn/data": "0.7.3-beta.6",
14
- "@saltcorn/db-common": "0.7.3-beta.6",
15
- "@saltcorn/server": "0.7.3-beta.6",
16
- "@saltcorn/base-plugin": "0.7.3-beta.6",
17
- "@saltcorn/sbadmin2": "0.7.3-beta.6",
18
- "@saltcorn/mobile-app": "0.7.3-beta.6",
13
+ "@saltcorn/markup": "0.7.3-beta.7",
14
+ "@saltcorn/data": "0.7.3-beta.7",
15
+ "@saltcorn/db-common": "0.7.3-beta.7",
16
+ "@saltcorn/server": "0.7.3-beta.7",
17
+ "@saltcorn/base-plugin": "0.7.3-beta.7",
18
+ "@saltcorn/sbadmin2": "0.7.3-beta.7",
19
+ "@saltcorn/mobile-app": "0.7.3-beta.7",
19
20
  "fs-extra": "^10.0.1",
20
21
  "live-plugin-manager": "^0.16.0",
21
22
  "webpack-merge": "^5.8.0",
@@ -39,6 +40,7 @@
39
40
  },
40
41
  "files": [
41
42
  "/dist",
43
+ "/docker",
42
44
  "webpack.config.js",
43
45
  "!dist/tsconfig.ref.tsbuildinfo"
44
46
  ],