gocryptotrader
gocryptotrader copied to clipboard
docker-compose build issues
Curious as to how this builds when the Commandline build failed, the CI build is failing, and the docker-compose build fails.
Looks like python2 is the cause. However, I do not see where the additional packages are being layered in to support this. If a git is cloned and it fails the build, this would be failing for any dev on the team. Unless the practice of checking in code or changes comes without a build "pass" check.
To the project devs, thoughts?
Building: /usr/local/bin/node /node_modules/node-gyp/bin/node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [
gyp verb cli '/usr/local/bin/node',
gyp verb cli '/node_modules/node-gyp/bin/node-gyp.js',
gyp verb cli 'rebuild',
gyp verb cli '--verbose',
gyp verb cli '--libsass_ext=',
gyp verb cli '--libsass_cflags=',
gyp verb cli '--libsass_ldflags=',
gyp verb cli '--libsass_library='
gyp verb cli ]
gyp info using [email protected]
gyp info using [email protected] | linux | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb which
failed Error: not found: python2
gyp verb which
failed at getNotFoundError (/node_modules/which/which.js:13:12)
gyp verb which
failed at F (/node_modules/which/which.js:68:19)
gyp verb which
failed at E (/node_modules/which/which.js:80:29)
gyp verb which
failed at /node_modules/which/which.js:89:16
gyp verb which
failed at /node_modules/isexe/index.js:42:5
gyp verb which
failed at /node_modules/isexe/mode.js:8:5
gyp verb which
failed at FSReqCallback.oncomplete (fs.js:183:21)
gyp verb which
failed python2 Error: not found: python2
gyp verb which
failed at getNotFoundError (/node_modules/which/which.js:13:12)
gyp verb which
failed at F (/node_modules/which/which.js:68:19)
gyp verb which
failed at E (/node_modules/which/which.js:80:29)
gyp verb which
failed at /node_modules/which/which.js:89:16
gyp verb which
failed at /node_modules/isexe/index.js:42:5
gyp verb which
failed at /node_modules/isexe/mode.js:8:5
gyp verb which
failed at FSReqCallback.oncomplete (fs.js:183:21) {
gyp verb which
failed code: 'ENOENT'
gyp verb which
failed }
gyp verb check python checking for Python executable "python" in the PATH
gyp verb which
failed Error: not found: python
gyp verb which
failed at getNotFoundError (/node_modules/which/which.js:13:12)
gyp verb which
failed at F (/node_modules/which/which.js:68:19)
gyp verb which
failed at E (/node_modules/which/which.js:80:29)
gyp verb which
failed at /node_modules/which/which.js:89:16
gyp verb which
failed at /node_modules/isexe/index.js:42:5
gyp verb which
failed at /node_modules/isexe/mode.js:8:5
gyp verb which
failed at FSReqCallback.oncomplete (fs.js:183:21)
gyp verb which
failed python Error: not found: python
gyp verb which
failed at getNotFoundError (/node_modules/which/which.js:13:12)
gyp verb which
failed at F (/node_modules/which/which.js:68:19)
gyp verb which
failed at E (/node_modules/which/which.js:80:29)
gyp verb which
failed at /node_modules/which/which.js:89:16
gyp verb which
failed at /node_modules/isexe/index.js:42:5
gyp verb which
failed at /node_modules/isexe/mode.js:8:5
gyp verb which
failed at FSReqCallback.oncomplete (fs.js:183:21) {
gyp verb which
failed code: 'ENOENT'
gyp verb which
failed }
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack at PythonFinder.failNoPython (/node_modules/node-gyp/lib/configure.js:484:19)
gyp ERR! stack at PythonFinder.
[email protected] postinstall /node_modules/electron node install.js
In ./web add this to the docker file RUN apk add --no-cache make g++ python2
Remove if necessary the packages after the build. This will address the docker-compose build issue. Not sure why this was omitted or how the build has been made, unless has been external to the containers
-DB
By the way, the cli executable throws the same error as the container under docker-compose daemon_1 | [WARN] | 04/02/2021 20:26:57 | OKCOIN International asset type margin is disabled, fetching enabled pairs is paused daemon_1 | [DEBUG] | 04/02/2021 20:26:57 | Exchange CurrencyPairSyncer initial sync started. 132 items to process. daemon_1 | panic: interface conversion: interface {} is nil, not string daemon_1 | daemon_1 | goroutine 697 [running]: daemon_1 | github.com/thrasher-corp/gocryptotrader/exchanges/btse.(*BTSE).wsHandleData(0xa2a6dc0, 0xa6c8c00, 0x53, 0x600, 0x600, 0x706f222c) daemon_1 | /go/src/github.com/thrasher-corp/gocryptotrader/exchanges/btse/btse_websocket.go:185 +0x1fc2 daemon_1 | github.com/thrasher-corp/gocryptotrader/exchanges/btse.(*BTSE).wsReadData(0xa2a6dc0) daemon_1 | /go/src/github.com/thrasher-corp/gocryptotrader/exchanges/btse/btse_websocket.go:102 +0xb6 daemon_1 | created by github.com/thrasher-corp/gocryptotrader/exchanges/btse.(*BTSE).WsConnect daemon_1 | /go/src/github.com/thrasher-corp/gocryptotrader/exchanges/btse/btse_websocket.go:43 +0x116
Please advise?
Thanks
Hi @DarkBlaez ,
A PR has been merged in which fixes the BTSE websocket issue. For the record, all pull requests are reviewed by 3 contributors (with the exception of dependabot PRs) before getting merged in but sometimes exchanges make changes which cause issues like the above to surface (BTSE made a change on the 29th of Jan).
Issues which we know about and are working on like the test race issue are ignored which is why you are seeing PRs be merged despite that particular test failing.
As for docker, we will be creating a new CI job to ensure that docker works as expected. We use alpine latest and it looks like there's been a breaking change since the last PR where it was tested and working.
PRs to issues are also welcome!