Skip to content

Commit

Permalink
Merge branch 'master' of github.com:NethermindEth/Taiko-Preconf-AVS-N…
Browse files Browse the repository at this point in the history
…ode into master_v2
  • Loading branch information
mskrzypkows committed Jan 3, 2025
2 parents 7b829c6 + 753c107 commit b0d3b88
Show file tree
Hide file tree
Showing 6 changed files with 166 additions and 48 deletions.
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Node/target
69 changes: 69 additions & 0 deletions .github/workflows/avs_docker_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: "[Nethermind] Taiko Preconf AVS - Docker build and push"

on:
workflow_dispatch:
push:
branches: [master]
tags:
- "taiko-preconf-avs-v*"
paths:
- "Node/**"
- "p2pNode/p2pNetwork/**"

env:
DOCKER_REGISTRY: docker.io
DOCKER_USERNAME: nethswitchboard
DOCKER_REPOSITORY_DEV: taiko-preconf-avs-dev

jobs:
build:
name: Build and push docker image
runs-on: ubuntu-latest
if: github.repository == 'NethermindEth/Taiko-Preconf-AVS'
steps:
- name: Checkout
uses: actions/checkout@v4

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

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

- uses: docker/login-action@v3
with:
registry: ${{ env.DOCKER_REGISTRY }}
username: ${{ env.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_USERNAME }}/${{ env.DOCKER_REPOSITORY_DEV }}
tags: |
type=raw,value=latest
type=ref,event=branch
type=ref,event=pr
type=ref,event=tag
type=sha
- name: Build and push by digest
id: build
uses: docker/build-push-action@v5
with:
platforms: linux/amd64,linux/arm64
context: .
file: Dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}

- name: Summary
run: |
echo "## Docker build completed :green_circle:" >> $GITHUB_STEP_SUMMARY
echo "### Tags" >> $GITHUB_STEP_SUMMARY
echo "${{ steps.meta.outputs.tags }}" | while IFS= read -r TAG; do
echo "- $TAG" >> $GITHUB_STEP_SUMMARY
done
echo "### Notes" >> $GITHUB_STEP_SUMMARY
68 changes: 68 additions & 0 deletions .github/workflows/avs_protocol_docker_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: "[Nethermind] Taiko Preconf AVS Protocol- Docker build and push"

on:
workflow_dispatch:
push:
branches: [master]
tags:
- "taiko-preconf-avs-protocol-v*"
paths:
- "SmartContracts/**"

env:
DOCKER_REGISTRY: docker.io
DOCKER_USERNAME: nethswitchboard
DOCKER_REPOSITORY_DEV: taiko-preconf-avs-protocol-dev

jobs:
build:
name: Build and push docker image
runs-on: ubuntu-latest
if: github.repository == 'NethermindEth/Taiko-Preconf-AVS'
steps:
- name: Checkout
uses: actions/checkout@v4

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

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

- uses: docker/login-action@v3
with:
registry: ${{ env.DOCKER_REGISTRY }}
username: ${{ env.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.DOCKER_REGISTRY }}${{ env.DOCKER_USERNAME }}/${{ env.DOCKER_REPOSITORY_DEV }}
tags: |
type=raw,value=latest
type=ref,event=branch
type=ref,event=pr
type=ref,event=tag
type=sha
- name: Build and push by digest
id: build
uses: docker/build-push-action@v5
with:
platforms: linux/amd64,linux/arm64
context: ./SmartContracts
file: ./SmartContracts/Dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}

- name: Summary
run: |
echo "## Docker build completed :green_circle:" >> $GITHUB_STEP_SUMMARY
echo "### Tags" >> $GITHUB_STEP_SUMMARY
echo "${{ steps.meta.outputs.tags }}" | while IFS= read -r TAG; do
echo "- $TAG" >> $GITHUB_STEP_SUMMARY
done
echo "### Notes" >> $GITHUB_STEP_SUMMARY
28 changes: 7 additions & 21 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,31 +1,17 @@
FROM docker.io/library/rust:1.83 AS builder

# Set the working directory inside the container
WORKDIR /usr/src/taiko_preconf_avs_node
WORKDIR /app/taiko_preconf_avs_node

# Copy the project files
COPY ../Node/src /usr/src/taiko_preconf_avs_node/src
COPY ../Node/Cargo.toml /usr/src/taiko_preconf_avs_node/Cargo.toml
COPY ../Node/Cargo.lock /usr/src/taiko_preconf_avs_node/Cargo.lock
COPY ../Node /app/taiko_preconf_avs_node
COPY ../p2pNode/p2pNetwork /app/p2pNode/p2pNetwork

# Copy the dependency directory
COPY ../p2pNode/p2pNetwork /usr/src/p2pNode/p2pNetwork

# Build the project in release mode
RUN cargo build -p taiko_preconf_avs_node --release

# Use ubuntu as the base image
FROM ubuntu:latest

# Install ca-certificates
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates \
&& rm -rf /var/lib/apt/lists/*
FROM alpine:latest

# Copy the build artifact from the builder stage
COPY --from=builder /usr/src/taiko_preconf_avs_node/target/release/taiko_preconf_avs_node /usr/local/bin/taiko_preconf_avs_node
# TODO:Install ca-certificates, fix for alpine
RUN apk add --no-cache ca-certificates

# Expose the port that the server will run on
# EXPOSE 9000
COPY --from=builder /app/taiko_preconf_avs_node/target/release/taiko_preconf_avs_node /usr/local/bin/taiko_preconf_avs_node

# Run the binary
ENTRYPOINT ["taiko_preconf_avs_node"]
21 changes: 21 additions & 0 deletions SmartContracts/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
FROM node:22

WORKDIR /app

COPY . .

RUN apt-get update && apt-get install -y jq

RUN git init && \
curl -L https://foundry.paradigm.xyz | bash && \
npm install -g pnpm && \
. ~/.bashrc && \
foundryup && \
forge install && \
pnpm install

ENV PATH="/root/.foundry/bin:$PATH"

ENTRYPOINT ["sh", "-c"]

CMD ["echo Please verify the environment variables and command."]
27 changes: 0 additions & 27 deletions avs-deploy

This file was deleted.

0 comments on commit b0d3b88

Please sign in to comment.