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

Create genesis struct. and generate bootstrap and faucet accounts #4

Merged

Conversation

gregcusack
Copy link
Collaborator

@gregcusack gregcusack commented Mar 28, 2024

Summary of Changes

  1. Add in Genesis struct
  2. Add in generate faucet keypair
  3. Add in ValidatorType enum
  4. Add in generate bootstrap account and generate multiple account logic

NOTE: Had to change reqwest version to 0.11.23 from 0.12.2. Dependency issues with solana-core, aes-gcm-siv, and subtle

This PR #3 must be merged before this one!

4th PR in a series of PRs that will build out the monogon testing framework for deploying validator clusters on Kubernetes
Previous PRs:

  1. PR: add PROGRESS.md and connect to k8s endpoint to check namespace exists #1
  2. PR: Add in ability to build solana binary from local repo on host #2
  3. PR: Add pull specific solana-release version #3

@gregcusack gregcusack force-pushed the genesis-bootstrap-faucet-accounts branch from 5429d98 to 9e78374 Compare March 29, 2024 16:55
This was referenced Mar 29, 2024
@gregcusack gregcusack force-pushed the genesis-bootstrap-faucet-accounts branch 2 times, most recently from b338c88 to c2d1c1b Compare April 1, 2024 18:22
@gregcusack gregcusack force-pushed the genesis-bootstrap-faucet-accounts branch 3 times, most recently from 5e9bbc8 to a642c1b Compare April 3, 2024 19:10
@gregcusack gregcusack requested review from joncinque and yihau April 3, 2024 19:10
Comment on lines +18 to +24
if config_dir.exists() {
std::fs::remove_dir_all(&config_dir).unwrap();
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: maybe could have a subfolder that named by an unique hash 🤔 I guess that I couldn't run two cluster in the same time in the current logic

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ya so i was going to add that functionality at the end. but it may make sense to add it now. probably easier. do you want to pull a specific git hash from agave/ or also any forked repo of agave?

Copy link
Member

@yihau yihau Apr 4, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can do both 🤔 (am I too greedy haha)

I will have a buildkite pipeline UI for this tool after this tool get fully commit. I will expect that may be two or more people trigger this one at the same time
nvm. a bad example. I guess we can have this feature later. I saw you have bunches PRs after this one. we can focus on the more important things!

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok sounds good. its definitely on my list! and in the monorepo work that i am porting here. we can deploy multiple clusters but only through release-channels. commits will be good. it's a little more complicated for deploying multiple validator versions so that's why i was saving until later

src/genesis.rs Outdated
match validator_type {
ValidatorType::Bootstrap | ValidatorType::Standard => (),
ValidatorType::RPC => {
account_types.pop(); // no vote-account for RPC
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: I guess I missed something here. why do we need a stake-account for an RPC node?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you are correct. my mind here got mixed up between client and Rpc node. will fix

@gregcusack gregcusack force-pushed the genesis-bootstrap-faucet-accounts branch 3 times, most recently from 1e73523 to c48a3b8 Compare April 4, 2024 18:33
@gregcusack gregcusack force-pushed the genesis-bootstrap-faucet-accounts branch from c48a3b8 to ae54104 Compare April 4, 2024 19:07
@gregcusack gregcusack force-pushed the genesis-bootstrap-faucet-accounts branch from ae54104 to 85b4b6d Compare April 4, 2024 19:32
@gregcusack gregcusack merged commit 7152e09 into anza-xyz:main Apr 4, 2024
2 checks passed
@gregcusack gregcusack deleted the genesis-bootstrap-faucet-accounts branch April 4, 2024 20:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants