Skip to main content

local-cre-e2e

Configure and run local CRE environments and CRE end-to-end tests in the chainlink repo. Use this when starting local CRE on the default topology, running smoke or regression CRE tests, or creating a custom topology to override flags, limits, capability config, or user config overrides.

설치로 이동

소스 정보

저장소
smartcontractkit/chainlink
최근 소스 활동
2026년 5월 22일 05:24
감지된 SKILL.md 언어
영어
스타
8,247
포크
1,988

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
2 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
local-cre-e2e
description
Configure and run local CRE environments and CRE end-to-end tests in the chainlink repo. Use this when starting local CRE on the default topology, running smoke or regression CRE tests, or creating a custom topology to override flags, limits, capability config, or user config overrides.
# Local CRE E2E Use this skill when working in the `chainlink` repo and you need to: - start, stop, or restart local CRE - run CRE smoke or regression e2e tests on the default topology - run a test against a specific topology - create a custom topology to override limits, flags, capability config, or user config overrides This skill is for local CRE system-test workflows, not for generic unit tests. ## Assumptions - Repo root is the `chainlink` checkout. - Local CRE commands are run from `core/scripts/cre/environment`. - CRE e2e test commands are run from `system-tests/tests`. - Only one local CRE environment should be treated as active at a time unless the harness is explicitly known to support isolation. ## Default Workflow Use the default topology when the user asks to run the standard local CRE suite or to verify a change without special flags. 1. Stop any existing local CRE environment: ```bash cd core/scripts/cre/environment go run . env stop -a ``` 2. If the environment has not been prepared yet, set it up once: ```bash cd core/scripts/cre/environment go run . env setup ``` 3. Start local CRE on the default topology: ```bash cd core/scripts/cre/environment go run . env start ``` 4. Optionally bring up observability helpers: ```bash go run . obs up ``` Use `--with-chip-ingress-stack` on `env start` when the test depends on the real stack, or when you want Red Panda Console to debug workflow events. (`--with-beholder` is deprecated.) ## Running E2E Tests On The Default Topology For the normal CRE smoke suite: ```bash cd system-tests/tests go test ./smoke/cre -timeout 20m -run '^Test_CRE_' ``` For only the V2 smoke suite: ```bash cd system-tests/tests go test ./smoke/cre -timeout 15m -run '^Test_CRE_V2' ``` For regression tests: ```bash cd system-tests/tests go test ./regression/cre -timeout 20m -run '^Test_CRE_' ``` Rule of thumb: - `smoke` is for happy-path and sanity coverage - `regression` is for edge cases and negative cases ## Running A Specific Test Or Bucket Use a narrow regex when debugging a single scenario or bucket: ```bash cd system-tests/tests go test ./smoke/cre -timeout 20m -run '^Test_CRE_V2_Suite_Bucket_B$' -count=1 -v ``` Examples: ```bash cd system-tests/tests go test ./smoke/cre -timeout 20m -run 'Test_CRE_V2_Suite_Bucket_B/.*/Vault' -count=1 -v ``` ```bash cd system-tests/tests go test ./regression/cre -timeout 20m -run '^Test_CRE_V2_Consensus_Regression$' -count=1 -v ``` Prefer `-count=1` when re-running flaky or stateful CRE scenarios. ## Using A Specific Topology Use a non-default topology when the test requires a specific DON layout, chain, or feature configuration. 1. Stop the existing environment: ```bash cd core/scripts/cre/environment go run . env stop -a ``` 2. Start local CRE with `CTF_CONFIGS` pointing at the topology file: ```bash cd core/scripts/cre/environment CTF_CONFIGS=./configs/workflow-gateway-capabilities-don.toml go run . env start ``` 3. Run the target test: ```bash cd system-tests/tests TOPOLOGY_NAME=workflow-gateway-capabilities \ go test ./smoke/cre -timeout 20m -run '^Test_CRE_V2_Suite_Bucket_B$' -count=1 -v ``` `TOPOLOGY_NAME` is optional but useful because many CRE suite tests include it in subtest names. ## Creating A Custom Topology Create a custom topology when the user wants to override: - limits - feature flags - capability config - DON composition - additional sources - `user_config_overrides` Workflow: 1. Pick the closest existing topology from `core/scripts/cre/environment/configs/`. 2. Copy it to a new file in the same directory. 3. Change only the fields needed for the scenario. 4. Start local CRE with `CTF_CONFIGS=<new topology>`. 5. Run only the relevant tests first. Example: ```bash cd core/scripts/cre/environment/configs cp workflow-gateway-capabilities-don.toml workflow-gateway-capabilities-don-my-override.toml ``` Then start it: ```bash cd ../ CTF_CONFIGS=./configs/workflow-gateway-capabilities-don-my-override.toml go run . env start ``` Then run the intended tests: ```bash cd ../../../system-tests/tests TOPOLOGY_NAME=workflow-gateway-capabilities-my-override \ go test ./smoke/cre -timeout 20m -run '^Test_CRE_V2_Suite_Bucket_B$' -count=1 -v ``` ## Override Guidelines When making a custom topology: - keep the diff small and purpose-specific - prefer copying the nearest topology instead of building a new one from scratch - use a descriptive filename that states what changed - do not change unrelated images, chains, or capabilities unless the test needs it - if the topology is only for a one-off local check, keep it local and avoid adding it to CI Typical override points: - `nodesets.capability_configs` - `nodesets.user_config_overrides` - CRE feature flags - additional mock or support-service endpoints ## Restart And Cleanup When changing topology or low-level config, prefer a full stop/start instead of assuming the running environment will converge. Clean restart: ```bash cd core/scripts/cre/environment go run . env stop -a CTF_CONFIGS=./configs/<topology>.toml go run . env start ``` When done: ```bash cd core/scripts/cre/environment go run . env stop -a ``` ## Troubleshooting - If tests unexpectedly use the wrong topology, stop local CRE and restart with the intended `CTF_CONFIGS`. - If the test suite appears to reuse stale state, rerun with `-count=1`. - If a test depends on logs, traces, or dashboards, bring up `go run . obs up`. - If a topology-specific failure looks unrelated to the test, first confirm the environment actually started with the intended topology. ## References For longer repo-specific guidance, see: - `docs/local-cre/index.md` - `docs/local-cre/system-tests/index.md` - `docs/local-cre/system-tests/running-tests.md`
GitHub에서 보기