From 483cb794bb81b6d8d6dff41aeb201a1251ee6834 Mon Sep 17 00:00:00 2001 From: Chia Automation Date: Tue, 20 Feb 2024 20:01:45 +0000 Subject: [PATCH 01/11] chore: Updating npm dev dependencies --- package-lock.json | 60 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 31 insertions(+), 31 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6f00cdf4..fffe53cb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "core-registry-cadt", - "version": "1.7.5", + "version": "1.7.6", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "core-registry-cadt", - "version": "1.7.5", + "version": "1.7.6", "dependencies": { "@babel/eslint-parser": "^7.23.10", "@chia-carbon/core-registry-config": "^1.0.4", @@ -53,7 +53,7 @@ "chai-http": "^4.4.0", "eslint": "^8.56.0", "eslint-plugin-es": "^4.1.0", - "eslint-plugin-mocha": "^10.2.0", + "eslint-plugin-mocha": "^10.3.0", "husky": "^9.0.11", "mocha": "^10.3.0", "semver": "^7.6.0", @@ -3455,9 +3455,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001587", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001587.tgz", - "integrity": "sha512-HMFNotUmLXn71BQxg8cijvqxnIAofforZOwGsxyXJ0qugTdspUF4sPSJ2vhgprHCB996tIDzEq1ubumPDV8ULA==", + "version": "1.0.30001588", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001588.tgz", + "integrity": "sha512-+hVY9jE44uKLkH0SrUTqxjxqNTOWHsbnQDIKjwkZ3lNTzUUVdBLBGXtj/q5Mp5u98r3droaZAewQuEDzjQdZlQ==", "funding": [ { "type": "opencollective", @@ -4795,9 +4795,9 @@ } }, "node_modules/croner": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/croner/-/croner-7.0.5.tgz", - "integrity": "sha512-15HLCD7iXnMe5km54yc4LN5BH+Cg9uCQvbkJ0acHxFffE29w3Uvgb9s/l310UCVUgMwGSBNw9BAHsEb5uMgj1g==", + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/croner/-/croner-7.0.7.tgz", + "integrity": "sha512-05wALDHKjt9zG1JbpziNnWPCwwv9fUKbNf6q0dWaDMJ/eDxW0394Q2R1VAzKvDgoEZBT9FhWSHHFIcgwLgXjcQ==", "engines": { "node": ">=6.0" } @@ -5070,9 +5070,9 @@ } }, "node_modules/dotenv": { - "version": "16.4.4", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.4.tgz", - "integrity": "sha512-XvPXc8XAQThSjAbY6cQ/9PcBXmFoWuw1sQ3b8HqUCR6ziGXjkTi//kB9SWa2UwqlgdAIuRqAa/9hVljzPehbYg==", + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", "engines": { "node": ">=12" }, @@ -5165,9 +5165,9 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.671", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.671.tgz", - "integrity": "sha512-UUlE+/rWbydmp+FW8xlnnTA5WNA0ZZd2XL8CuMS72rh+k4y1f8+z6yk3UQhEwqHQWj6IBdL78DwWOdGMvYfQyA==" + "version": "1.4.677", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.677.tgz", + "integrity": "sha512-erDa3CaDzwJOpyvfKhOiJjBVNnMM0qxHq47RheVVwsSQrgBA9ZSGV9kdaOfZDPXcHzhG7lBxhj6A7KvfLJBd6Q==" }, "node_modules/emoji-regex": { "version": "8.0.0", @@ -5404,9 +5404,9 @@ } }, "node_modules/eslint-plugin-mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-10.2.0.tgz", - "integrity": "sha512-ZhdxzSZnd1P9LqDPF0DBcFLpRIGdh1zkF2JHnQklKQOvrQtT73kdP5K9V2mzvbLR+cCAO9OI48NXK/Ax9/ciCQ==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-10.3.0.tgz", + "integrity": "sha512-IWzbg2K6B1Q7h37Ih4zMyW+nhmw1JvUlHlbCUUUu6PfOOAUGCB0gxmvv7/U+TQQ6e8yHUv+q7KMdIIum4bx+PA==", "dev": true, "dependencies": { "eslint-utils": "^3.0.0", @@ -6036,9 +6036,9 @@ } }, "node_modules/flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.0.tgz", + "integrity": "sha512-noqGuLw158+DuD9UPRKHpJ2hGxpFyDlYYrfM0mWt4XhT4n0lwzTLh70Tkdyy4kyTmyTT9Bv7bWAJqw7cgkEXDg==" }, "node_modules/fn.name": { "version": "1.1.0", @@ -6835,9 +6835,9 @@ } }, "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "engines": { "node": ">= 0.4" }, @@ -8429,9 +8429,9 @@ "dev": true }, "node_modules/node-abi": { - "version": "3.54.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.54.0.tgz", - "integrity": "sha512-p7eGEiQil0YUV3ItH4/tBb781L5impVmmx2E9FRKF7d18XXzp4PGT2tdYMFY6wQqgxD0IwNZOiSJ0/K0fSi/OA==", + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.55.0.tgz", + "integrity": "sha512-uPEjtyh2tFEvWYt4Jw7McOD5FPcHkcxm/tHZc5PWaDB3JYq0rGFUbgaAK+CT5pYpQddBfsZVWI08OwoRfdfbcQ==", "dependencies": { "semver": "^7.3.5" }, @@ -9669,9 +9669,9 @@ "integrity": "sha512-hr3Wtp/GZIc/6DAGPDcV4/9WoZhjrkXsi5B/07QgX8tsdc6ilr7BFM6PM6rbdAX1kFSDYeZGLipIZZKyQP0O5Q==" }, "node_modules/sequelize": { - "version": "6.37.0", - "resolved": "https://registry.npmjs.org/sequelize/-/sequelize-6.37.0.tgz", - "integrity": "sha512-MS6j6aXqWzB3fe9FhmfpQMgVC16bBdYroJCqIqR0l9M2ko8pZdKoi/0PiNWgMyFQDXUHxXyAOG3K07CbnOhteQ==", + "version": "6.37.1", + "resolved": "https://registry.npmjs.org/sequelize/-/sequelize-6.37.1.tgz", + "integrity": "sha512-vIKKzQ9dGp2aBOxQRD1FmUYViuQiKXSJ8yah8TsaBx4U3BokJt+Y2A0qz2C4pj08uX59qpWxRqSLEfRmVOEgQw==", "funding": [ { "type": "opencollective", diff --git a/package.json b/package.json index 027ab3ee..c895c18d 100644 --- a/package.json +++ b/package.json @@ -74,7 +74,7 @@ "chai-http": "^4.4.0", "eslint": "^8.56.0", "eslint-plugin-es": "^4.1.0", - "eslint-plugin-mocha": "^10.2.0", + "eslint-plugin-mocha": "^10.3.0", "husky": "^9.0.11", "mocha": "^10.3.0", "semver": "^7.6.0", From 1ff9b2a90231f95db63bad6bb7036ee56bcb2b9d Mon Sep 17 00:00:00 2001 From: Michael Taylor Date: Tue, 27 Feb 2024 16:24:49 -0500 Subject: [PATCH 02/11] test: debug mirror url generation --- src/utils/datalayer-utils.js | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/utils/datalayer-utils.js b/src/utils/datalayer-utils.js index 194452d4..9e14adcd 100644 --- a/src/utils/datalayer-utils.js +++ b/src/utils/datalayer-utils.js @@ -114,14 +114,19 @@ export const optimizeAndSortKvDiff = (kvDiff) => { export const getMirrorUrl = async () => { try { - const { DATALAYER_FILE_SERVER_URL } = CONFIG().CHIA; - console.log(DATALAYER_FILE_SERVER_URL); + const DATALAYER_FILE_SERVER_URL = CONFIG().CHIA.DATALAYER_FILE_SERVER_URL; + console.log('Config Mirror Url', DATALAYER_FILE_SERVER_URL); + const chiaConfig = fullNode.getChiaConfig(); - return ( - DATALAYER_FILE_SERVER_URL || - `http://${await publicIpv4()}:${chiaConfig.data_layer.host_port}` - ); - } catch { + + const finalUrl = DATALAYER_FILE_SERVER_URL + ? DATALAYER_FILE_SERVER_URL + : `http://${await publicIpv4()}:${chiaConfig.data_layer.host_port}`; + + console.log('Resolved Mirror Url', finalUrl); + return finalUrl; + } catch (error) { + console.log('Error getting mirror url', error); return null; } }; From ece1213258187e7c811563aed18c4f7b7c64d34d Mon Sep 17 00:00:00 2001 From: Zachary Brown Date: Wed, 28 Feb 2024 22:33:13 -0800 Subject: [PATCH 03/11] fix: mirror logic --- package-lock.json | 187 +++++++++++++++++----------------- package.json | 2 +- src/datalayer/persistance.js | 15 ++- src/datalayer/writeService.js | 3 + src/tasks/index.js | 2 + src/tasks/mirror-check.js | 5 +- src/utils/datalayer-utils.js | 7 +- 7 files changed, 113 insertions(+), 108 deletions(-) diff --git a/package-lock.json b/package-lock.json index fffe53cb..e6aaca14 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "core-registry-cadt", - "version": "1.7.6", + "version": "1.7.6b1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "core-registry-cadt", - "version": "1.7.6", + "version": "1.7.6b1", "dependencies": { "@babel/eslint-parser": "^7.23.10", "@chia-carbon/core-registry-config": "^1.0.4", @@ -136,20 +136,20 @@ } }, "node_modules/@babel/core": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.9.tgz", - "integrity": "sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.0.tgz", + "integrity": "sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==", "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.23.5", "@babel/generator": "^7.23.6", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.9", - "@babel/parser": "^7.23.9", - "@babel/template": "^7.23.9", - "@babel/traverse": "^7.23.9", - "@babel/types": "^7.23.9", + "@babel/helpers": "^7.24.0", + "@babel/parser": "^7.24.0", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.0", + "@babel/types": "^7.24.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -259,9 +259,9 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.23.10", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.10.tgz", - "integrity": "sha512-2XpP2XhkXzgxecPNEEK8Vz8Asj9aRxt08oKOqtiZoqV2UGZ5T+EkyP9sXQ9nwMxBIG34a7jmasVqoMop7VdPUw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.0.tgz", + "integrity": "sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", @@ -417,9 +417,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", "dev": true, "engines": { "node": ">=6.9.0" @@ -532,13 +532,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.9.tgz", - "integrity": "sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.0.tgz", + "integrity": "sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==", "dependencies": { - "@babel/template": "^7.23.9", - "@babel/traverse": "^7.23.9", - "@babel/types": "^7.23.9" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -558,9 +558,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.9.tgz", - "integrity": "sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz", + "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -1334,14 +1334,14 @@ } }, "node_modules/@babel/plugin-transform-object-rest-spread": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.4.tgz", - "integrity": "sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.0.tgz", + "integrity": "sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.23.3", - "@babel/helper-compilation-targets": "^7.22.15", - "@babel/helper-plugin-utils": "^7.22.5", + "@babel/compat-data": "^7.23.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.0", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", "@babel/plugin-transform-parameters": "^7.23.3" }, @@ -1636,14 +1636,14 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.9.tgz", - "integrity": "sha512-3kBGTNBBk9DQiPoXYS0g0BYlwTQYUTifqgKTjxUwEUkduRT2QOa0FPGBJ+NROQhGyYO5BuTJwGvBnqKDykac6A==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.24.0.tgz", + "integrity": "sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA==", "dev": true, "dependencies": { "@babel/compat-data": "^7.23.5", "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-plugin-utils": "^7.24.0", "@babel/helper-validator-option": "^7.23.5", "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.23.3", "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.23.3", @@ -1696,7 +1696,7 @@ "@babel/plugin-transform-new-target": "^7.23.3", "@babel/plugin-transform-nullish-coalescing-operator": "^7.23.4", "@babel/plugin-transform-numeric-separator": "^7.23.4", - "@babel/plugin-transform-object-rest-spread": "^7.23.4", + "@babel/plugin-transform-object-rest-spread": "^7.24.0", "@babel/plugin-transform-object-super": "^7.23.3", "@babel/plugin-transform-optional-catch-binding": "^7.23.4", "@babel/plugin-transform-optional-chaining": "^7.23.4", @@ -1778,9 +1778,9 @@ "dev": true }, "node_modules/@babel/runtime": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz", - "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.0.tgz", + "integrity": "sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==", "dev": true, "dependencies": { "regenerator-runtime": "^0.14.0" @@ -1796,22 +1796,22 @@ "dev": true }, "node_modules/@babel/template": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", - "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dependencies": { "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9" + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.9.tgz", - "integrity": "sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz", + "integrity": "sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==", "dependencies": { "@babel/code-frame": "^7.23.5", "@babel/generator": "^7.23.6", @@ -1819,8 +1819,8 @@ "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -1829,9 +1829,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.9.tgz", - "integrity": "sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", "dependencies": { "@babel/helper-string-parser": "^7.23.4", "@babel/helper-validator-identifier": "^7.22.20", @@ -2422,9 +2422,9 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, "node_modules/@eslint/js": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", - "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } @@ -2488,9 +2488,9 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.4.tgz", + "integrity": "sha512-Oud2QPM5dHviZNn4y/WhhYKSXksv+1xLEIsNrAbGcFzUN3ubqWRFT5gwPchNc5NuzILOU4tPBDTZ4VwhL8Y7cw==", "dependencies": { "@jridgewell/set-array": "^1.0.1", "@jridgewell/sourcemap-codec": "^1.4.10", @@ -2522,9 +2522,9 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz", - "integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==", + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.23.tgz", + "integrity": "sha512-9/4foRoUKp8s96tSkh8DlAAc5A0Ty8vLXld+l9gjKKY6ckwI8G15f0hskGmuLZu78ZlGa1vtsfOa+lnB4vG6Jg==", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -2690,9 +2690,9 @@ } }, "node_modules/@types/chai": { - "version": "4.3.11", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.11.tgz", - "integrity": "sha512-qQR1dr2rGIHYlJulmr8Ioq3De0Le9E4MJ5AiaeAETJJpndT1uUNHsGFK3L/UIu+rbkQSdj8J/w2bCsBZc/Y5fQ==", + "version": "4.3.12", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.12.tgz", + "integrity": "sha512-zNKDHG/1yxm8Il6uCCVsm+dRdEsJlFoDu73X17y09bId6UwoYww+vFBsAcRzl8knM1sab3Dp1VRikFQwDOtDDw==", "dev": true }, "node_modules/@types/cookie": { @@ -2734,9 +2734,9 @@ "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { - "version": "20.11.19", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.19.tgz", - "integrity": "sha512-7xMnVEcZFu0DikYjWOlRq7NTPETrm7teqUT2WkQjrTIkEgUyyGdWsj/Zg8bEJt5TNklzbPD1X3fqfsHw3SpapQ==", + "version": "20.11.22", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.22.tgz", + "integrity": "sha512-/G+IxWxma6V3E+pqK1tSl2Fo1kl41pK1yeCyDsgkF9WlVAme4j5ISYM2zR11bgLFJGLN5sVK40T4RJNuiZbEjA==", "dependencies": { "undici-types": "~5.26.4" } @@ -3455,9 +3455,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001588", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001588.tgz", - "integrity": "sha512-+hVY9jE44uKLkH0SrUTqxjxqNTOWHsbnQDIKjwkZ3lNTzUUVdBLBGXtj/q5Mp5u98r3droaZAewQuEDzjQdZlQ==", + "version": "1.0.30001591", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001591.tgz", + "integrity": "sha512-PCzRMei/vXjJyL5mJtzNiUCKP59dm8Apqc3PH8gJkMnMXZGox93RbE76jHsmLwmIo6/3nsYIpJtx0O7u5PqFuQ==", "funding": [ { "type": "opencollective", @@ -5165,9 +5165,9 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.677", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.677.tgz", - "integrity": "sha512-erDa3CaDzwJOpyvfKhOiJjBVNnMM0qxHq47RheVVwsSQrgBA9ZSGV9kdaOfZDPXcHzhG7lBxhj6A7KvfLJBd6Q==" + "version": "1.4.686", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.686.tgz", + "integrity": "sha512-3avY1B+vUzNxEgkBDpKOP8WarvUAEwpRaiCL0He5OKWEFxzaOFiq4WoZEZe7qh0ReS7DiWoHMnYoQCKxNZNzSg==" }, "node_modules/emoji-regex": { "version": "8.0.0", @@ -5331,15 +5331,15 @@ } }, "node_modules/eslint": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", - "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.56.0", - "@humanwhocodes/config-array": "^0.11.13", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "@ungap/structured-clone": "^1.2.0", @@ -6036,9 +6036,9 @@ } }, "node_modules/flatted": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.0.tgz", - "integrity": "sha512-noqGuLw158+DuD9UPRKHpJ2hGxpFyDlYYrfM0mWt4XhT4n0lwzTLh70Tkdyy4kyTmyTT9Bv7bWAJqw7cgkEXDg==" + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==" }, "node_modules/fn.name": { "version": "1.1.0", @@ -7339,9 +7339,9 @@ } }, "node_modules/joi": { - "version": "17.12.1", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.12.1.tgz", - "integrity": "sha512-vtxmq+Lsc5SlfqotnfVjlViWfOL9nt/avKNbKYizwf6gsCfq9NYY/ceYRMFD8XDdrjJ9abJyScWmhmIiy+XRtQ==", + "version": "17.12.2", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.12.2.tgz", + "integrity": "sha512-RonXAIzCiHLc8ss3Ibuz45u28GOsWE1UpfDXLbN/9NKbL4tCJf8TWYVKsoYuuh+sAUt7fsSNpA+r2+TBA6Wjmw==", "dependencies": { "@hapi/hoek": "^9.3.0", "@hapi/topo": "^5.1.0", @@ -8429,9 +8429,9 @@ "dev": true }, "node_modules/node-abi": { - "version": "3.55.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.55.0.tgz", - "integrity": "sha512-uPEjtyh2tFEvWYt4Jw7McOD5FPcHkcxm/tHZc5PWaDB3JYq0rGFUbgaAK+CT5pYpQddBfsZVWI08OwoRfdfbcQ==", + "version": "3.56.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.56.0.tgz", + "integrity": "sha512-fZjdhDOeRcaS+rcpve7XuwHBmktS1nS1gzgghwKUQQ8nTy2FdSDr6ZT8k6YhvlJeHmmQMYiT/IH9hfco5zeW2Q==", "dependencies": { "semver": "^7.3.5" }, @@ -9982,10 +9982,11 @@ } }, "node_modules/socket.io-adapter": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz", - "integrity": "sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==", + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.4.tgz", + "integrity": "sha512-wDNHGXGewWAjQPt3pyeYBtpWSq9cLE5UW1ZUPL/2eGK9jtse/FpXib7epSTsz0Q0m+6sg6Y4KtcFTlah1bdOVg==", "dependencies": { + "debug": "~4.3.4", "ws": "~8.11.0" } }, @@ -10017,9 +10018,9 @@ } }, "node_modules/socks": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.3.tgz", - "integrity": "sha512-vfuYK48HXCTFD03G/1/zkIls3Ebr2YNa4qU9gHDZdblHLiqhJrJGkY3+0Nx0JpN9qBhJbVObc1CNciT1bIZJxw==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.1.tgz", + "integrity": "sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ==", "optional": true, "dependencies": { "ip-address": "^9.0.5", diff --git a/package.json b/package.json index c895c18d..2b6e012b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "core-registry-cadt", - "version": "1.7.6", + "version": "1.7.6b1", "_comment": "DONT CHANGE MAJOR UNLESS DATAMODEL CHANGES: The major version corresponds to the datamodel version your using, so 2.0.0 means it'll use datamodel v2", "private": true, "bin": "build/server.js", diff --git a/src/datalayer/persistance.js b/src/datalayer/persistance.js index e823b66a..1e3bf271 100644 --- a/src/datalayer/persistance.js +++ b/src/datalayer/persistance.js @@ -3,12 +3,11 @@ import fs from 'fs'; import path from 'path'; import superagent from 'superagent'; import { CONFIG } from '../user-config'; -import fullNode from './fullNode'; -import { publicIpv4 } from '../utils/ip-tools'; import wallet from './wallet'; import { Organization } from '../models'; import { logger } from '../logger.js'; import { getChiaRoot } from 'chia-root-resolver'; +import { getMirrorUrl } from './utils/datalayer-utils'; process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = 0; @@ -91,6 +90,9 @@ const getValue = async (storeId, storeKey) => { const addMirror = async (storeId, url, forceAddMirror = false) => { await wallet.waitForAllTransactionsToConfirm(); const homeOrg = await Organization.getHomeOrg(); + logger.info( + `Checking mirrors for storeID is ${storeId} with mirror URL ${url}`, + ); if (!homeOrg && !forceAddMirror) { logger.info(`No home org detected so skipping mirror for ${storeId}`); @@ -105,7 +107,7 @@ const addMirror = async (storeId, url, forceAddMirror = false) => { ); if (mirror) { - logger.info(`Mirror already available for ${storeId}`); + logger.info(`Mirror already available for ${storeId} at ${url}`); return true; } @@ -564,12 +566,9 @@ const subscribeToStoreOnDataLayer = async (storeId) => { if (Object.keys(data).includes('success') && data.success) { logger.info(`Successfully Subscribed: ${storeId}`); - const chiaConfig = fullNode.getChiaConfig(); + const mirrorUrl = await getMirrorUrl(); - await addMirror( - storeId, - `http://${await publicIpv4()}:${chiaConfig.data_layer.host_port}`, - ); + await addMirror(storeId, mirrorUrl); return data; } diff --git a/src/datalayer/writeService.js b/src/datalayer/writeService.js index b25df62e..ce1b2439 100644 --- a/src/datalayer/writeService.js +++ b/src/datalayer/writeService.js @@ -33,6 +33,9 @@ const createDataLayerStore = async () => { if (shouldMirror) { const mirrorUrl = await getMirrorUrl(); if (mirrorUrl) { + logger.info( + `Now attempting to create new mirror for ${storeId} at ${mirrorUrl}`, + ); await dataLayer.addMirror(storeId, mirrorUrl, true); } else { logger.error('Mirror URL not available, skipping mirror announcement.'); diff --git a/src/tasks/index.js b/src/tasks/index.js index 4ce68209..2c9992a9 100644 --- a/src/tasks/index.js +++ b/src/tasks/index.js @@ -11,6 +11,8 @@ const scheduler = new ToadScheduler(); const jobRegistry = {}; +console.log('ZGB: In the scheduler logic now'); //zgb + const addJobToScheduler = (job) => { jobRegistry[job.id] = job; scheduler.addSimpleIntervalJob(job); diff --git a/src/tasks/mirror-check.js b/src/tasks/mirror-check.js index 643c2515..ef7fda36 100644 --- a/src/tasks/mirror-check.js +++ b/src/tasks/mirror-check.js @@ -44,10 +44,9 @@ const job = new SimpleIntervalJob( ); const runMirrorCheck = async () => { - const homeOrg = Organization.getHomeOrg(); - + const homeOrg = await Organization.getHomeOrg(); if (homeOrg) { - const organizations = Organization.getOrgsMap(); + const organizations = await Organization.getOrgsMap(); const orgs = Object.keys(organizations); for (const org of orgs) { const orgData = organizations[org]; diff --git a/src/utils/datalayer-utils.js b/src/utils/datalayer-utils.js index 9e14adcd..02f89468 100644 --- a/src/utils/datalayer-utils.js +++ b/src/utils/datalayer-utils.js @@ -1,6 +1,7 @@ import { CONFIG } from '../user-config'; import fullNode from '../datalayer/fullNode'; import { publicIpv4 } from './ip-tools'; +import { logger } from '../logger.js'; export const encodeHex = (str) => { return Buffer.from(str).toString('hex'); @@ -115,7 +116,7 @@ export const optimizeAndSortKvDiff = (kvDiff) => { export const getMirrorUrl = async () => { try { const DATALAYER_FILE_SERVER_URL = CONFIG().CHIA.DATALAYER_FILE_SERVER_URL; - console.log('Config Mirror Url', DATALAYER_FILE_SERVER_URL); + logger.debug('Config Mirror Url', DATALAYER_FILE_SERVER_URL); const chiaConfig = fullNode.getChiaConfig(); @@ -123,10 +124,10 @@ export const getMirrorUrl = async () => { ? DATALAYER_FILE_SERVER_URL : `http://${await publicIpv4()}:${chiaConfig.data_layer.host_port}`; - console.log('Resolved Mirror Url', finalUrl); + logger.debug('Resolved Mirror Url', finalUrl); return finalUrl; } catch (error) { - console.log('Error getting mirror url', error); + logger.error('Error getting mirror url', error); return null; } }; From b1d1a1473c5f166f26e16814a5d2599311283fd0 Mon Sep 17 00:00:00 2001 From: Zachary Brown Date: Wed, 28 Feb 2024 22:34:41 -0800 Subject: [PATCH 04/11] chore: remove debugging version number --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 2b6e012b..c895c18d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "core-registry-cadt", - "version": "1.7.6b1", + "version": "1.7.6", "_comment": "DONT CHANGE MAJOR UNLESS DATAMODEL CHANGES: The major version corresponds to the datamodel version your using, so 2.0.0 means it'll use datamodel v2", "private": true, "bin": "build/server.js", From a26ebf8e3313ac84bfd307a4f8fe8245a38cbcb4 Mon Sep 17 00:00:00 2001 From: Zachary Brown Date: Wed, 28 Feb 2024 22:36:33 -0800 Subject: [PATCH 05/11] chore: remove debugging comments --- src/tasks/index.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/tasks/index.js b/src/tasks/index.js index 2c9992a9..4ce68209 100644 --- a/src/tasks/index.js +++ b/src/tasks/index.js @@ -11,8 +11,6 @@ const scheduler = new ToadScheduler(); const jobRegistry = {}; -console.log('ZGB: In the scheduler logic now'); //zgb - const addJobToScheduler = (job) => { jobRegistry[job.id] = job; scheduler.addSimpleIntervalJob(job); From 6f1181250ad1148d9cc6ed9cf700bd0f08bdfc14 Mon Sep 17 00:00:00 2001 From: Zachary Brown Date: Wed, 28 Feb 2024 22:46:46 -0800 Subject: [PATCH 06/11] fix: import path --- src/datalayer/persistance.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/datalayer/persistance.js b/src/datalayer/persistance.js index 1e3bf271..9ecbca28 100644 --- a/src/datalayer/persistance.js +++ b/src/datalayer/persistance.js @@ -7,7 +7,7 @@ import wallet from './wallet'; import { Organization } from '../models'; import { logger } from '../logger.js'; import { getChiaRoot } from 'chia-root-resolver'; -import { getMirrorUrl } from './utils/datalayer-utils'; +import { getMirrorUrl } from '../utils/datalayer-utils'; process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = 0; From 5faf33fd409b8fe126467974eb4bbea65088cd17 Mon Sep 17 00:00:00 2001 From: Zachary Brown Date: Thu, 29 Feb 2024 11:59:51 -0800 Subject: [PATCH 07/11] fix: improved logging messages --- package-lock.json | 4 ++-- src/utils/datalayer-utils.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index e6aaca14..bd5ae11f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "core-registry-cadt", - "version": "1.7.6b1", + "version": "1.7.6", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "core-registry-cadt", - "version": "1.7.6b1", + "version": "1.7.6", "dependencies": { "@babel/eslint-parser": "^7.23.10", "@chia-carbon/core-registry-config": "^1.0.4", diff --git a/src/utils/datalayer-utils.js b/src/utils/datalayer-utils.js index 02f89468..cbc57e2c 100644 --- a/src/utils/datalayer-utils.js +++ b/src/utils/datalayer-utils.js @@ -116,7 +116,7 @@ export const optimizeAndSortKvDiff = (kvDiff) => { export const getMirrorUrl = async () => { try { const DATALAYER_FILE_SERVER_URL = CONFIG().CHIA.DATALAYER_FILE_SERVER_URL; - logger.debug('Config Mirror Url', DATALAYER_FILE_SERVER_URL); + console.debug('Config Mirror Url', DATALAYER_FILE_SERVER_URL); const chiaConfig = fullNode.getChiaConfig(); @@ -124,7 +124,7 @@ export const getMirrorUrl = async () => { ? DATALAYER_FILE_SERVER_URL : `http://${await publicIpv4()}:${chiaConfig.data_layer.host_port}`; - logger.debug('Resolved Mirror Url', finalUrl); + console.debug('Resolved Mirror Url', finalUrl); return finalUrl; } catch (error) { logger.error('Error getting mirror url', error); From 0e98d3454fa8a3f101b6fa034e35da770eee177a Mon Sep 17 00:00:00 2001 From: Zachary Brown Date: Thu, 29 Feb 2024 14:13:19 -0800 Subject: [PATCH 08/11] fix: do not fall back to IP and port if DATALAYER_FILE_SERVER_URL is not set --- src/datalayer/persistance.js | 7 +++++++ src/tasks/mirror-check.js | 2 +- src/utils/datalayer-utils.js | 15 +++------------ 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/src/datalayer/persistance.js b/src/datalayer/persistance.js index 9ecbca28..0a6a82ca 100644 --- a/src/datalayer/persistance.js +++ b/src/datalayer/persistance.js @@ -94,6 +94,13 @@ const addMirror = async (storeId, url, forceAddMirror = false) => { `Checking mirrors for storeID is ${storeId} with mirror URL ${url}`, ); + if (!url) { + logger.info( + `No DATALAYER_FILE_SERVER_URL specified so skipping mirror for ${storeId}`, + ); + return false; + } + if (!homeOrg && !forceAddMirror) { logger.info(`No home org detected so skipping mirror for ${storeId}`); return false; diff --git a/src/tasks/mirror-check.js b/src/tasks/mirror-check.js index ef7fda36..ae584ef8 100644 --- a/src/tasks/mirror-check.js +++ b/src/tasks/mirror-check.js @@ -58,7 +58,7 @@ const runMirrorCheck = async () => { await Organization.addMirror(orgData.registryId, mirrorUrl); } else { logger.error( - 'Mirror URL is not available, skipping mirror announcement', + 'DATALAYER_FILE_SERVER_URL not set, skipping mirror announcement', ); } } diff --git a/src/utils/datalayer-utils.js b/src/utils/datalayer-utils.js index cbc57e2c..844d8138 100644 --- a/src/utils/datalayer-utils.js +++ b/src/utils/datalayer-utils.js @@ -1,6 +1,4 @@ import { CONFIG } from '../user-config'; -import fullNode from '../datalayer/fullNode'; -import { publicIpv4 } from './ip-tools'; import { logger } from '../logger.js'; export const encodeHex = (str) => { @@ -115,19 +113,12 @@ export const optimizeAndSortKvDiff = (kvDiff) => { export const getMirrorUrl = async () => { try { - const DATALAYER_FILE_SERVER_URL = CONFIG().CHIA.DATALAYER_FILE_SERVER_URL; - console.debug('Config Mirror Url', DATALAYER_FILE_SERVER_URL); + const finalUrl = CONFIG().CHIA.DATALAYER_FILE_SERVER_URL; - const chiaConfig = fullNode.getChiaConfig(); - - const finalUrl = DATALAYER_FILE_SERVER_URL - ? DATALAYER_FILE_SERVER_URL - : `http://${await publicIpv4()}:${chiaConfig.data_layer.host_port}`; - - console.debug('Resolved Mirror Url', finalUrl); + logger.debug(`Resolved Mirror Url: ${finalUrl}`); return finalUrl; } catch (error) { - logger.error('Error getting mirror url', error); + logger.error('Error getting mirror url: ${error}'); return null; } }; From 46fc9b0dba9690035bbd2fc39f39e73bdd40e034 Mon Sep 17 00:00:00 2001 From: Zachary Brown Date: Fri, 8 Mar 2024 11:40:03 -0800 Subject: [PATCH 09/11] fix: create mirrors without a homeorg --- src/datalayer/persistance.js | 2 +- src/datalayer/writeService.js | 4 +-- .../organizations/organizations.model.js | 4 +-- src/tasks/mirror-check.js | 30 ++++++++----------- src/utils/datalayer-utils.js | 1 - 5 files changed, 18 insertions(+), 23 deletions(-) diff --git a/src/datalayer/persistance.js b/src/datalayer/persistance.js index 0a6a82ca..08b5b250 100644 --- a/src/datalayer/persistance.js +++ b/src/datalayer/persistance.js @@ -575,7 +575,7 @@ const subscribeToStoreOnDataLayer = async (storeId) => { const mirrorUrl = await getMirrorUrl(); - await addMirror(storeId, mirrorUrl); + await addMirror(storeId, mirrorUrl, true); return data; } diff --git a/src/datalayer/writeService.js b/src/datalayer/writeService.js index ce1b2439..8f3fc1f0 100644 --- a/src/datalayer/writeService.js +++ b/src/datalayer/writeService.js @@ -46,8 +46,8 @@ const createDataLayerStore = async () => { return storeId; }; -const addMirror = async (storeId, url) => { - return dataLayer.addMirror(storeId, url); +const addMirror = async (storeId, url, force = false) => { + return dataLayer.addMirror(storeId, url, force); }; const waitForStoreToBeConfirmed = async (storeId, retry = 0) => { diff --git a/src/models/organizations/organizations.model.js b/src/models/organizations/organizations.model.js index cf4069b4..b25c9e13 100644 --- a/src/models/organizations/organizations.model.js +++ b/src/models/organizations/organizations.model.js @@ -229,8 +229,8 @@ class Organization extends Model { return registryVersionId; } - static async addMirror(storeId, url) { - await datalayer.addMirror(storeId, url); + static async addMirror(storeId, url, force = false) { + await datalayer.addMirror(storeId, url, force); } static async importHomeOrg(orgUid) { diff --git a/src/tasks/mirror-check.js b/src/tasks/mirror-check.js index ae584ef8..37ad316d 100644 --- a/src/tasks/mirror-check.js +++ b/src/tasks/mirror-check.js @@ -44,23 +44,19 @@ const job = new SimpleIntervalJob( ); const runMirrorCheck = async () => { - const homeOrg = await Organization.getHomeOrg(); - if (homeOrg) { - const organizations = await Organization.getOrgsMap(); - const orgs = Object.keys(organizations); - for (const org of orgs) { - const orgData = organizations[org]; - const mirrorUrl = await getMirrorUrl(); - - if (mirrorUrl) { - // There is logic within the addMirror function to check if the mirror already exists - await Organization.addMirror(orgData.orgUid, mirrorUrl); - await Organization.addMirror(orgData.registryId, mirrorUrl); - } else { - logger.error( - 'DATALAYER_FILE_SERVER_URL not set, skipping mirror announcement', - ); - } + const organizations = await Organization.getOrgsMap(); + const orgs = Object.keys(organizations); + for (const org of orgs) { + const orgData = organizations[org]; + const mirrorUrl = await getMirrorUrl(); + if (mirrorUrl) { + // There is logic within the addMirror function to check if the mirror already exists + await Organization.addMirror(orgData.orgUid, mirrorUrl, true); + await Organization.addMirror(orgData.registryId, mirrorUrl, true); + } else { + logger.error( + 'DATALAYER_FILE_SERVER_URL not set, skipping mirror announcement', + ); } } }; diff --git a/src/utils/datalayer-utils.js b/src/utils/datalayer-utils.js index 844d8138..fe6630cb 100644 --- a/src/utils/datalayer-utils.js +++ b/src/utils/datalayer-utils.js @@ -114,7 +114,6 @@ export const optimizeAndSortKvDiff = (kvDiff) => { export const getMirrorUrl = async () => { try { const finalUrl = CONFIG().CHIA.DATALAYER_FILE_SERVER_URL; - logger.debug(`Resolved Mirror Url: ${finalUrl}`); return finalUrl; } catch (error) { From bef6d9a10cc3cd42685e1bd1bbb92b414c1e2586 Mon Sep 17 00:00:00 2001 From: Zachary Brown Date: Fri, 8 Mar 2024 14:22:34 -0800 Subject: [PATCH 10/11] chore: config for automatic updater --- .repo-content-updater.yaml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 .repo-content-updater.yaml diff --git a/.repo-content-updater.yaml b/.repo-content-updater.yaml new file mode 100644 index 00000000..3906fd04 --- /dev/null +++ b/.repo-content-updater.yaml @@ -0,0 +1,4 @@ +pr_target_grant: develop +assign_users: + - TheLastCicada +commit_prefix: "chore: " From eac38084c72bf430129c4cec8de7bb7d7665ca61 Mon Sep 17 00:00:00 2001 From: Zachary Brown Date: Fri, 8 Mar 2024 14:35:01 -0800 Subject: [PATCH 11/11] chore: version bump --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c895c18d..57390719 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "core-registry-cadt", - "version": "1.7.6", + "version": "1.7.7", "_comment": "DONT CHANGE MAJOR UNLESS DATAMODEL CHANGES: The major version corresponds to the datamodel version your using, so 2.0.0 means it'll use datamodel v2", "private": true, "bin": "build/server.js",