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

feat(auctioneer): add auctioneer binary #1556

Closed
wants to merge 9 commits into from

Conversation

itamarreif
Copy link
Contributor

@itamarreif itamarreif commented Sep 24, 2024

Summary

This PR adds the Auctioneer crate and boilerplate for a new binary.

Background

The new binary will be used for the auctioneer service. See the Auctioneer master issue for more context.

Changes

  • Add auctioneer crate to workspace's Cargo.toml file
  • Metrics, build info, config and boilerplate for setting up the binary
    • The metrics object is currently empty but I kept it in because it will be used in followup prs
  • Publicly exposed auctioneer::Auctioneer handle for managing spawn and shutdown due to SIGTERM
  • Internal service implementation in auctioneer::Inner sets up the main object responsible for intiialization, running, and graceful shutdown
  • Boilerplate for a single subtask that will be implemented a subsequent pr.

Related Issues

closes #1534, #1535, #1536, #1538, #1539, #1790

@github-actions github-actions bot added the proto pertaining to the Astria Protobuf spec label Sep 24, 2024
@itamarreif itamarreif changed the base branch from main to itamarreif/auctioneer/initial-protos September 24, 2024 22:50
@itamarreif itamarreif self-assigned this Sep 24, 2024
@itamarreif itamarreif changed the title feat(auctioneer): add auctioneer package and binary boilerplate feat(auctioneer): add auctioneer binary boilerplate Sep 24, 2024
@itamarreif itamarreif changed the base branch from itamarreif/auctioneer/initial-protos to main September 24, 2024 22:58
@itamarreif itamarreif force-pushed the itamarreif/auctioneer/eng-824 branch from ea37928 to 2784acc Compare September 24, 2024 22:59
@itamarreif itamarreif marked this pull request as ready for review September 24, 2024 23:18
@itamarreif itamarreif requested review from a team as code owners September 24, 2024 23:18
@itamarreif itamarreif requested review from noot, quasystaty1 and SuperFluffy and removed request for noot September 24, 2024 23:18
@SuperFluffy SuperFluffy marked this pull request as draft September 25, 2024 14:18
@itamarreif itamarreif force-pushed the itamarreif/auctioneer/eng-824 branch from 53b0b04 to c745a13 Compare September 25, 2024 19:50
@itamarreif itamarreif changed the base branch from main to itamarreif/auctioneer/initial-protos September 25, 2024 20:03
@github-actions github-actions bot added ci issues that are related to ci and github workflows conductor pertaining to the astria-conductor crate sequencer pertaining to the astria-sequencer crate docker cd labels Sep 25, 2024
@itamarreif itamarreif force-pushed the itamarreif/auctioneer/eng-824 branch from c745a13 to 4b85dbe Compare September 25, 2024 20:21
@bharath-123 bharath-123 force-pushed the itamarreif/auctioneer/initial-protos branch from 009764a to 30b0a5a Compare September 26, 2024 14:54
@itamarreif itamarreif force-pushed the itamarreif/auctioneer/initial-protos branch from 30b0a5a to b91925a Compare September 26, 2024 15:50
@itamarreif itamarreif force-pushed the itamarreif/auctioneer/eng-824 branch 2 times, most recently from eeac942 to 8e0f93a Compare September 26, 2024 15:51
@itamarreif itamarreif force-pushed the itamarreif/auctioneer/eng-824 branch from c0bfc80 to de15c44 Compare November 7, 2024 23:01
@itamarreif itamarreif marked this pull request as ready for review November 15, 2024 04:45
@itamarreif itamarreif requested a review from a team as a code owner November 15, 2024 04:45
@itamarreif itamarreif marked this pull request as draft November 18, 2024 03:02
@joroshiba
Copy link
Member

This PR is stale because it has been open 45 days with no activity. Remove stale label or this PR will be
closed in 7 days.

@joroshiba joroshiba added the stale label Jan 4, 2025
@SuperFluffy
Copy link
Member

Closing this in favor of #1839

@SuperFluffy SuperFluffy closed this Jan 7, 2025
SuperFluffy added a commit that referenced this pull request Jan 10, 2025
## Summary
Adds a Helm chart for deploying the Auctioneer.

