Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Local development improvement #311

Closed
4 tasks
scirner22 opened this issue May 11, 2021 · 1 comment · Fixed by #472
Closed
4 tasks

Local development improvement #311

scirner22 opened this issue May 11, 2021 · 1 comment · Fixed by #472
Assignees
Labels
CI Continuous Integration and release process documentation Improvements or additions to documentation good first issue Good for newcomers

Comments

@scirner22
Copy link
Contributor

Summary

A single node docker based development environment that is developer friendly.

Problem Definition

Right now it's very easy to integrate with make localnet-start. The reasons for this is because it starts up provenanced with docker and provides some developer friendly utilities such as having a large pool of nhash in the genesis. P8e for instance can launch this and then easily import a key and transfer nhash to it.

The problem with this is that localnet is not ideal for local development of dependent services. It is heavy weight for a laptop and in heavy load scenarios the block cut time quickly starts to increase. I'm hopeful this is mostly due to running the full setup on a laptop.

Using the single, native provenance setup is not ideal for someone developing dependent services that already make use of docker because you then have to manage the stopping and starting of the native binary in scripts. We were doing this previously, but it's more error prone.

Proposal

A make target that spins up a single node provenance environment making use of a docker image with a sensical genesis file (loaded with nhash).

Taking this a step further it might even be valuable to have a few documented hardcoded mnemonics associated with addresses that have nhash as part of the genesis as well. This would remove the need for dependent services to launch the development environment and then have to create/import keys and transfer nhash as part of a one time setup script. I assume this step is mimicked in most dependent systems that start a local development provenance environment.


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@iramiller iramiller added CI Continuous Integration and release process documentation Improvements or additions to documentation good first issue Good for newcomers labels Jul 27, 2021
@scirner22
Copy link
Contributor Author

scirner22 commented Aug 23, 2021

As far as the original ask, this gets closed by provenance-io/p8e-scope-sdk#4 for the metadata module use case. I'm not sure if there's value in duplicating some of that in a standalone environment (pretty much what was accomplished there but without object-store related stuff) within this repo or not.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI Continuous Integration and release process documentation Improvements or additions to documentation good first issue Good for newcomers
Projects
Development

Successfully merging a pull request may close this issue.

3 participants