Skip to content

Commit f49c258

Browse files
author
avenbreaks
committed
first commit default stack
0 parents  commit f49c258

File tree

175 files changed

+27951
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

175 files changed

+27951
-0
lines changed

.circleci/config.yml

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
version: 2.1
2+
3+
orbs:
4+
kurtosis-docs-checker: kurtosis-tech/docs-checker@0.2.3
5+
6+
executors:
7+
ubuntu_vm:
8+
machine:
9+
image: ubuntu-2204:current
10+
11+
parameters:
12+
should-enable-check-latest-version-workflow:
13+
type: boolean
14+
default: false
15+
# To enable/disabled the check_code workflow execution which will be triggered by the PR's checkers
16+
should-enable-build-workflow:
17+
type: boolean
18+
default: true
19+
kurtosis-cluster-setting-abs-filepath:
20+
type: string
21+
default: "/home/circleci/.local/share/kurtosis/cluster-setting"
22+
23+
24+
# Install go version 1.19 to run our integration tests on the minimal version we support
25+
setup_kurtosis: &setup_kurtosis
26+
- run: |
27+
echo "deb [trusted=yes] https://apt.fury.io/kurtosis-tech/ /" | sudo tee /etc/apt/sources.list.d/kurtosis.list
28+
sudo apt update
29+
sudo apt install kurtosis-cli
30+
kurtosis analytics disable
31+
kurtosis engine restart
32+
33+
# Steps to prepare a job for Kubernetes testing (with K3S K8S distribution)
34+
setup_kurtosis_k3s: &setup_kurtosis_k3s
35+
pre-steps:
36+
- run:
37+
name: Install Kurtosis
38+
command: |
39+
echo "deb [trusted=yes] https://apt.fury.io/kurtosis-tech/ /" | sudo tee /etc/apt/sources.list.d/kurtosis.list
40+
sudo apt update
41+
sudo apt install kurtosis-cli
42+
kurtosis analytics disable
43+
- run:
44+
name: Install K3D and create the K3D/K3S cluster on Docker
45+
command: |
46+
curl -s https://raw.githubusercontent.com/k3d-io/k3d/main/install.sh | bash
47+
k3d cluster create --servers 1 --no-lb --wait --verbose
48+
# Edit the Kurtosis config file in order to have K3S cluster configuration
49+
- run:
50+
name: Add K3S cluster config in Kurtosis config file
51+
command: |
52+
KURTOSIS_CONFIG_FILEPATH=$(kurtosis config path)
53+
cat \<< EOF > "$KURTOSIS_CONFIG_FILEPATH"
54+
config-version: 2
55+
should-send-metrics: true
56+
kurtosis-clusters:
57+
docker:
58+
type: docker
59+
k3d-k3s-default:
60+
type: kubernetes
61+
config:
62+
kubernetes-cluster-name: k3d-k3s-default
63+
storage-class: local-path
64+
enclave-size-in-megabytes: 2048
65+
EOF
66+
# Set the K3S cluster with some previous steps to force this cluster type in the cluster-setting file. This save us to start the engine with the cluster set command
67+
# because we are going to start it on the next step
68+
- run:
69+
name: Set K3S Kurtosis cluster
70+
command: |
71+
KURTOSIS_CLUSTER_SETTING_FILEPATH="<< pipeline.parameters.kurtosis-cluster-setting-abs-filepath >>"
72+
echo -n "k3d-k3s-default" > "$KURTOSIS_CLUSTER_SETTING_FILEPATH"
73+
echo "Kurtosis cluster-setting file content: $(cat $KURTOSIS_CLUSTER_SETTING_FILEPATH)"
74+
kurtosis cluster set k3d-k3s-default --cli-log-level trace
75+
- run:
76+
name: Start Kurtosis engine in K8s backend
77+
command: |
78+
kurtosis engine start --enclave-pool-size 2
79+
- run:
80+
name: Run Kurtosis gateway
81+
command: "kurtosis gateway"
82+
background: true
83+
84+
85+
# NOTE: Because CircleCI jobs run on separate machines from each other, we duplicate steps (like checkout) between jobs. This is because doing the "correct" DRY
86+
# refactoring of, "one job for checkout, one job for build Docker image, etc." would require a) persisting files between jobs and b) persisting Docker images between
87+
# jobs. Both are annoying (saving/loading workspaces require re-downloading the workspace over the network, and there doesn't seem to be a good way to do Docker
88+
# images), so we run everything inside a single job.
89+
# See also: https://discuss.circleci.com/t/can-docker-images-be-preserved-between-jobs-in-a-workflow-without-a-manual-load-save/23388/12
90+
jobs:
91+
run_starlark_arm64:
92+
executor: ubuntu_vm
93+
resource_class: arm.medium
94+
steps:
95+
- <<: *setup_kurtosis
96+
- checkout
97+
- run: kurtosis run ${PWD}
98+
99+
mev_k8s:
100+
executor: ubuntu_vm
101+
steps:
102+
- checkout
103+
- run: kurtosis run ${PWD} --verbosity detailed --args-file=./.github/tests/mev.yaml
104+
105+
mix_with_tools_k8s:
106+
resource_class: xlarge
107+
executor: ubuntu_vm
108+
steps:
109+
- checkout
110+
- run: kurtosis run ${PWD} --verbosity detailed --args-file=./.github/tests/mev.yaml
111+
112+
mix_persistence_k8s:
113+
resource_class: xlarge
114+
executor: ubuntu_vm
115+
steps:
116+
- checkout
117+
- run: kurtosis run ${PWD} "$(cat ./.github/tests/mix-persistence-k8s.yaml)"
118+
119+
workflows:
120+
nightly_tests:
121+
when: << pipeline.parameters.should-enable-check-latest-version-workflow >>
122+
jobs:
123+
- mev_k8s:
124+
<<: *setup_kurtosis_k3s
125+
- mix_with_tools_k8s:
126+
<<: *setup_kurtosis_k3s
127+
128+
per_pr_test:
129+
when: << pipeline.parameters.should-enable-build-workflow >>
130+
jobs:
131+
- kurtosis-docs-checker/check-docs:
132+
should-check-changelog: false
133+
markdown-link-check-config-json: |
134+
{
135+
"ignorePatterns": [
136+
{
137+
"pattern": "https://github.com/kurtosis-tech/ethereum-package"
138+
}
139+
]
140+
}
141+
filters:
142+
branches:
143+
ignore:
144+
- main
145+
146+
- run_starlark_arm64:
147+
filters:
148+
branches:
149+
ignore:
150+
- main
151+
152+
- mev_k8s:
153+
<<: *setup_kurtosis_k3s
154+
filters:
155+
branches:
156+
ignore:
157+
- main
158+
159+
- mix_with_tools_k8s:
160+
<<: *setup_kurtosis_k3s
161+
filters:
162+
branches:
163+
ignore:
164+
- main
165+
166+
- mix_persistence_k8s:
167+
<<: *setup_kurtosis_k3s
168+
filters:
169+
branches:
170+
ignore:
171+
- main