## Background
[PR #1556](#1556) adds the
auctioneer binary. This binary has clients to both rollup and sequencer
nodes.

## Changes
- Add the `charts/auctioneer` directory for the auctioneer binary
- Add commands to `charts/deploy.just` for deploying/deleting the
auctioneer chart in our k8s cluster
- Add `dev/auctioneer/values.yaml` for dev values for the auctioneer.
- Add the auctioneer's dev wallet to the genesis allocations in
`dev/validators/all.yaml` so that the auctioneer has a balance while
testing against the dev cluster.
- Expose the bundle grpc service from the rollup chart so that the
auctioneer can talk to it from within the cluster

## Testing
How are these changes tested?

## Breaking Changelist
- Bulleted list of breaking changes, any notes on migration. Delete
section if none.

## Related Issues
Link any issues that are related, prefer full github links.

closes #1766

---------

Co-authored-by: Richard Janis Goldschmidt <[email protected]>
SuperFluffy added a commit that referenced this pull request Jan 10, 2025
## Summary
Adds a Helm chart for deploying the Auctioneer.

## Background
[PR #1556](#1556) adds the
auctioneer binary. This binary has clients to both rollup and sequencer
nodes.

## Changes
- Add the `charts/auctioneer` directory for the auctioneer binary
- Add commands to `charts/deploy.just` for deploying/deleting the
auctioneer chart in our k8s cluster
- Add `dev/auctioneer/values.yaml` for dev values for the auctioneer.
- Add the auctioneer's dev wallet to the genesis allocations in
`dev/validators/all.yaml` so that the auctioneer has a balance while
testing against the dev cluster.
- Expose the bundle grpc service from the rollup chart so that the
auctioneer can talk to it from within the cluster

## Testing
How are these changes tested?

## Breaking Changelist
- Bulleted list of breaking changes, any notes on migration. Delete
section if none.

## Related Issues
Link any issues that are related, prefer full github links.

closes #1766

---------

Co-authored-by: Richard Janis Goldschmidt <[email protected]>
SuperFluffy pushed a commit that referenced this pull request Jan 13, 2025
Adds a Helm chart for deploying the Auctioneer.

[PR #1556](#1556) adds the
auctioneer binary. This binary has clients to both rollup and sequencer
nodes.

- Add the `charts/auctioneer` directory for the auctioneer binary
- Add commands to `charts/deploy.just` for deploying/deleting the
auctioneer chart in our k8s cluster
- Add `dev/auctioneer/values.yaml` for dev values for the auctioneer.
- Add the auctioneer's dev wallet to the genesis allocations in
`dev/validators/all.yaml` so that the auctioneer has a balance while
testing against the dev cluster.
- Expose the bundle grpc service from the rollup chart so that the
auctioneer can talk to it from within the cluster

Link any issues that are related, prefer full github links.

closes #1766

---------

Co-authored-by: Richard Janis Goldschmidt <[email protected]>

feat(charts): update evm-rollup charts for auctioneer (#1901)

Update the evm-rollup genesis charts to include
`astriaAuctioneerAddresses` which is a map of block height to auctioneer
addresses. We also add a new flag to geth called `auctioneer` which
enables auctioneer functionality in the flame node.

The auctioneer binary submits a signed bundle to the sequencer which the
flame side of the auctioneer unbundles and verifies. To verify the
bundle signature, the flame side requires the bech32 address of the
sequencer key which signed bundle. We pass the bech32 address of the
sequencer key to the flame side by adding it as a field in the genesis
file of the flame EVM rollup.

We also add a new flag in geth `auctioneer` which enables the auctioneer
funcationality in a geth node.

- Add a field `astriaAuctioneerAddresses` to the
`charts/evm-rollup/files/genesis/geth-genesis.json` which is
parameterized by `auctioneerAddresses`
- Add a field in the `charts/evm-rollup/values.yaml` and
`dev/rollup/dev.yaml` called `auctioneerAddresses`

By running the charts locally.

closes #1829
SuperFluffy pushed a commit that referenced this pull request Jan 14, 2025
Adds a Helm chart for deploying the Auctioneer.

[PR #1556](#1556) adds the
auctioneer binary. This binary has clients to both rollup and sequencer
nodes.

- Add the `charts/auctioneer` directory for the auctioneer binary
- Add commands to `charts/deploy.just` for deploying/deleting the
auctioneer chart in our k8s cluster
- Add `dev/auctioneer/values.yaml` for dev values for the auctioneer.
- Add the auctioneer's dev wallet to the genesis allocations in
`dev/validators/all.yaml` so that the auctioneer has a balance while
testing against the dev cluster.
- Expose the bundle grpc service from the rollup chart so that the
auctioneer can talk to it from within the cluster

Link any issues that are related, prefer full github links.

closes #1766

---------

Co-authored-by: Richard Janis Goldschmidt <[email protected]>

feat(charts): update evm-rollup charts for auctioneer (#1901)

Update the evm-rollup genesis charts to include
`astriaAuctioneerAddresses` which is a map of block height to auctioneer
addresses. We also add a new flag to geth called `auctioneer` which
enables auctioneer functionality in the flame node.

The auctioneer binary submits a signed bundle to the sequencer which the
flame side of the auctioneer unbundles and verifies. To verify the
bundle signature, the flame side requires the bech32 address of the
sequencer key which signed bundle. We pass the bech32 address of the
sequencer key to the flame side by adding it as a field in the genesis
file of the flame EVM rollup.

We also add a new flag in geth `auctioneer` which enables the auctioneer
funcationality in a geth node.

- Add a field `astriaAuctioneerAddresses` to the
`charts/evm-rollup/files/genesis/geth-genesis.json` which is
parameterized by `auctioneerAddresses`
- Add a field in the `charts/evm-rollup/values.yaml` and
`dev/rollup/dev.yaml` called `auctioneerAddresses`

By running the charts locally.

closes #1829
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auctioneer cd ci issues that are related to ci and github workflows conductor pertaining to the astria-conductor crate docker proto pertaining to the Astria Protobuf spec sequencer pertaining to the astria-sequencer crate stale
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Auctioneer binary scaffolding
3 participants