naeural-client 2.7.41__tar.gz → 2.7.43__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. {naeural_client-2.7.41 → naeural_client-2.7.43}/PKG-INFO +1 -1
  2. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/_ver.py +1 -1
  3. naeural_client-2.7.43/naeural_client/ipfs/ifps_keygen +35 -0
  4. naeural_client-2.7.43/naeural_client/ipfs/ipfs_setup/ipfs.service +13 -0
  5. naeural_client-2.7.43/naeural_client/ipfs/ipfs_setup/launch_service.sh +6 -0
  6. naeural_client-2.7.43/naeural_client/ipfs/ipfs_setup/restart.sh +1 -0
  7. naeural_client-2.7.43/naeural_client/ipfs/ipfs_setup/run.sh +3 -0
  8. naeural_client-2.7.43/naeural_client/ipfs/ipfs_setup/setup.sh +10 -0
  9. naeural_client-2.7.43/naeural_client/ipfs/ipfs_setup/show.sh +3 -0
  10. naeural_client-2.7.43/naeural_client/ipfs/ipfs_setup/write_key.sh +3 -0
  11. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/ipfs/r1fs.py +50 -1
  12. {naeural_client-2.7.41 → naeural_client-2.7.43}/pyproject.toml +1 -1
  13. naeural_client-2.7.43/xperimental/debug/close_pipeline.py +57 -0
  14. {naeural_client-2.7.41 → naeural_client-2.7.43}/.devcontainer/Dockerfile +0 -0
  15. {naeural_client-2.7.41 → naeural_client-2.7.43}/.devcontainer/devcontainer.json +0 -0
  16. {naeural_client-2.7.41 → naeural_client-2.7.43}/.gitattributes +0 -0
  17. {naeural_client-2.7.41 → naeural_client-2.7.43}/.github/workflows/python-publish.yml +0 -0
  18. {naeural_client-2.7.41 → naeural_client-2.7.43}/.gitignore +0 -0
  19. {naeural_client-2.7.41 → naeural_client-2.7.43}/.vscode/launch.json +0 -0
  20. {naeural_client-2.7.41 → naeural_client-2.7.43}/LICENSE +0 -0
  21. {naeural_client-2.7.41 → naeural_client-2.7.43}/README.md +0 -0
  22. {naeural_client-2.7.41 → naeural_client-2.7.43}/TODOs.md +0 -0
  23. {naeural_client-2.7.41 → naeural_client-2.7.43}/__init__.py +0 -0
  24. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/__init__.py +0 -0
  25. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/__init__.py +0 -0
  26. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/distributed_custom_code_presets.py +0 -0
  27. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/generic_session.py +0 -0
  28. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/instance.py +0 -0
  29. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/payload/__init__.py +0 -0
  30. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/payload/payload.py +0 -0
  31. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/pipeline.py +0 -0
  32. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/plugin_template.py +0 -0
  33. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/responses.py +0 -0
  34. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/transaction.py +0 -0
  35. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base/webapp_pipeline.py +0 -0
  36. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/base_decentra_object.py +0 -0
  37. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/bc/__init__.py +0 -0
  38. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/bc/base.py +0 -0
  39. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/bc/chain.py +0 -0
  40. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/bc/ec.py +0 -0
  41. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/bc/evm.py +0 -0
  42. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/certs/__init__.py +0 -0
  43. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/certs/r9092118.ala.eu-central-1.emqxsl.com.crt +0 -0
  44. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/certs/s624dbd4.ala.us-east-1.emqxsl.com.crt +0 -0
  45. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/cli/README.md +0 -0
  46. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/cli/cli.py +0 -0
  47. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/cli/cli_commands.py +0 -0
  48. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/cli/nodes.py +0 -0
  49. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/cli/oracles.py +0 -0
  50. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/code_cheker/__init__.py +0 -0
  51. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/code_cheker/base.py +0 -0
  52. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/code_cheker/checker.py +0 -0
  53. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/comm/__init__.py +0 -0
  54. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/comm/amqp_wrapper.py +0 -0
  55. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/comm/mqtt_wrapper.py +0 -0
  56. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/README.md +0 -0
  57. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/__init__.py +0 -0
  58. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/apps.py +0 -0
  59. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/base.py +0 -0
  60. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/comms.py +0 -0
  61. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/environment.py +0 -0
  62. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/evm_net.py +0 -0
  63. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/formatter.py +0 -0
  64. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/heartbeat.py +0 -0
  65. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/misc.py +0 -0
  66. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/const/payload.py +0 -0
  67. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/default/__init__.py +0 -0
  68. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/default/instance/__init__.py +0 -0
  69. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/default/instance/chain_dist_custom_job_01_plugin.py +0 -0
  70. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/default/instance/custom_webapi_01_plugin.py +0 -0
  71. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/default/instance/net_mon_01_plugin.py +0 -0
  72. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/default/instance/telegram_basic_bot_01_plugin.py +0 -0
  73. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/default/instance/telegram_conversational_bot_01_plugin.py +0 -0
  74. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/default/instance/view_scene_01_plugin.py +0 -0
  75. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/default/session/mqtt_session.py +0 -0
  76. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/io_formatter/__init__.py +0 -0
  77. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/io_formatter/base/__init__.py +0 -0
  78. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/io_formatter/base/base_formatter.py +0 -0
  79. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/io_formatter/default/__init__.py +0 -0
  80. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/io_formatter/default/a_dummy.py +0 -0
  81. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/io_formatter/default/aixp1.py +0 -0
  82. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/io_formatter/default/default.py +0 -0
  83. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/io_formatter/io_formatter_manager.py +0 -0
  84. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/ipfs/__init__.py +0 -0
  85. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/__init__.py +0 -0
  86. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/base_logger.py +0 -0
  87. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/__init__.py +0 -0
  88. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/class_instance_mixin.py +0 -0
  89. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/computer_vision_mixin.py +0 -0
  90. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/datetime_mixin.py +0 -0
  91. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/download_mixin.py +0 -0
  92. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/general_serialization_mixin.py +0 -0
  93. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/json_serialization_mixin.py +0 -0
  94. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/pickle_serialization_mixin.py +0 -0
  95. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/process_mixin.py +0 -0
  96. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/resource_size_mixin.py +0 -0
  97. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/timers_mixin.py +0 -0
  98. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/upload_mixin.py +0 -0
  99. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/logger_mixins/utils_mixin.py +0 -0
  100. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/small_logger.py +0 -0
  101. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/tzlocal/__init__.py +0 -0
  102. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/tzlocal/unix.py +0 -0
  103. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/tzlocal/utils.py +0 -0
  104. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/tzlocal/win32.py +0 -0
  105. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/logging/tzlocal/windows_tz.py +0 -0
  106. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/plugins_manager_mixin.py +0 -0
  107. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/utils/__init__.py +0 -0
  108. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/utils/comm_utils.py +0 -0
  109. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/utils/config.py +0 -0
  110. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/utils/dotenv.py +0 -0
  111. {naeural_client-2.7.41 → naeural_client-2.7.43}/naeural_client/utils/oracle_sync/oracle_tester.py +0 -0
  112. {naeural_client-2.7.41 → naeural_client-2.7.43}/nepctl.MD +0 -0
  113. {naeural_client-2.7.41 → naeural_client-2.7.43}/requirements.txt +0 -0
  114. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/.example_env +0 -0
  115. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/8. custom_code_fastapi_assets/index.html +0 -0
  116. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/9. code_sandbox_from_scratch_assets/index.html +0 -0
  117. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/_example_pk_sdk.pem +0 -0
  118. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex01_part1_connect.py +0 -0
  119. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex01_part2_filter.py +0 -0
  120. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex01_part3_adv_filter.py +0 -0
  121. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex02_part1_deploy_webapi.py +0 -0
  122. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex02_part2_deploy_plugin.py +0 -0
  123. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex03_custom_code_on_one_remote__example_1.py +0 -0
  124. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex04_custom_code_on_one_remote__example_2.py +0 -0
  125. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex05_custom_code_on_one_remote__example_3.py +0 -0
  126. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex06_custom_code_on_multiple_remotes__example_1.py +0 -0
  127. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex07_custom_code_on_multiple_remotes__example_2.py +0 -0
  128. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex08_custom_webapi.py +0 -0
  129. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex09_code_sandbox_from_scratch.py +0 -0
  130. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex10_telegram_echo_bot.py +0 -0
  131. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex11_telegram_blackjack_bot.py +0 -0
  132. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex12_telegram_smart_bot.py +0 -0
  133. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/ex13_launch_repo_based_webapp.py +0 -0
  134. {naeural_client-2.7.41 → naeural_client-2.7.43}/tutorials/video_presentation/1. hello_world.ipynb +0 -0
  135. {naeural_client-2.7.41 → naeural_client-2.7.43}/winrun.bat +0 -0
  136. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/README.md +0 -0
  137. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/_checks/cstore_check.py +0 -0
  138. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/_checks/dauth_check.py +0 -0
  139. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/_checks/keys_check.py +0 -0
  140. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/_checks/ora_check.py +0 -0
  141. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/_checks/ora_sign_check.py +0 -0
  142. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/_checks/payload_check.py +0 -0
  143. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/_checks/session_check.py +0 -0
  144. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/_checks/web3_check.py +0 -0
  145. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/dates/check_date.py +0 -0
  146. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/decentralized/chain_dist_example.py +0 -0
  147. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/decentralized/chain_dist_example_initiator.py +0 -0
  148. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/decentralized/chain_dist_example_worker.py +0 -0
  149. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/enc_dec/enc_dec_test.py +0 -0
  150. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/eth/eth_sign.py +0 -0
  151. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/eth/info.md +0 -0
  152. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/eth/sign.py +0 -0
  153. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/multi-enc-dec/multi_test1.py +0 -0
  154. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/multi-enc-dec/multi_test2.py +0 -0
  155. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/pipelines/start.py +0 -0
  156. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/pipelines/stop.py +0 -0
  157. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/sign/simple_payload_checker.py +0 -0
  158. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/sign/test_sign1.py +0 -0
  159. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/sign/test_sign2.py +0 -0
  160. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/utils/get_documentation.py +0 -0
  161. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/various/attach_example.py +0 -0
  162. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/various/ex1.py +0 -0
  163. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/various/hello.py +0 -0
  164. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/various/remote_exec.py +0 -0
  165. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/various/save_images.py +0 -0
  166. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/wl/wl_add.py +0 -0
  167. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/xarchive/_tutorials/3. simple_real_time_custom_code.py +0 -0
  168. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/xarchive/_tutorials/4. real_time_custom_code_2.py +0 -0
  169. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/xarchive/_tutorials/8. chatbot.py +0 -0
  170. {naeural_client-2.7.41 → naeural_client-2.7.43}/xperimental/xarchive/test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: naeural_client
