mirror of
https://github.com/pezkuwichain/pezkuwi-subquery.git
synced 2026-04-22 01:57:58 +00:00
a8b7d16b97
Node.js checks package.json exports before filesystem, so the mkdir+echo shim didn't work. Now patches the exports map with node -e to add ./substrate pointing to pezkuwi augmentation.
45 lines
2.0 KiB
Docker
45 lines
2.0 KiB
Docker
FROM node:20-alpine
|
|
|
|
WORKDIR /app
|
|
|
|
# Install @subql/node with @polkadot aliased to @pezkuwi
|
|
RUN npm init -y && \
|
|
npm install @subql/node \
|
|
@polkadot/api@npm:@pezkuwi/api@^16.5.36 \
|
|
@polkadot/api-augment@npm:@pezkuwi/api-augment@^16.5.36 \
|
|
@polkadot/api-derive@npm:@pezkuwi/api-derive@^16.5.36 \
|
|
@polkadot/types@npm:@pezkuwi/types@^16.5.36 \
|
|
@polkadot/types-augment@npm:@pezkuwi/types-augment@^16.5.36 \
|
|
@polkadot/types-codec@npm:@pezkuwi/types-codec@^16.5.36 \
|
|
@polkadot/types-create@npm:@pezkuwi/types-create@^16.5.36 \
|
|
@polkadot/types-known@npm:@pezkuwi/types-known@^16.5.36 \
|
|
@polkadot/rpc-core@npm:@pezkuwi/rpc-core@^16.5.36 \
|
|
@polkadot/rpc-provider@npm:@pezkuwi/rpc-provider@^16.5.36 \
|
|
@polkadot/rpc-augment@npm:@pezkuwi/rpc-augment@^16.5.36 \
|
|
@polkadot/util@npm:@pezkuwi/util@^14.0.25 \
|
|
@polkadot/util-crypto@npm:@pezkuwi/util-crypto@^14.0.25 \
|
|
@polkadot/keyring@npm:@pezkuwi/keyring@^14.0.25 \
|
|
@polkadot/networks@npm:@pezkuwi/networks@^14.0.25 \
|
|
@polkadot/wasm-crypto@npm:@pezkuwi/wasm-crypto@^7.5.18 \
|
|
@polkadot/wasm-crypto-wasm@npm:@pezkuwi/wasm-crypto-wasm@^7.5.17 \
|
|
@polkadot/wasm-util@npm:@pezkuwi/wasm-util@^7.5.17 \
|
|
@polkadot/wasm-bridge@npm:@pezkuwi/wasm-bridge@^7.5.17 \
|
|
@polkadot/wasm-crypto-asmjs@npm:@pezkuwi/wasm-crypto-asmjs@^7.5.17 \
|
|
@polkadot/wasm-crypto-init@npm:@pezkuwi/wasm-crypto-init@^7.5.17
|
|
|
|
# @subql/node requires '@polkadot/api-augment/substrate' but @pezkuwi uses
|
|
# chain-specific paths (./pezkuwi, ./bizinikiwi). Patch the exports map in
|
|
# package.json to add ./substrate pointing to pezkuwi augmentation.
|
|
RUN node -e " \
|
|
const fs = require('fs'); \
|
|
const p = '/app/node_modules/@polkadot/api-augment/package.json'; \
|
|
const pkg = JSON.parse(fs.readFileSync(p, 'utf8')); \
|
|
pkg.exports['./substrate'] = { \
|
|
require: './cjs/pezkuwi/index.js', \
|
|
default: './pezkuwi/index.js' \
|
|
}; \
|
|
fs.writeFileSync(p, JSON.stringify(pkg, null, 2)); \
|
|
"
|
|
|
|
ENTRYPOINT ["/app/node_modules/.bin/subql-node"]
|