Skip to content

feat(scripts): add witness caching for multi and cost_estimator (#776) #407

feat(scripts): add witness caching for multi and cost_estimator (#776)

feat(scripts): add witness caching for multi and cost_estimator (#776) #407

name: Build OP Succinct Lite Docker Images
on:
workflow_dispatch:
push:
paths-ignore:
- '**/*.pdf'
- '**/*.md'
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ !startsWith(github.ref, 'refs/tags/') && github.ref != 'refs/heads/main' }}
jobs:
build-proposer:
name: Build OP Succinct Lite Proposer
runs-on:
- runs-on
- cpu=16
- ram=64
- family=m7a+m7i-flex
- image=ubuntu22-full-x64
- run-id=${{ github.run_id }}
- disk=large
- spot=false
env:
DOCKER_BUILDKIT: 1
BUILDKIT_PROGRESS: plain
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ github.sha }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Cache
uses: actions/cache@v3
id: cache
with:
path: |
cargo-git
cargo-registry
target
key: cache-proposer-${{ hashFiles('Dockerfile.proposer') }}
restore-keys: |
cache-proposer-
- name: Docker meta for proposer
id: meta-proposer
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository }}/lite-proposer
tags: |
type=ref,event=tag
type=sha
latest
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push proposer
uses: docker/build-push-action@v6
with:
context: .
file: fault-proof/Dockerfile.proposer
push: true
tags: ${{ steps.meta-proposer.outputs.tags }}
labels: ${{ steps.meta-proposer.outputs.labels }}
cache-from: |
type=gha,scope=proposer
type=registry,ref=ghcr.io/${{ github.repository }}/lite-proposer:cache
cache-to: |
type=gha,mode=max,scope=proposer
type=registry,ref=ghcr.io/${{ github.repository }}/lite-proposer:cache,mode=max
build-args: |
BUILDKIT_INLINE_CACHE=1
build-proposer-celestia:
name: Build OP Succinct Lite Proposer Celestia
runs-on:
- runs-on
- cpu=16
- ram=64
- family=m7a+m7i-flex
- image=ubuntu22-full-x64
- run-id=${{ github.run_id }}
- disk=large
- spot=false
env:
DOCKER_BUILDKIT: 1
BUILDKIT_PROGRESS: plain
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ github.sha }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Cache
uses: actions/cache@v3
id: cache
with:
path: |
cargo-git
cargo-registry
target
key: cache-proposer-celestia-${{ hashFiles('Dockerfile.proposer.celestia') }}
restore-keys: |
cache-proposer-celestia-
- name: Docker meta for proposer-celestia
id: meta-proposer-celestia
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository }}/lite-proposer-celestia
tags: |
type=ref,event=tag
type=sha
latest
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push proposer-celestia
uses: docker/build-push-action@v6
with:
context: .
file: fault-proof/Dockerfile.proposer.celestia
push: true
tags: ${{ steps.meta-proposer-celestia.outputs.tags }}
labels: ${{ steps.meta-proposer-celestia.outputs.labels }}
cache-from: |
type=gha,scope=proposer-celestia
type=registry,ref=ghcr.io/${{ github.repository }}/lite-proposer-celestia:cache
cache-to: |
type=gha,mode=max,scope=proposer-celestia
type=registry,ref=ghcr.io/${{ github.repository }}/lite-proposer-celestia:cache,mode=max
build-args: |
BUILDKIT_INLINE_CACHE=1
build-proposer-eigenda:
name: Build OP Succinct Lite Proposer EigenDA
runs-on:
- runs-on
- cpu=16
- ram=64
- family=m7a+m7i-flex
- image=ubuntu22-full-x64
- run-id=${{ github.run_id }}
- disk=large
- spot=false
env:
DOCKER_BUILDKIT: 1
BUILDKIT_PROGRESS: plain
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ github.sha }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Cache
uses: actions/cache@v3
id: cache
with:
path: |
cargo-git
cargo-registry
target
key: cache-proposer-eigenda-${{ hashFiles('Dockerfile.proposer.eigenda') }}
restore-keys: |
cache-proposer-eigenda-
- name: Docker meta for proposer-eigenda
id: meta-proposer-eigenda
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository }}/lite-proposer-eigenda
tags: |
type=ref,event=tag
type=sha
latest
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push proposer-eigenda
uses: docker/build-push-action@v6
with:
context: .
file: fault-proof/Dockerfile.proposer.eigenda
push: true
tags: ${{ steps.meta-proposer-eigenda.outputs.tags }}
labels: ${{ steps.meta-proposer-eigenda.outputs.labels }}
cache-from: |
type=gha,scope=proposer-eigenda
type=registry,ref=ghcr.io/${{ github.repository }}/lite-proposer-eigenda:cache
cache-to: |
type=gha,mode=max,scope=proposer-eigenda
type=registry,ref=ghcr.io/${{ github.repository }}/lite-proposer-eigenda:cache,mode=max
build-args: |
BUILDKIT_INLINE_CACHE=1
build-challenger:
name: Build OP Succinct Lite Challenger
runs-on:
- runs-on
- cpu=16
- ram=64
- family=m7a+m7i-flex
- image=ubuntu22-full-x64
- run-id=${{ github.run_id }}
- disk=large
- spot=false
env:
DOCKER_BUILDKIT: 1
BUILDKIT_PROGRESS: plain
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ github.sha }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Cache
uses: actions/cache@v3
id: cache
with:
path: |
cargo-git
cargo-registry
target
key: cache-challenger-${{ hashFiles('Dockerfile.challenger') }}
restore-keys: |
cache-challenger-
- name: Docker meta for challenger
id: meta-challenger
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository }}/lite-challenger
tags: |
type=ref,event=tag
type=sha
latest
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push challenger
uses: docker/build-push-action@v6
with:
context: .
file: fault-proof/Dockerfile.challenger
push: true
tags: ${{ steps.meta-challenger.outputs.tags }}
labels: ${{ steps.meta-challenger.outputs.labels }}
cache-from: |
type=gha,scope=challenger
type=registry,ref=ghcr.io/${{ github.repository }}/lite-challenger:cache
cache-to: |
type=gha,mode=max,scope=challenger
type=registry,ref=ghcr.io/${{ github.repository }}/lite-challenger:cache,mode=max
build-args: |
BUILDKIT_INLINE_CACHE=1