diff options
| -rw-r--r-- | README.md | 2 | ||||
| -rw-r--r-- | docker-compose.mainnet.yml | 11 | ||||
| -rw-r--r-- | docker-compose.override.yml | 11 | ||||
| -rw-r--r-- | docker-compose.prod.yml | 44 | ||||
| -rw-r--r-- | docker-compose.testnet.yml | 11 | ||||
| -rw-r--r-- | docker-compose.yml | 105 | ||||
| -rw-r--r-- | lib/webhooks.js | 4 | ||||
| -rw-r--r-- | routes/send.js | 11 | ||||
| -rw-r--r-- | routes/users.js | 32 |
9 files changed, 132 insertions, 99 deletions
@@ -18,7 +18,7 @@ cp .env.sample .env cp fx.sample fx docker network create net --gateway 172.18.0.1 --subnet 172.18.0.0/16 docker run -it -v $(pwd):/app --entrypoint pnpm asoltys/coinos-server i -docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d +docker-compose up -d docker exec -i mariadb mysql -u root -ppassword < db/schema.sql docker exec -it bitcoin bitcoin-cli createwallet coinos docker exec -it bitcoin bitcoin-cli rescanblockchain diff --git a/docker-compose.mainnet.yml b/docker-compose.mainnet.yml deleted file mode 100644 index db4ba9e8..00000000 --- a/docker-compose.mainnet.yml +++ /dev/null @@ -1,11 +0,0 @@ -version: '3.6' -services: - lm: - image: ghcr.io/vulpemventures/elements - container_name: lm - volumes: - - ./config/liquidmainnet:/home/elements/.elements - restart: unless-stopped - networks: - default: - ipv4_address: 172.18.0.41 diff --git a/docker-compose.override.yml b/docker-compose.override.yml deleted file mode 100644 index b7318355..00000000 --- a/docker-compose.override.yml +++ /dev/null @@ -1,11 +0,0 @@ -version: '3.6' -services: - ui: - container_name: ui - image: asoltys/coinos-ui - ports: - - 80:80 - volumes: - - ./config/nginx:/etc/nginx/templates - environment: - HOST: ${HOST} diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml deleted file mode 100644 index 97173c77..00000000 --- a/docker-compose.prod.yml +++ /dev/null @@ -1,44 +0,0 @@ -version: '3.6' -services: - ui: - container_name: ui - image: asoltys/coinos-ui:prod - volumes: - - ./config/nginx:/etc/nginx/templates - environment: - HOST: ${HOST} - network_mode: host - app: - container_name: app - image: asoltys/coinos-server - environment: - NODE_ENV: production - volumes: - - ./:/app - network_mode: host - la: - image: elementsproject/lightningd:latest - container_name: la - volumes: - - ./config/lightning:/root/.lightning - restart: unless-stopped - network_mode: host - lb: - image: elementsproject/lightningd:latest - container_name: lb - volumes: - - ./config/lightningb:/root/.lightning - restart: unless-stopped - network_mode: host - maria: - container_name: mariadb - image: mariadb:10.6.1 - restart: always - command: - - --bind-address=0.0.0.0 - - --port=3307 - environment: - MARIADB_ROOT_PASSWORD: ${ROOT_PASSWORD} - volumes: - - ./mysql:/var/lib/mysql - network_mode: host diff --git a/docker-compose.testnet.yml b/docker-compose.testnet.yml deleted file mode 100644 index b168d94d..00000000 --- a/docker-compose.testnet.yml +++ /dev/null @@ -1,11 +0,0 @@ -version: '3.6' -services: - lt: - image: ghcr.io/vulpemventures/elements - container_name: lt - volumes: - - ./config/liquidtestnet:/home/elements/.elements - restart: unless-stopped - networks: - default: - ipv4_address: 172.18.0.40 diff --git a/docker-compose.yml b/docker-compose.yml index 7fc36b92..1d3ad061 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,5 +1,20 @@ version: '3.6' services: + ui: + depends_on: + - app + container_name: ui + image: asoltys/coinos-ui:dev + ports: + - '8085:8085' + environment: + NODE_ENV: development + # NODE_OPTIONS: --openssl-legacy-provider + volumes: + - ../coinos-ui:/app + networks: + default: + ipv4_address: 172.18.0.27 app: depends_on: - maria @@ -55,6 +70,17 @@ services: networks: default: ipv4_address: 172.18.0.25 + clightning: + image: asoltys/lightning + container_name: cl + environment: + LIGHTNINGD_NETWORK: regtest + volumes: + - ./config/lightning:/root/.lightning + restart: unless-stopped + networks: + default: + ipv4_address: 172.18.0.31 maria: container_name: mariadb image: mariadb:10.6.1 @@ -68,6 +94,85 @@ services: networks: default: ipv4_address: 172.18.0.26 + electrsb: + image: ghcr.io/vulpemventures/electrs + container_name: electrsb + entrypoint: + - /build/electrs + command: + - -vvvv + - --network + - regtest + - --daemon-dir + - /config + - --daemon-rpc-addr + - bitcoin:18443 + - --cookie + - admin1:123 + - --http-addr + - 0.0.0.0:3095 + - --electrum-rpc-addr + - 0.0.0.0:60400 + - --cors + - "*" + volumes: + - ./config/bitcoin/:/config + restart: unless-stopped + ports: + - 3095:3095 + networks: + default: + ipv4_address: 172.18.0.28 + electrs-liquid: + image: ghcr.io/vulpemventures/electrs-liquid + container_name: electrs + depends_on: + - liquid + entrypoint: + - /build/electrs + command: + - --jsonrpc-import + - -vvvv + - --parent-network + - regtest + - --network + - liquidregtest + - --daemon-dir + - /config + - --daemon-rpc-addr + - liquid:7040 + - --cookie + - admin1:123 + - --http-addr + - 0.0.0.0:3002 + - --electrum-rpc-addr + - 0.0.0.0:60401 + - --cors + - "*" + ports: + - ${LIQUID_ELECTRS_RPC_PORT}:60401 + - ${LIQUID_ELECTRS_PORT}:3002 + volumes: + - ./config/liquid/:/config + restart: unless-stopped + networks: + default: + ipv4_address: 172.18.0.29 + esplora-liquid: + image: vulpemventures/esplora:latest + container_name: esplora-liquid + depends_on: + - electrs-liquid + environment: + API_URL: ${LIQUID_ELECTRS_URL} + NATIVE_ASSET_ID: 5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225 + IS_ELEMENTS: 1 + ports: + - ${LIQUID_ESPLORA_PORT}:5000 + restart: unless-stopped + networks: + default: + ipv4_address: 172.18.0.30 networks: default: external: diff --git a/lib/webhooks.js b/lib/webhooks.js index 2dbdf7c1..3d133cf8 100644 --- a/lib/webhooks.js +++ b/lib/webhooks.js @@ -25,6 +25,8 @@ callWebhook = (invoice, payment) => { confirmed, text, webhook - }).res().catch(console.log); + }) + .res() + .catch(console.log); } }; diff --git a/routes/send.js b/routes/send.js index 0c93d0a2..7c6728a1 100644 --- a/routes/send.js +++ b/routes/send.js @@ -31,8 +31,7 @@ module.exports = ah(async (req, res, next) => { lock: transaction.LOCK.UPDATE, transaction }); - } - else { + } else { account = await db.Account.findOne({ where: { user_id: user.id, @@ -61,7 +60,9 @@ module.exports = ah(async (req, res, next) => { rate: app.get("rates")[user.currency], currency: user.currency, confirmed: true, - hash: `#${uuidv4().substr(0, 6)} ${(username ? `Payment to ${username}` : "Internal Transfer")}`, + hash: `#${uuidv4().substr(0, 6)} ${ + username ? `Payment to ${username}` : "Internal Transfer" + }`, network: "COINOS" }; @@ -99,7 +100,7 @@ module.exports = ah(async (req, res, next) => { }; if (address) params.where.address = address; else if (payreq) params.where.text = payreq; - let invoice = (address || payreq) && await db.Invoice.findOne(params); + let invoice = (address || payreq) && (await db.Invoice.findOne(params)); let a2; let acc = { @@ -164,7 +165,7 @@ module.exports = ah(async (req, res, next) => { rate: app.get("rates")[recipient.currency] * spread, currency: recipient.currency, confirmed: true, - hash: `#${uuidv4().substr(0,6)} Payment from ${user.username}`, + hash: `#${uuidv4().substr(0, 6)} Payment from ${user.username}`, memo, network: "COINOS", received: true diff --git a/routes/users.js b/routes/users.js index bcce9c14..56fdf31b 100644 --- a/routes/users.js +++ b/routes/users.js @@ -32,21 +32,23 @@ app.get( auth, ah(async (req, res) => { let user = req.user.get({ plain: true }); - let payments = await req.user.getPayments({ - where: { - account_id: user.account_id - }, - order: [["id", "DESC"]], - limit: 12, - include: [{ - model: db.Account, - as: "account" - }, - { - model: db.Payment, - as: "fee_payment" - }] - }); + let payments = await req.user.getPayments({ + where: { + account_id: user.account_id + }, + order: [["id", "DESC"]], + limit: 12, + include: [ + { + model: db.Account, + as: "account" + }, + { + model: db.Payment, + as: "fee_payment" + } + ] + }); user.accounts = await req.user.getAccounts(); user.payments = payments; res.send(user); |
