Skip to content

implement extended evm service interface #16429

implement extended evm service interface

implement extended evm service interface #16429

Workflow file for this run

name: Go Module Cache
# This workflow is responsible for updating the Go Module Cache.
# It will maintain the cache: linux-gomod-1-<hash>
# All other workflows should only restore this cache.
# This workflow is useful because it will:
# 1. Create the cache if it doesn't exist
# - This can be a problem when multiple jobs load the same cache.
# Only one will get priority to create the cache.
# 2. Should not fail, therefore creating a cache
# - When a Job errors/fails it will not upload a new cache.
# So when test/build jobs are responsible for creating the new cache,
# they can fail causing cache misses on subsequent runs. Even though
# the dependencies haven't changed.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
- develop
pull_request:
workflow_dispatch:
jobs:
go-cache:
name: Go Cache
runs-on: ubuntu-latest
steps:
- name: Checkout the repo
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup Go
uses: ./.github/actions/setup-go
with:
only-modules: "true"
restore-module-cache-only: "false"
- name: Install Dependencies
shell: bash
run: go mod download
go-cache-self-hosted:
name: Go Cache
runs-on: runs-on=${{ github.run_id }}/cpu=8/ram=16+32/family=c6id+m6id+m6idn/spot=false/extras=s3-cache
steps:
# enable runs-on magic cache
- uses: runs-on/action@66d4449b717b5462159659523d1241051ff470b9 # v1
- name: Setup self-hosted directory mounts
# For self-hosted runners - the volume mounted to / is too small to handle everything stored in
# /home/runner. So we mount certain directories to the larger volume.
run: |
if [ ! -d "/home/runner/_work" ]; then
echo "::warning::/home/runner/_work does not exist, skipping mount."
exit 0
fi
# Define the directories to mount as tuples of source:destination
DIRS=(
"/home/runner/_work/runner-go:/home/runner/go"
"/home/runner/_work/runner-cache:/home/runner/.cache"
)
# Process each directory pair
for DIR_PAIR in "${DIRS[@]}"; do
SRC_DIR=$(echo $DIR_PAIR | cut -d':' -f1)
DEST_DIR=$(echo $DIR_PAIR | cut -d':' -f2)
sudo mkdir -m 755 "$SRC_DIR"
sudo chown -R $(id -u):$(id -g) "$SRC_DIR"
mkdir -p "$DEST_DIR"
sudo mount --bind "$SRC_DIR" "$DEST_DIR"
echo "Successfully mounted $SRC_DIR to $DEST_DIR"
done
- name: Checkout the repo
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup Go
uses: ./.github/actions/setup-go
with:
only-modules: "true"
restore-module-cache-only: "false"
- name: Install Dependencies
shell: bash
run: go mod download