-
Notifications
You must be signed in to change notification settings - Fork 378
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
[chain] Add a genesis.json
path flag to gnoland start
#1883
Comments
This was referenced Apr 3, 2024
This was referenced Apr 17, 2024
7 tasks
zivkovicmilos
added a commit
that referenced
this issue
Apr 25, 2024
## Description Closes #1882 This PR standardizes the node's directory structure, and does not assume that the `genesis.json` is contained within the node directory (further tackled in #1883). The biggest change introduced in this PR is that the node's directory path is treated as absolute, so there is no funny business with path concatenation when the node is running. This is best described with the desired structure: ``` . ├── genesis.json └── my-node-dir/ ├── db/ │ ├── blockstore.db (folder) │ ├── gnolang.db (folder) │ ├── state.db (folder) │ └── cs.wal ├── secrets/ │ ├── priv_validator_state.json │ ├── node_key.json │ └── priv_validator_key.json └── config/ └── config.toml ``` **BREAKING CHANGES**: - the `genesis.json` file is no longer contained inside the node's working directory, but outside it by default (this is dropped entirely in #1883) - the configuration is moved top-level to the node's directroy - the secrets are no longer contained in `<node-dir>/config`, but in `<node-dir>/secrets` - the `priv_validator_state.json` is moved to `<node-dir>/secrets` by default If you have an old Gno chain, and what to keep backwards compatibility, move the `genesis.json` to just outside the node directory (to prevent it from being regenerated), and update the relevant `config.toml` path values (`genesis_file` and `home` for the `BaseConfig`). Additionally, update all `home` paths in the `config.toml` to be absolute paths (this is dropped in #1884). <details><summary>Contributors' checklist...</summary> - [x] Added new tests, or not needed, or not feasible - [x] Provided an example (e.g. screenshot) to aid review or the PR is self-explanatory - [x] Updated the official documentation or not needed - [x] No breaking changes were made, or a `BREAKING CHANGE: xxx` message was included in the description - [x] Added references to related issues and PRs - [ ] Provided any useful hints for running manual tests - [ ] Added new benchmarks to [generated graphs](https://gnoland.github.io/benchmarks), if any. More info [here](https://github.com/gnolang/gno/blob/master/.benchmarks/README.md). </details>
thehowl
added a commit
that referenced
this issue
Apr 25, 2024
- Depends on #1944 (git history is based on that one) - Closes #1883 <details><summary>Contributors' checklist...</summary> - [ ] Added new tests, or not needed, or not feasible - [ ] Provided an example (e.g. screenshot) to aid review or the PR is self-explanatory - [ ] Updated the official documentation or not needed - [ ] No breaking changes were made, or a `BREAKING CHANGE: xxx` message was included in the description - [ ] Added references to related issues and PRs - [ ] Provided any useful hints for running manual tests - [ ] Added new benchmarks to [generated graphs](https://gnoland.github.io/benchmarks), if any. More info [here](https://github.com/gnolang/gno/blob/master/.benchmarks/README.md). </details> --------- Co-authored-by: Milos Zivkovic <[email protected]>
github-project-automation
bot
moved this from In Progress
to Done
in 🧙♂️gno.land core team
Apr 25, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Description
Master issue: #1836
This issue concerns adding a
genesis.json
path flag to thegnoland start
command.Default should be
./genesis.json
, as outlined in #1882.The genesis path should be required.
The consequence of adding this functionality is that the
config.toml
no longer needs to keep path information for thegenesis.json
.The text was updated successfully, but these errors were encountered: