filecoin-project / dealbot

🤖🤝 A bot for making deals
Apache License 2.0
32 stars 10 forks source link

Running dealbot on other networks #361

Open travisperson opened 2 years ago

travisperson commented 2 years ago

For the testing of the OhSnap FIP on the butterfly network a request was made to deploy an instance of dealbot for the butterfly network to automation deal making for robust testing of the network upgrade. This contains the general issues faced during the deployment / use of dealbot.

I was able to some what successfully make the deployment (controller) by referencing the nerpanet deployment, but ran into issues when trying to start a dealbot daemon.

  1. When trying to create a dealbot daemon, the form values for the docker repo and image label were not submitted with the http request to create the daemon. Maybe related to #357.

  2. Dealbot depends on the docker container produced by the lotus development team which is only produced for mainnet. Supporting dealbot for butterfly, or other networks would require building additional docker containers. Building the additional container itself isn't an issue but would be a one off and if not done carefully could introduce tech-debt to the lotus project / community (this is a lotus issue, but here for context).

  3. Dealbot controller uses a helm chart (lotus-bundle) which is hardcoded[0] for mainnet and making any changes to the chart would required additional development in dealbot to support the changes, which could affect the running dealbot mainnet service.

[0] https://github.com/filecoin-project/helm-charts/blob/dealbot-0.0.12/charts/lotus-bundle/templates/statefulset.yaml#L179-L180

coryschwartz commented 2 years ago

Currently, lotus doesn't produce nerpanet or calibrationnet docker images, so we would have to build them manually

This PR could be useful for making code usable on multiple networks.

This PR might help with this https://github.com/filecoin-project/lotus/pull/8158

regardless, Travis is right that we have mainnet snapshot imports, and that'd need to be changed regardless.