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

Add genesis-dev.json and move genesis jsons out of root source directory #1591

Closed
5 of 7 tasks
nathanielhourt opened this issue Feb 15, 2019 · 13 comments
Closed
5 of 7 tasks
Assignees
Labels
1b User Story The User Story details a requirement. It may reference a parent Epic. It may reference child Task(s) 2e Ready for Testing Status indicating the solution is sufficiently developed to begin testing 3c Enhancement Classification indicating a change to the functionality of the existing imlementation 5a Docs Needed Status specific to Documentation indicating the need for proper documentation to be added 6 CLI Impact flag identifying the command line interface (CLI) wallet application

Comments

@nathanielhourt
Copy link
Contributor

nathanielhourt commented Feb 15, 2019

User Story
As a developer I want a readily-available genesis for private testnet setup so that I can spin up private networks for testing use with minimal boilerplate or overhead.

To this end, I have added a genesis-dev.json which can be used with no modifications to create a testnet and produce blocks on it with the init* accounts.

Furthermore, we wish to keep the root source directory as clean as possible. The genesis.json file is, by this stage in the maturity of the BitShares network, historical data which is not crucial to current development, and thus is not highly valuable in the root project directory. Accordingly, I move it to the libraries/egenesis/ folder and place the genesis-dev.json file alongside it there.

Impacts

  • Other (Testing, especially new core functionality)

Additional Context
The witness_node historically provided a --create-example-genesis flag that would dump out a genesis.json file which could be used without editing to create a private testnet that produces blocks. This flag is no longer supported (ref #1536, #1529), but I would like to preserve a copy of a default-constructed genesis as it allows easy creation of private testnets. Using private testnets like this is an integral part of my workflow when working on core functionality, and I have helped two others in the last week with their private testnets as well, which indicates that I am not the only developer in the community utilizing them.

Moreover, the ability to produce blocks on private testnets is useful for the development of new chains or side-chains which could benefit from the Graphene framework, but do not wish to alter the BitShares core protocol.

CORE TEAM TASK LIST

  • Evaluate / Prioritize Feature Request
  • Refine User Stories / Requirements
  • Define Test Cases
  • Design / Develop Solution
  • Perform QA/Testing
  • Update Documentation
@nathanielhourt nathanielhourt self-assigned this Feb 15, 2019
nathanielhourt added a commit to nathanielhourt/bitshares-2 that referenced this issue Feb 15, 2019
@ryanRfox ryanRfox added 1b User Story The User Story details a requirement. It may reference a parent Epic. It may reference child Task(s) 2e Ready for Testing Status indicating the solution is sufficiently developed to begin testing 3c Enhancement Classification indicating a change to the functionality of the existing imlementation 5a Docs Needed Status specific to Documentation indicating the need for proper documentation to be added 6 CLI Impact flag identifying the command line interface (CLI) wallet application labels Feb 15, 2019
@ryanRfox
Copy link
Contributor

Thanks @nathanhourt appreciate the detail and references to the related items.

@ryanRfox ryanRfox reopened this Feb 15, 2019
@nathanielhourt
Copy link
Contributor Author

Vis-a-vis Docs Needed, is there any sort of zero-to-sixty in 30 minutes or less (lol) intro to BitShares development doc? If so, I think that would be an awesome place to mention this file. If not, I could probably throw one together, as I think that would be a great resource for new developers.

@pmconrad
Copy link
Contributor

@cedar-book please mention this file in our private testnet docs.

@cedar-book
Copy link

@pmconrad, yes, I will do that.

@abitmore abitmore added this to the Future Feature Release milestone Feb 16, 2019
@cedar-book
Copy link

@pmconrad, I have updated the private testnet - Genesis file section

  • added notes to mention about the above two discussions. So, developers would have some expectations(?)

nathanielhourt added a commit that referenced this issue Feb 20, 2019
Resolve #1591: Relocate genesis and add dev genesis
@nathanielhourt
Copy link
Contributor Author

Vis-a-vis Docs Needed, is there any sort of zero-to-sixty in 30 minutes or less (lol) intro to BitShares development doc? If so, I think that would be an awesome place to mention this file. If not, I could probably throw one together, as I think that would be a great resource for new developers.

I have created a draft of this sort of doc here, and referenced this file therein. Comments are welcome.

@clockworkgr
Copy link
Member

Vis-a-vis Docs Needed, is there any sort of zero-to-sixty in 30 minutes or less (lol) intro to BitShares development doc? If so, I think that would be an awesome place to mention this file. If not, I could probably throw one together, as I think that would be a great resource for new developers.

I have created a draft of this sort of doc here, and referenced this file therein. Comments are welcome.

this is awesoem work @nathanhourt

@pmconrad
Copy link
Contributor

Very good!
I think you should coordinate with @cedar-book to integrate this in the http://dev.bitshares.works site.

@cedar-book
Copy link

cedar-book commented Mar 15, 2019

Yes. I've contacted to Nathan. He creates valuable information. I am working on this with him.

@cedar-book
Copy link

You will find the link below on the https://dev.bitshares.works site.
--> BitShares Development: Zero to Sixty in 30 Minutes or Less

@pmconrad
Copy link
Contributor

@cedar-book I think you should add some links from @nathanhourt 's testnet description to your testnet documentation.

@cedar-book
Copy link

cedar-book commented Apr 12, 2019

@pmconrad Thank you for your advice. I will check into that. --> added ref links in this section. How do you think?

@pmconrad
Copy link
Contributor

Good, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1b User Story The User Story details a requirement. It may reference a parent Epic. It may reference child Task(s) 2e Ready for Testing Status indicating the solution is sufficiently developed to begin testing 3c Enhancement Classification indicating a change to the functionality of the existing imlementation 5a Docs Needed Status specific to Documentation indicating the need for proper documentation to be added 6 CLI Impact flag identifying the command line interface (CLI) wallet application
Projects
None yet
Development

No branches or pull requests

6 participants