Skip to content

Commit 3ed49f9

Browse files
authored
Merge branch 'master' into feat/xatu-sidecar
2 parents e3f3781 + f04e20e commit 3ed49f9

File tree

7 files changed

+121
-3
lines changed

7 files changed

+121
-3
lines changed
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
name: Build syncoor docker image
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
repository:
7+
description: The source syncoor repository to build from
8+
default: ethpandaops/syncoor
9+
type: string
10+
required: true
11+
ref:
12+
description: The branch, tag or SHA to checkout and build from
13+
default: master
14+
type: string
15+
required: true
16+
docker_tag:
17+
description: Override target docker tag (defaults to the above source ref if left blank)
18+
type: string
19+
required: false
20+
21+
jobs:
22+
prepare:
23+
runs-on: ubuntu-latest
24+
outputs:
25+
platforms: ${{ steps.setup.outputs.platforms }}
26+
target_tag: ${{ steps.tag.outputs.docker_tag }}
27+
steps:
28+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
29+
- name: Prepare Matrix
30+
id: setup
31+
uses: ./.github/actions/prepare
32+
with:
33+
client: 'syncoor'
34+
- name: Generate target tag
35+
id: tag
36+
uses: ./.github/actions/docker-tag
37+
with:
38+
input: ${{ inputs.docker_tag || inputs.ref }}
39+
deploy:
40+
needs:
41+
- prepare
42+
runs-on: ${{ matrix.runner }}
43+
continue-on-error: true
44+
strategy:
45+
matrix:
46+
include: ${{fromJson(needs.prepare.outputs.platforms)}}
47+
outputs:
48+
git_commit_hash: ${{ steps.set_output.outputs.git_commit_hash }}
49+
steps:
50+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
51+
- uses: ./.github/actions/install-deps
52+
with:
53+
repository: ${{ inputs.repository }}
54+
- uses: ./.github/actions/deploy
55+
id: deploy
56+
with:
57+
source_repository: ${{ inputs.repository }}
58+
source_ref: ${{ inputs.ref }}
59+
target_tag: ${{ needs.prepare.outputs.target_tag }}-${{ matrix.slug }}
60+
target_repository: ethpandaops/syncoor
61+
platform: ${{ matrix.platform }}
62+
63+
DOCKER_USERNAME: "${{ vars.DOCKER_USERNAME }}"
64+
DOCKER_PASSWORD: "${{ secrets.DOCKER_PASSWORD }}"
65+
MACOS_PASSWORD: "${{ secrets.MACOS_PASSWORD }}"
66+
GOPROXY: "${{ vars.GOPROXY }}"
67+
HARBOR_USERNAME: "${{ vars.HARBOR_USERNAME }}"
68+
HARBOR_PASSWORD: "${{ secrets.HARBOR_PASSWORD }}"
69+
harbor_registry: ${{ vars.HARBOR_REGISTRY }}
70+
71+
# This step captures the git commit hash from the deploy action for job output
72+
- name: Set job output
73+
id: set_output
74+
run: echo "git_commit_hash=${{ steps.deploy.outputs.git_commit_hash }}" >> $GITHUB_OUTPUT
75+
shell: bash
76+
manifest:
77+
needs:
78+
- prepare
79+
- deploy
80+
runs-on: ubuntu-latest
81+
steps:
82+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
83+
- uses: ./.github/actions/manifest
84+
with:
85+
source_repository: ${{ inputs.repository }}
86+
source_ref: ${{ inputs.ref }}
87+
target_tag: ${{ needs.prepare.outputs.target_tag }}
88+
target_repository: ethpandaops/syncoor
89+
platforms: ${{ needs.prepare.outputs.platforms }}
90+
harbor_registry: ${{ vars.HARBOR_REGISTRY }}
91+
HARBOR_USERNAME: "${{ vars.HARBOR_USERNAME }}"
92+
HARBOR_PASSWORD: "${{ secrets.HARBOR_PASSWORD }}"
93+
git_commit_hash: ${{ needs.deploy.outputs.git_commit_hash }}
94+
DOCKER_USERNAME: "${{ vars.DOCKER_USERNAME }}"
95+
DOCKER_PASSWORD: "${{ secrets.DOCKER_PASSWORD }}"
96+
notify:
97+
name: Discord Notification
98+
runs-on: ubuntu-latest
99+
needs:
100+
- prepare
101+
- deploy
102+
- manifest
103+
if: failure()
104+
steps:
105+
- name: Notify
106+
uses: nobrayner/discord-webhook@1766a33bf571acdcc0678f00da4fb83aad01ebc7 # v1
107+
with:
108+
github-token: ${{ secrets.github_token }}
109+
discord-webhook: ${{ secrets.DISCORD_WEBHOOK }}

