I'm seeing some weird differences in behaviour of the TypeScript compiler on an image built with baleana (on-device using balena push {local ip address}) vs. an image built with docker using the same Dockerfile.
Please see this forum post for additional context.
I've checked:
- Same user
- Same working directory
- Same starting contents of ~/webthings/gateway
- Same version of tsc
- Same tsconfig.json
... yet different output.
Image built with Docker:
node@6fc0783b21a3:~/webthings/gateway$ ./node_modules/typescript/bin/tsc -p .
node@6fc0783b21a3:~/webthings/gateway$ ls -al build/
total 696
drwxr-xr-x 11 node node 4096 Sep 5 17:56 .
drwxr-xr-x 1 node node 4096 Sep 5 17:54 ..
-rw-r--r-- 1 node node 53 Sep 5 17:56 addon-loader.d.ts
-rw-r--r-- 1 node node 118 Sep 5 17:56 addon-loader.d.ts.map
-rw-r--r-- 1 node node 7460 Sep 5 17:56 addon-loader.js
-rw-r--r-- 1 node node 4876 Sep 5 17:56 addon-loader.js.map
-rw-r--r-- 1 node node 12576 Sep 5 17:56 addon-manager.d.ts
-rw-r--r-- 1 node node 4997 Sep 5 17:56 addon-manager.d.ts.map
-rw-r--r-- 1 node node 43748 Sep 5 17:56 addon-manager.js
-rw-r--r-- 1 node node 28114 Sep 5 17:56 addon-manager.js.map
-rw-r--r-- 1 node node 609 Sep 5 17:56 addon-utils.d.ts
-rw-r--r-- 1 node node 270 Sep 5 17:56 addon-utils.d.ts.map
-rw-r--r-- 1 node node 12006 Sep 5 17:56 addon-utils.js
-rw-r--r-- 1 node node 7443 Sep 5 17:56 addon-utils.js.map
drwxr-xr-x 5 node node 4096 Sep 5 17:54 addons-test
-rw-r--r-- 1 node node 373 Sep 5 17:56 app.d.ts
-rw-r--r-- 1 node node 461 Sep 5 17:56 app.d.ts.map
-rw-r--r-- 1 node node 13695 Sep 5 17:56 app.js
-rw-r--r-- 1 node node 9442 Sep 5 17:56 app.js.map
-rw-r--r-- 1 node node 1217 Sep 5 17:56 certificate-manager.d.ts
-rw-r--r-- 1 node node 604 Sep 5 17:56 certificate-manager.d.ts.map
-rw-r--r-- 1 node node 13078 Sep 5 17:56 certificate-manager.js
-rw-r--r-- 1 node node 8439 Sep 5 17:56 certificate-manager.js.map
-rw-r--r-- 1 node node 4487 Sep 5 17:56 constants.d.ts
-rw-r--r-- 1 node node 2811 Sep 5 17:56 constants.d.ts.map
-rw-r--r-- 1 node node 6837 Sep 5 17:56 constants.js
-rw-r--r-- 1 node node 3076 Sep 5 17:56 constants.js.map
drwxr-xr-x 2 node node 4096 Sep 5 17:56 controllers
-rw-r--r-- 1 node node 6096 Sep 5 17:56 db.d.ts
-rw-r--r-- 1 node node 2894 Sep 5 17:56 db.d.ts.map
-rw-r--r-- 1 node node 17558 Sep 5 17:56 db.js
-rw-r--r-- 1 node node 11684 Sep 5 17:56 db.js.map
-rw-r--r-- 1 node node 413 Sep 5 17:56 deferred.d.ts
-rw-r--r-- 1 node node 434 Sep 5 17:56 deferred.d.ts.map
-rw-r--r-- 1 node node 807 Sep 5 17:56 deferred.js
-rw-r--r-- 1 node node 743 Sep 5 17:56 deferred.js.map
-rw-r--r-- 1 node node 742 Sep 5 17:56 ec-crypto.d.ts
-rw-r--r-- 1 node node 259 Sep 5 17:56 ec-crypto.d.ts.map
-rw-r--r-- 1 node node 2839 Sep 5 17:56 ec-crypto.js
-rw-r--r-- 1 node node 1866 Sep 5 17:56 ec-crypto.js.map
-rw-r--r-- 1 node node 327 Sep 5 17:56 errors.d.ts
-rw-r--r-- 1 node node 421 Sep 5 17:56 errors.d.ts.map
-rw-r--r-- 1 node node 325 Sep 5 17:56 errors.js
-rw-r--r-- 1 node node 243 Sep 5 17:56 errors.js.map
drwxr-xr-x 2 node node 4096 Sep 5 17:56 iso-639
-rw-r--r-- 1 node node 1392 Sep 5 17:56 jwt-middleware.d.ts
-rw-r--r-- 1 node node 672 Sep 5 17:56 jwt-middleware.d.ts.map
-rw-r--r-- 1 node node 5894 Sep 5 17:56 jwt-middleware.js
-rw-r--r-- 1 node node 3497 Sep 5 17:56 jwt-middleware.js.map
-rw-r--r-- 1 node node 375 Sep 5 17:56 log-timestamps.d.ts
-rw-r--r-- 1 node node 147 Sep 5 17:56 log-timestamps.d.ts.map
-rw-r--r-- 1 node node 6270 Sep 5 17:56 log-timestamps.js
-rw-r--r-- 1 node node 5448 Sep 5 17:56 log-timestamps.js.map
-rw-r--r-- 1 node node 457 Sep 5 17:56 migrate.d.ts
-rw-r--r-- 1 node node 202 Sep 5 17:56 migrate.d.ts.map
-rw-r--r-- 1 node node 11233 Sep 5 17:56 migrate.js
-rw-r--r-- 1 node node 8584 Sep 5 17:56 migrate.js.map
drwxr-xr-x 2 node node 4096 Sep 5 17:56 models
-rw-r--r-- 1 node node 761 Sep 5 17:56 oauth-types.d.ts
-rw-r--r-- 1 node node 860 Sep 5 17:56 oauth-types.d.ts.map
-rw-r--r-- 1 node node 3185 Sep 5 17:56 oauth-types.js
-rw-r--r-- 1 node node 1994 Sep 5 17:56 oauth-types.js.map
-rw-r--r-- 1 node node 6404 Sep 5 17:56 package.json
-rw-r--r-- 1 node node 1574 Sep 5 17:56 passwords.d.ts
-rw-r--r-- 1 node node 576 Sep 5 17:56 passwords.d.ts.map
-rw-r--r-- 1 node node 2388 Sep 5 17:56 passwords.js
-rw-r--r-- 1 node node 991 Sep 5 17:56 passwords.js.map
-rw-r--r-- 1 node node 4097 Sep 5 17:56 platform.d.ts
-rw-r--r-- 1 node node 2200 Sep 5 17:56 platform.d.ts.map
-rw-r--r-- 1 node node 11117 Sep 5 17:56 platform.js
-rw-r--r-- 1 node node 6340 Sep 5 17:56 platform.js.map
drwxr-xr-x 3 node node 4096 Sep 5 17:56 platforms
drwxr-xr-x 2 node node 4096 Sep 5 17:56 plugin
-rw-r--r-- 1 node node 842 Sep 5 17:56 push-service.d.ts
-rw-r--r-- 1 node node 477 Sep 5 17:56 push-service.d.ts.map
-rw-r--r-- 1 node node 3222 Sep 5 17:56 push-service.js
-rw-r--r-- 1 node node 1460 Sep 5 17:56 push-service.js.map
-rw-r--r-- 1 node node 673 Sep 5 17:56 router.d.ts
-rw-r--r-- 1 node node 393 Sep 5 17:56 router.d.ts.map
-rw-r--r-- 1 node node 11326 Sep 5 17:56 router.js
-rw-r--r-- 1 node node 6201 Sep 5 17:56 router.js.map
drwxr-xr-x 5 node node 4096 Sep 5 17:56 rules-engine
-rw-r--r-- 1 node node 93 Sep 5 17:56 sleep.d.ts
-rw-r--r-- 1 node node 171 Sep 5 17:56 sleep.d.ts.map
-rw-r--r-- 1 node node 249 Sep 5 17:56 sleep.js
-rw-r--r-- 1 node node 267 Sep 5 17:56 sleep.js.map
drwxr-xr-x 7 node node 4096 Sep 5 17:56 test
-rw-r--r-- 1 node node 1097 Sep 5 17:56 tunnel-service.d.ts
-rw-r--r-- 1 node node 873 Sep 5 17:56 tunnel-service.d.ts.map
-rw-r--r-- 1 node node 9384 Sep 5 17:56 tunnel-service.js
-rw-r--r-- 1 node node 5751 Sep 5 17:56 tunnel-service.js.map
-rw-r--r-- 1 node node 721 Sep 5 17:56 user-profile.d.ts
-rw-r--r-- 1 node node 158 Sep 5 17:56 user-profile.d.ts.map
-rw-r--r-- 1 node node 1472 Sep 5 17:56 user-profile.js
-rw-r--r-- 1 node node 888 Sep 5 17:56 user-profile.js.map
-rw-r--r-- 1 node node 1544 Sep 5 17:56 utils.d.ts
-rw-r--r-- 1 node node 610 Sep 5 17:56 utils.d.ts.map
-rw-r--r-- 1 node node 7514 Sep 5 17:56 utils.js
-rw-r--r-- 1 node node 4530 Sep 5 17:56 utils.js.map
drwxr-xr-x 2 node node 4096 Sep 5 17:54 views
-rw-r--r-- 1 node node 443 Sep 5 17:56 wifi-setup.d.ts
-rw-r--r-- 1 node node 332 Sep 5 17:56 wifi-setup.d.ts.map
-rw-r--r-- 1 node node 15662 Sep 5 17:56 wifi-setup.js
-rw-r--r-- 1 node node 9223 Sep 5 17:56 wifi-setup.js.map
Image built with Balena:
node@2e8a0c0ef1cd:~/webthings/gateway$ ./node_modules/typescript/bin/tsc -p .
node@2e8a0c0ef1cd:~/webthings/gateway$ ls -al build/
total 64
drwxr-xr-x 13 node node 4096 Sep 5 17:56 .
drwxr-xr-x 1 node node 4096 Sep 5 17:54 ..
drwxr-xr-x 5 node node 4096 Sep 5 17:54 addons-test
drwxr-xr-x 2 node node 4096 Sep 5 17:55 controllers
drwxr-xr-x 2 node node 4096 Sep 5 17:55 iso-639
drwxr-xr-x 2 node node 4096 Sep 5 17:55 models
-rw-r--r-- 1 node node 5738 Sep 5 17:54 package.json
drwxr-xr-x 3 node node 4096 Sep 5 17:55 platforms
drwxr-xr-x 2 node node 4096 Sep 5 17:55 plugin
drwxr-xr-x 5 node node 4096 Sep 5 17:55 rules-engine
drwxr-xr-x 10 node node 4096 Sep 5 17:56 src
drwxr-xr-x 3 node node 4096 Sep 5 17:56 static
drwxr-xr-x 7 node node 4096 Sep 5 17:55 test
drwxr-xr-x 2 node node 4096 Sep 5 17:54 views
Any ideas what could be causing these differences in behaviour?
I'm seeing some weird differences in behaviour of the TypeScript compiler on an image built with baleana (on-device using
balena push {local ip address}) vs. an image built with docker using the same Dockerfile.Please see this forum post for additional context.
I've checked:
... yet different output.
Image built with Docker:
Image built with Balena:
Any ideas what could be causing these differences in behaviour?