3
- Version: 2.7.41
3
+ Version: 2.7.43
4
4
  Summary: `naeural_client` is the Python SDK required for client app development for the Naeural Edge Protocol Edge Protocol framework
5
5
  Project-URL: Homepage, https://github.com/NaeuralEdgeProtocol/naeural_client
6
6
  Project-URL: Bug Tracker, https://github.com/NaeuralEdgeProtocol/naeural_client/issues
@@ -1,4 +1,4 @@
1
- __VER__ = "2.7.41"
1
+ __VER__ = "2.7.43"
2
2
 
3
3
  if __name__ == "__main__":
4
4
  with open("pyproject.toml", "rt") as fd:
@@ -0,0 +1,35 @@
1
+ #!/usr/bin/env python3
2
+ import os
3
+ import binascii
4
+ import base64
5
+
6
+ def generate_swarm_key():
7
+ """
8
+ Generate a 32-byte random key and format it as a valid IPFS swarm key.
9
+ """
10
+ # 32 bytes of cryptographically secure random data
11
+ random_bytes = os.urandom(32)
12
+ # Hex-encode them
13
+ hex_str = binascii.hexlify(random_bytes).decode('utf-8')
14
+
15
+ # Construct the file content
16
+ swarm_key_data = (
17
+ "/key/swarm/psk/1.0.0/\n"
18
+ "/base16/\n"
19
+ f"{hex_str}\n"
20
+ )
21
+
22
+ # Base64-encode the key
23
+ swarm_key_data = base64.b64encode(swarm_key_data.encode('utf-8')).decode('utf-8')
24
+
25
+ return swarm_key_data
26
+
27
+
28
+ if __name__ == "__main__":
29
+ key_str = generate_swarm_key()
30
+ print("Generated swarm_key_base64.txt content:")
31
+ print(key_str)
32
+ # Optionally save to a file
33
+ with open("swarm_key_base64.txt", "w") as f:
34
+ f.write(key_str)
35
+ print("Swarm key written to swarm_key_base64.txt")
@@ -0,0 +1,13 @@
1
+ [Unit]
2
+ Description=IPFS daemon
3
+ After=network.target
4
+
5
+ [Service]
6
+ # Set the user who owns ~/.ipfs (assuming "ipfsuser" owns ~/.ipfs)
7
+ User=root
8
+ ExecStart=/usr/local/bin/ipfs daemon
9
+ Restart=always
10
+ KillSignal=SIGINT
11
+
12
+ [Install]
13
+ WantedBy=multi-user.target
@@ -0,0 +1,6 @@
1
+
2
+ cp ipfs.service /etc/systemd/system/ipfs.service
3
+ sudo systemctl daemon-reload
4
+ sudo systemctl enable ipfs
5
+ sudo systemctl start ipfs
6
+ ./show.sh
@@ -0,0 +1 @@
1
+ systemctl restart ipfs
@@ -0,0 +1,3 @@
1
+ #!/bin/bash
2
+ ipfs bootstrap rm --all
3
+ ipfs daemon
@@ -0,0 +1,10 @@
1
+ #!/bin/bash
2
+ wget https://dist.ipfs.tech/kubo/v0.33.1/kubo_v0.33.1_linux-amd64.tar.gz && \
3
+ tar -xvzf kubo_v0.33.1_linux-amd64.tar.gz && \
4
+ cd kubo && \
5
+ bash install.sh
6
+ ipfs init
7
+ ipfs config --json Swarm.EnableRelayHop true
8
+ cd ..
9
+ ./write_key.sh
10
+
@@ -0,0 +1,3 @@
1
+ ipfs log level all debug
2
+ # shows the log of the ipfs.service systemd service
3
+ journalctl -u ipfs.service -f -n 1000 -a
@@ -0,0 +1,3 @@
1
+ # load the base64 encoded swarm key into the SWARM_KEY_CONTENT_BASE64 env var
2
+ cat swarm_key_base64.txt | base64 -d > /root/.ipfs/swarm.key
3
+ cat /root/.ipfs/swarm.key
@@ -1,6 +1,53 @@
1
1
  """
2
2
  Ratio1 base IPFS utility functions.
3
3
 
4
+
5
+ NOTE:
6
+ - Following the bootstrapping of this module, it takes a few minutes for the relay
7
+ to be connected and the IPFS daemon to be fully operational so sometimes, after
8
+ the start of the engine, the first few `get` operations may fail.
9
+
10
+
11
+ Installation:
12
+
13
+ 1. On the dev node or seed node run ifps_keygen and generate `swarm_key_base64.txt` then
14
+ save this key to the environment variable `EE_SWARM_KEY_CONTENT_BASE64` on the seed
15
+ oracles as well as in a file.
16
+
17
+ 2. On seed node create `ipfs_setup`, copy the files from the `ipfs_setup` including the
18
+ key file.
19
+
20
+ 3. Run `setup.sh` on the seed node or:
21
+
22
+ ```bash
23
+ #!/bin/bash
24
+ wget https://dist.ipfs.tech/kubo/v0.32.1/kubo_v0.32.1_linux-amd64.tar.gz && \
25
+ tar -xvzf kubo_v0.32.1_linux-amd64.tar.gz && \
26
+ cd kubo && \
27
+ bash install.sh
28
+ ipfs init
29
+ ipfs config --json Swarm.EnableRelayHop true
30
+
31
+ ./write_key.sh
32
+ ```
33
+ The `write_key.sh` script should contain the following:
34
+
35
+ ```bash
36
+ cat swarm_key_base64.txt | base64 -d > /root/.ipfs/swarm.key
37
+ cat /root/.ipfs/swarm.key
38
+ ```
39
+
40
+ 4. Continue on the seed node and run either manually (NOT recommended) or via a systemd
41
+ the ifps daemon using `./launch_service.sh` that basically does:
42
+
43
+ ```bash
44
+ cp ipfs.service /etc/systemd/system/ipfs.service
45
+ sudo systemctl daemon-reload
46
+ sudo systemctl enable ipfs
47
+ sudo systemctl start ipfs
48
+ ./show.sh
49
+ ```
50
+
4
51
  """