.editorconfig

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# EditorConfig is awesome: https://EditorConfig.org
2+
3+
# top-most EditorConfig file
4+
root = true
5+
6+
[*]
7+
indent_style = space
8+
indent_size = 2
9+
end_of_line = lf
10+
charset = utf-8
11+
trim_trailing_whitespace = true
12+
insert_final_newline = true
13+
14+
# This is the top-most .editorconfig file (do not search in parent directories)
15+
root = true
16+
17+
# 4 space indentation for all starlark files
18+
[*.star]
19+
indent_style = space
20+
indent_size = 4
21+
22+
# 4 space indentation for all python files
23+
[*.py]
24+
25+
# 2 space indentation for all yaml files
26+
[*.yml, *.yaml]
27+
indent_style = space
28+
indent_size = 2
29+
30+
# 2 space indentation for all json files
31+
[*.json]
32+
indent_style = space
33+
indent_size = 2
34+
35+
[*.yaml]
36+
indent_style = space
37+
indent_size = 2

.github/remove_trailing_space.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# This is used by the pr-description-update action
2+
# to trim trailing newlines and spaces in pr descriptions
3+
4+
import sys
5+
6+
def remove():
7+
line = sys.argv[1]
8+
return line.strip()
9+
10+
if __name__ == "__main__":
11+
print(remove())

.github/tests/apache.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
additional_services:
2+
- apache

.github/tests/assertoor.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
participants:
2+
- el_type: geth
3+
cl_type: lighthouse
4+
count: 1
5+
- el_type: geth
6+
cl_type: lodestar
7+
count: 1
8+
additional_services:
9+
- assertoor

.github/tests/besu-all.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
participants:
2+
- el_type: geth
3+
cl_type: teku
4+
- el_type: geth
5+
cl_type: teku
6+
- el_type: besu
7+
cl_type: prysm
8+
- el_type: besu
9+
cl_type: nimbus
10+
- el_type: besu
11+
cl_type: lighthouse
12+
- el_type: besu
13+
cl_type: lodestar
14+
additional_services: []

