-
Notifications
You must be signed in to change notification settings - Fork 746
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
Package distribution deb #2153
base: unstable
Are you sure you want to change the base?
Package distribution deb #2153
Conversation
…ckage-distribution
…ckage-distribution
Nice work!
|
@torfbolt thanks a lot for the feedback!
I am also thinking launchpad is the better option. It would be a little less maintenance on Sigma Prime's end, I think it will make it easier for us to build for more architectures, and it handles PGP key verification, which is nice for users. Unfortunately I've learned uploading to launchpad will take a bit of reworking of this PR. Rather than
I made an attempt to do this using
Thanks for pointing this out! This was a remnant of what I was looking at in Polkadot's CI, they seem to use the home directory to store data. But I've updated it now. |
## Issue Addressed resolves #2129 resolves #2099 addresses some of #1712 unblocks #2076 unblocks #2153 ## Proposed Changes - Updates all the dependencies mentioned in #2129, except for web3. They haven't merged their tokio 1.0 update because they are waiting on some dependencies of their own. Since we only use web3 in tests, I think updating it in a separate issue is fine. If they are able to merge soon though, I can update in this PR. - Updates `tokio_util` to 0.6.2 and `bytes` to 1.0.1. - We haven't made a discv5 release since merging tokio 1.0 updates so I'm using a commit rather than release atm. **Edit:** I think we should merge an update of `tokio_util` to 0.6.2 into discv5 before this release because it has panic fixes in `DelayQueue` --> PR in discv5: sigp/discv5#58 ## Additional Info tokio 1.0 changes that required some changes in lighthouse: - `interval.next().await.is_some()` -> `interval.tick().await` - `sleep` future is now `!Unpin` -> tokio-rs/tokio#3028 - `try_recv` has been temporarily removed from `mpsc` -> tokio-rs/tokio#3350 - stream features have moved to `tokio-stream` and `broadcast::Receiver::into_stream()` has been temporarily removed -> `tokio-rs/tokio#2870 - I've copied over the `BroadcastStream` wrapper from this PR, but can update to use `tokio-stream` once it's merged tokio-rs/tokio#3384 Co-authored-by: realbigsean <seananderson33@gmail.com>
@realbigsean FWIW, your fix in 7a71977 went in after the most recent CI job fell over, so I think this should be passing CI checks now? Very keen to see |
Hey @jmcph4, I've left this as blocked because although we can now successfully vendor lighthouse dependencies using |
@realbigsean Once #2076 is merged The PR also contains a workaround that makes |
I do plan on picking this back up! but will need to think about how we want package distribution to work post-merge |
I think we'd still distribute as a stand-alone |
I'm not sure if it's possible but it'd be nice to do something like check if a compatible version of an execution client is installed. Generally though, yeah I think we should probably just keep the installation simple and leave it up to the user to make sure the execution client is properly configured |
Issue Addressed
#2082
Proposed Changes
I used this Polkadot pull request as a reference for most of this (not the rpm portion): https://github.com/paritytech/polkadot/pull/1676/files
.deb
packagesystemd
service files for the beacon and validatorpostinst
script that creates separate users for the bn and vc, configures thedatadir
/etc/default
filesAdditional Info
TODOs:
.deb
. I think we could self host it (parity does this), or use something like launchpad.net (geth does this)/etc/default
files, maybe adding common flags in commentsWould love some feedback! I'm learning most of this as I go, so anyone with expertise/experience in this area, please chime in.