Open petermetz opened 2 years ago
Hi @petermetz I am interested to work on this Cactus Chia connector plugin
project.
Hey @petermetz I'm Dipanshu.
I applied for this project through LFX mentorship. I'm excited.
I'm planning to utilize the meantime to understand the workflows of our community.
I'll also try to better understand the enhancements that we'll be making through this project.
Since I'm new to this project and open source in general
I was wondering if you could help me with some specific references to get started
I'd be really help me a lot.
Greetings Mentor @petermetz ,
I'm looking forward to working with you. I already sent my application through the LFX mentorships. Here's my email mandalpurushottam66@gmail.com
Thankyou Purushottam @oyepuru
Hi @petermetz, I am really interested in working on this issue. And I just applied on the LFX mentorships.
Thank you for your consideration. Xinyu xzhang0980@gmail.com
Hi @petermetz While building the plugin and the pipeline, what are the essential tradeoffs we should keep in mind, and how can I measure the performance metric if it is working?
Is there any communication channel apart from Github for this project?
Found the discord link for the Hyperledger Foundation: https://discord.gg/invite/hyperledger
yes @RajGM you may clarify your doubt over there.
Hi, @petermetz What is the base image we are going to use for the chai connector? Any particular port we want to expose services with? Are any particular node modules recommended to use apart from chai-js? Any particular chai test pattern?
Jumping to step 3 as https://github.com/Chia-Network/chia-docker resolves steps 1-2
Looking at #1636 @petermetz
Summary
Develop a Cactus Chia connector plugin + test infrastructure (container images, container manager class, etc.) from scratch. Include end to end test cases powered by Jest and the said testing infrastructure that prove that the connector is working as intended with a locally simulated Chia network.
You will be creating a new package in the Cactus monorepo from scratch under the
packages/cactus-plugin-ledger-connector-chia/
path.Acceptance Criteria
tools/docker/chia-all-in-one/Dockerfile
) which also has a README.md next to it explaining the building and running of the image and it's containers (tools/docker/chia-all-in-one/README.md
) 1.1 Container health checks must be be operational and reliable for the image meaning that theHEALTHCHECK
keyword needs to be used within theDockerfile
to define when the container has finished launching (e.g. it must only pass once the ledger is up and running, ready to accept transactions)ghcr.io/hyperledger/cactus-chia-all-in-one:2022-MM-DD-$GIT_SHORT_HASH
for exampleghcr.io/hyperledger/cactus-chia-all-in-one:2021-01-08-7a055c3
(do not use the exact example tag of course)packages/cactus-test-tooling/src/main/typescript/chia/chia-test-ledger.ts
code file is added with aChiaTestLedger
class in it that is responsible for providing astart()
method that takes care of launchingpackages/cactus-plugin-ledger-connector-chia/src/main/typescript/plugin-ledger-connector-chia.ts
file is added with aPluginLedgerConnectorChia
class in it. This class uses thechia-js
npm package under the hood to implement the connector's usual methods.packages/cactus-plugin-ledger-connector-chia/src/main/json/openapi.json
file.Links, Tips, Useful Information
1 .There is a Typescript library facilitating RPC calls to Chia chains: https://www.npmjs.com/package/chia-js The latter should be used for the internal workings of the connector class to keep things simple (e.g. do not go down the rabbit hole of trying to use bindings from another language via IPC or other complex workarounds).
chia
)packages/cactus-plugin-ledger-connector-chia/package.json
the dependency versions to other Cactus packages are up to date and that the name of the package itself is also up to date.