hyperledger / cacti

Hyperledger Cacti is a new approach to the blockchain interoperability problem
https://wiki.hyperledger.org/display/cactus
Apache License 2.0
322 stars 276 forks source link

docs(examples): migrate supply chain app to ethereum connector #3272

Open petermetz opened 1 month ago

petermetz commented 1 month ago

Description

There are plans to maybe remove the quorum connector in the future, but for that, we need to first make sure that the example supply chain app still works. This means migrating the supply chain app from using quorum for storing one of the data entities to another connector such as the ethereum connector (but it could be another one if we figure out along the way as such)

A couple of relevant locations in the code of the supply chain example to speed up context gathering for this task:

  1. https://github.com/hyperledger/cacti/blob/main/examples/cactus-example-supply-chain-backend/src/main/typescript/infrastructure/supply-chain-app-dummy-infrastructure.ts#L172
  2. https://github.com/hyperledger/cacti/blob/main/examples/cactus-example-supply-chain-backend/src/main/typescript/infrastructure/supply-chain-app-dummy-infrastructure.ts#L192
  3. https://github.com/hyperledger/cacti/blob/main/examples/cactus-example-supply-chain-frontend/src/app/bamboo-harvest/bamboo-harvest-list/bamboo-harvest-list.page.ts#L44
  4. https://github.com/hyperledger/cacti/blob/main/examples/cactus-example-supply-chain-business-logic-plugin/src/main/typescript/business-logic-plugin/web-services/list-bamboo-harvest-endpoint.ts#L30

A branch that has the changes to remove the quorum connector and it's test utilities (AIO ledgers and such) from the project have already been pushed, but that branch has the build broken at the moment due to the supply chain app's dependency on the quorum connector.

The main goal of this issue is to eliminate that dependency so that the build can start passing on the above referenced branch: https://github.com/petermetz/cacti/tree/refactor-connector-quorum-removal

Acceptance Criteria

  1. The supply chain app uses the ethereum connector
  2. Quorum references and dependency declarations have been removed from the supply chain app and it's packages.
  3. The refactor-connector-quorum-removal has the build passing after having been rebased onto the branch that will be created for fixing this issue.
murluki commented 1 month ago

Could you please assign this issue to me?

petermetz commented 1 month ago

Could you please assign this issue to me?

@murluki Yup, you got it! If you need any help, please feel free to reach out to me on the daily pair programming sessions that are open to everyone: https://wiki.hyperledger.org/display/cactus/Daily+Pair+Programming+Calls

petermetz commented 1 month ago

@murluki Just checking in to make sure you are able to progress with this one. How is it going?

murluki commented 1 month ago

I’ll upload the solution this weekend, but yes, if you don’t mind, could I jump on the call because I do have some questions?

petermetz commented 1 month ago

@murluki Thank you for the update, very much appreciated! You are more than welcome to join the pair programming calls! The next one is coming up on Monday 10:00 AM Pacific Time!

petermetz commented 2 weeks ago

@murluki Are you still working on this?

murluki commented 1 week ago

Yes, sorry for making you wait. Finishing.

petermetz commented 1 week ago

@murluki No worries, just keep me in the loop if I can help with any of it!

murluki commented 1 week ago

Added the change and just checking where else it is used and running the tests/build, thank you!

petermetz commented 6 days ago

@murluki If you share a link to the branch where you are working on, I could help speed things up a bit. :-)