.github/workflows/scheduled.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
configs: ${{ steps.repo_check.outputs.configs }}
1717
steps:
1818
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
19-
- uses: mikefarah/yq@b534aa9ee5d38001fba3cd8fe254a037e4847b37 # v4.45.4
19+
- uses: mikefarah/yq@f03c9dc599c37bfcaf533427211d05e51e6fee64 # v4.47.1
2020
- name: Set up Python
2121
uses: actions/setup-python@v5
2222
with:

.github/workflows/vet.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ jobs:
3737
run: pip install PyYAML
3838
- name: Generate config.yaml
3939
run: python3 generate_config.py
40-
- uses: mikefarah/yq@b534aa9ee5d38001fba3cd8fe254a037e4847b37 # v4.45.4
40+
- uses: mikefarah/yq@f03c9dc599c37bfcaf533427211d05e51e6fee64 # v4.47.1
4141
- name: duplicate repository tag check
4242
run: |
4343
OUTPUT=$(yq 'group_by(.target.repository + ":" + .target.tag) | map(select(length>1))' config.yaml)

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ Run the *Build **tooling*** workflow;
3232
- [Build ethereum-genesis-generator](https://github.com/ethpandaops/eth-client-docker-image-builder/actions/workflows/build-push-genesis-generator.yml) [[source](https://github.com/ethpandaops/ethereum-genesis-generator)]
3333
- [Build mev-rs](https://github.com/ethpandaops/eth-client-docker-image-builder/actions/workflows/build-push-mev-rs.yml) [[source](https://github.com/ralexstokes/mev-rs)]
3434
- [Build reth-rbuilder](https://github.com/ethpandaops/eth-client-docker-image-builder/actions/workflows/build-push-reth-rbuilder.yml) [[source](https://github.com/flashbots/rbuilder)]
35+
- [Build Syncoor](https://github.com/ethpandaops/eth-client-docker-image-builder/actions/workflows/build-push-syncoor.yml) [[source](https://github.com/ethpandaops/syncoor)]
3536

3637
## Adding a new image to build on schedule
3738

branches.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,3 +202,7 @@ eth-das-guardian:
202202
# Commented out in config.yaml
203203
# goevmlab:
204204
# branches: ["master"]
205+
206+
syncoor:
207+
branches:
208+
- master

generate_config.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@
3434
'mev-boost': 'flashbots/mev-boost',
3535
'mev-boost-relay': 'flashbots/mev-boost-relay',
3636
'goevmlab': 'holiman/goevmlab',
37-
'eth-das-guardian': 'probe-lab/eth-das-guardian'
37+
'eth-das-guardian': 'probe-lab/eth-das-guardian',
38+
'syncoor': 'ethpandaops/syncoor'
3839
# Add more defaults as needed
3940
}
4041

platforms.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,3 +96,6 @@ ethrex:
9696
eth-das-guardian:
9797
- linux/amd64
9898
- linux/arm64
99+
syncoor:
100+
- linux/amd64
101+
- linux/arm64

0 commit comments

Comments
 (0)