Skip to content

Commit

Permalink
lint + workflow for blobstorage
Browse files Browse the repository at this point in the history
  • Loading branch information
cyberhorsey committed Oct 15, 2024
1 parent 4912932 commit a9c6d83
Show file tree
Hide file tree
Showing 4 changed files with 91 additions and 5 deletions.
85 changes: 85 additions & 0 deletions .github/workflows/blobstorage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
name: Blobstorage

on:
push:
branches: [main]
paths:
- "packages/blobstorage/**"
- "go.mod"
- "go.sum"
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- "packages/blobstorage/**"
- "go.mod"
- "go.sum"

jobs:
lint-blobstorage:
name: lint-blobstorage
if: ${{ github.event_name == 'pull_request' && github.event.pull_request.draft == false }}
runs-on: [arc-runner-set]
steps:
- uses: actions/setup-go@v5
with:
go-version: 1.23.0
- uses: actions/checkout@v4
- name: golangci-lint
uses: golangci/golangci-lint-action@v6
with:
# Optional: version of golangci-lint to use in form of v1.2 or v1.2.3 or `latest` to use the latest version
version: latest

# Optional: working directory, useful for monorepos
working-directory: ./packages/blobstorage
args: --config=.golangci.yml --timeout=4m

push-blobstorage-docker-image:
# Skip dependabot PRs
if: ${{ github.event_name == 'pull_request' && ! startsWith(github.ref, 'refs/heads/dependabot/') }}
name: Build and push docker image
runs-on: [arc-runner-set]

steps:
- name: Install Git
run: sudo apt-get update && sudo apt-get install -y git

- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.ref }}

- name: Login to GAR
uses: docker/login-action@v3
with:
registry: us-docker.pkg.dev
username: _json_key
password: ${{ secrets.GAR_JSON_KEY }}

- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: |
us-docker.pkg.dev/evmchain/images/blobstorage
tags: |
type=ref,event=branch
type=ref,event=pr
type=ref,event=tag
type=sha
- name: Build and push
uses: docker/build-push-action@v5
with:
push: true
context: .
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
build-args: |
PACKAGE=blobstorage
3 changes: 2 additions & 1 deletion packages/taiko-client/driver/txlist_fetcher/blob.go
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,8 @@ func (d *BlobFetcher) Fetch(

commitment := kzg4844.Commitment(common.FromHex(sidecar.KzgCommitment))
// temp fix, TODO: delete. these are bad blocks from bad proposals due to my API errors.
// useFirstBlob := meta.GetBlockID().Uint64() == 1587 || meta.GetBlockID().Uint64() == 1588 || meta.GetBlockID().Uint64() == 1589
// useFirstBlob := meta.GetBlockID().Uint64() == 1587 ||
// meta.GetBlockID().Uint64() == 1588 || meta.GetBlockID().Uint64() == 1589
// TODO: delete this later, temp fix as well.
useFirstBlob := meta.GetBlobTxListLength() > 0
if kzg4844.CalcBlobHashV1(sha256.New(), &commitment) == meta.GetBlobHash() || useFirstBlob {
Expand Down
4 changes: 2 additions & 2 deletions packages/taiko-client/preconfapi/builder/blob.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ func NewBlobTransactionBuilder(
// BuildBlockUnsigned implements the ProposeBlockTransactionBuilder interface to
// return an unsigned transaction, intended for preconfirmations.
func (b *BlobTransactionBuilder) BuildBlockUnsigned(
ctx context.Context,
_ context.Context,
opts BuildBlockUnsignedOpts,
) (*types.Transaction, error) {
txListBytes, err := signedTransactionsToTxListBytes(opts.SignedTransactions)
Expand Down Expand Up @@ -133,7 +133,7 @@ func (b *BlobTransactionBuilder) BuildBlockUnsigned(
// BuildBlocksUnsigned implements the ProposeBlockTransactionBuilder interface to
// return an unsigned transaction, intended for preconfirmations.
func (b *BlobTransactionBuilder) BuildBlocksUnsigned(
ctx context.Context,
_ context.Context,
opts BuildBlocksUnsignedOpts,
) (*types.Transaction, error) {
encodedParams := make([][]byte, 0)
Expand Down
4 changes: 2 additions & 2 deletions packages/taiko-client/preconfapi/builder/calldata.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ func NewCalldataTransactionBuilder(
// BuildBlockUnsigned implements the ProposeBlockTransactionBuilder interface to
// return an unsigned transaction, intended for preconfirmations.
func (b *CalldataTransactionBuilder) BuildBlockUnsigned(
ctx context.Context,
_ context.Context,
opts BuildBlockUnsignedOpts,
) (*types.Transaction, error) {
txListBytes, err := signedTransactionsToTxListBytes(opts.SignedTransactions)
Expand Down Expand Up @@ -117,7 +117,7 @@ func (b *CalldataTransactionBuilder) BuildBlockUnsigned(
// return an unsigned transaction for a tx with multiple blocks,
// intended for preconfirmations.
func (b *CalldataTransactionBuilder) BuildBlocksUnsigned(
ctx context.Context,
_ context.Context,
opts BuildBlocksUnsignedOpts,
) (*types.Transaction, error) {
encodedParams := make([][]byte, 0)
Expand Down

0 comments on commit a9c6d83

Please sign in to comment.