5
52
  import subprocess
6
53
  import json
@@ -13,7 +60,7 @@ import uuid
13
60
 
14
61
  from threading import Lock
15
62
 
16
- __VER__ = "0.2.1"
63
+ __VER__ = "0.2.2"
17
64
 
18
65
 
19
66
  class IPFSCt:
@@ -225,6 +272,7 @@ class R1FSEngine:
225
272
 
226
273
 
227
274
  def __set_relay(self):
275
+ # Command to enable the IPFS relay
228
276
  result = self.__run_command(
229
277
  ["ipfs", "config", "--json", "Swarm.DisableRelay", "false"]
230
278
  )
@@ -547,6 +595,7 @@ class R1FSEngine:
547
595
  self.P("IPFS daemon running", color='g')
548
596
 
549
597
  except Exception:
598
+ self.Pd("ipfs id failed, starting daemon...")
550
599
  try:
551
600
  self.__set_reprovider_interval()
552
601
  self.__set_relay()
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "naeural_client"
7
- version = "2.7.41"
7
+ version = "2.7.43"
8
8
  authors = [
9
9
  { name="Andrei Ionut Damian", email="andrei.damian@me.com" },
10
10
  { name="Cristan Bleotiu", email="cristibleotiu@gmail.com" },
@@ -0,0 +1,57 @@
1
+ from naeural_client import Session
2
+
3
+
4
+ if __name__ == '__main__':
5
+ """
6
+ This script will close all the pipelines from pipeline_names on all the nodes from nodes
7
+ in case the pipelines exist and the client user is allowed on the nodes, where:
8
+ - nodes is a list of string and/or tuple pairs:
9
+ - string: the address of the node
10
+ - tuple: the address of the node and an alias for the node
11
+ - pipeline_names is a list of strings representing the names of the pipelines to be closed.
12
+
13
+ For example:
14
+ - nodes = ['address1', ('address2', 'alias2)]
15
+ - pipeline_names = ['pipeline1', 'pipeline2']
16
+
17
+ Assuming the following:
18
+ - the client user is allowed only on the node with address2
19
+ - the node on address1 has pipelines named 'pipeline1' and 'pipeline2'
20
+ - the node on address2 only has a pipeline named 'pipeline1'
21
+
22
+ The 2 pipelines on node with address1 will remain intact,
23
+ while the 'pipeline1' on node with address2 will be closed.
24
+
25
+ NOTE: If a node you you are trying to reach is unknown, it may be on a different network.
26
+ You can try changing the network with:
27
+ ```
28
+ r1ctl config network --set <network_name>
29
+ ```
30
+ """
31
+
32
+ session = Session(silent=True)
33
+ nodes = [
34
+ ('0xai_Amfnbt3N-qg2-qGtywZIPQBTVlAnoADVRmSAsdDhlQ-6', 'tr1s-02')
35
+ ]
36
+
37
+ pipeline_names = [
38
+ 'gigi_pipeline_01',
39
+ 'telegram_bot_blackjack'
40
+ ]
41
+
42
+ for node in nodes:
43
+ node_addr, node_alias = node if isinstance(node, tuple) else (node, None)
44
+ session.wait_for_node(node_addr)
45
+ for pipeline_name in pipeline_names:
46
+ try:
47
+ current_pipeline = session.attach_to_pipeline(
48
+ node=node_addr, name=pipeline_name
49
+ )
50
+ session.P(f'Pipeline {pipeline_name} on node {node_addr} was successfully attached. Closing...', show=True)
51
+ current_pipeline.close()
52
+ except Exception as exc:
53
+ session.P(f"Error attaching to pipeline {pipeline_name} on node {node_addr}: {exc}", show=True)
54
+ continue
55
+ # endtry
56
+ # endfor pipelines
57
+ # endfor nodes
File without changes