.github/tests/blobber.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
participants:
2+
- el_type: geth
3+
el_image: ethpandaops/geth:master
4+
cl_type: lighthouse
5+
blobber_enabled: true
6+
blobber_extra_params:
7+
- --proposal-action-frequency=1
8+
- "--proposal-action={\"name\": \"blob_gossip_delay\", \"delay_milliseconds\": 1500}"
9+
count: 1
10+
- el_type: geth
11+
el_image: ethpandaops/geth:master
12+
cl_type: lodestar
13+
count: 1
14+
network_params:
15+
deneb_fork_epoch: 1
16+
additional_services:
17+
- dora
18+
- blob_spammer

.github/tests/dencun-genesis.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
participants:
2+
- el_type: geth
3+
cl_type: teku
4+
- el_type: nethermind
5+
cl_type: prysm
6+
- el_type: erigon
7+
cl_type: nimbus
8+
- el_type: besu
9+
cl_type: lighthouse
10+
- el_type: reth
11+
cl_type: lodestar
12+
- el_type: ethereumjs
13+
cl_type: teku
14+
network_params:
15+
deneb_fork_epoch: 0
16+
additional_services: []
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
participants:
2+
- el_type: geth
3+
cl_type: teku
4+
- el_type: besu
5+
cl_type: lighthouse
6+
- el_type: reth
7+
cl_type: lodestar
8+
- el_type: erigon
9+
cl_type: nimbus
10+
- el_type: nethermind
11+
cl_type: prysm
12+
- el_type: ethereumjs
13+
cl_type: teku
14+
additional_services: []
15+
disable_peer_scoring: true

.github/tests/ephemery.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
participants:
2+
- el_type: geth
3+
cl_type: teku
4+
- el_type: nethermind
5+
cl_type: prysm
6+
- el_type: erigon
7+
cl_type: nimbus
8+
- el_type: besu
9+
cl_type: lighthouse
10+
- el_type: reth
11+
cl_type: lodestar
12+
- el_type: ethereumjs
13+
cl_type: teku
14+
network_params:
15+
network: "ephemery"
16+
additional_services: []

.github/tests/erigon-all.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
participants:
2+
- el_type: erigon
3+
cl_type: teku
4+
- el_type: erigon
5+
cl_type: prysm
6+
- el_type: erigon
7+
cl_type: nimbus
8+
- el_type: erigon
9+
cl_type: lighthouse
10+
- el_type: erigon
11+
cl_type: lodestar
12+
additional_services: []

.github/tests/ethereumjs-all.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
participants:
2+
- el_type: ethereumjs
3+
cl_type: teku
4+
- el_type: ethereumjs
5+
cl_type: prysm
6+
- el_type: ethereumjs
7+
cl_type: nimbus
8+
- el_type: ethereumjs
9+
cl_type: lighthouse
10+
- el_type: ethereumjs
11+
cl_type: lodestar
12+
additional_services: []

.github/tests/geth-all.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
participants:
2+
- el_type: geth
3+
cl_type: teku
4+
- el_type: geth
5+
cl_type: prysm
6+
- el_type: geth
7+
cl_type: nimbus
8+
- el_type: geth
9+
cl_type: lighthouse
10+
- el_type: geth
11+
cl_type: lodestar
12+
additional_services: []

.github/tests/grandine-all.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
participants:
2+
- el_type: geth
3+
cl_type: grandine
4+
- el_type: nethermind
5+
cl_type: grandine
6+
- el_type: erigon
7+
cl_type: grandine
8+
- el_type: besu
9+
cl_type: grandine
10+
- el_type: reth
11+
cl_type: grandine
12+
- el_type: ethereumjs
13+
cl_type: grandine
14+
additional_services: []
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
participants:
2+
- el_type: geth
3+
el_image: ethpandaops/geth:transition-post-genesis-04b0304
4+
cl_type: lighthouse
5+
cl_image: ethpandaops/lighthouse:verkle-trees-capella-2ffb8a9
6+
- el_type: geth
7+
el_image: ethpandaops/geth:transition-post-genesis-04b0304
8+
cl_type: lodestar
9+
cl_image: ethpandaops/lodestar:g11tech-verge-815364b
10+
network_params:
11+
electra_fork_epoch: 1
12+
network: holesky-shadowfork-verkle
13+
additional_services:
14+
- dora
15+
snooper_enabled: true
16+
persistent: true

0 commit comments

Comments
 (0)