Repository navigation
Devenv Codegen - #2221
Merged
Merged
Devenv Codegen#2221
Conversation
Tofel
previously approved these changes
Nov 4, 2025
skudasov
marked this pull request as ready for review
November 20, 2025 13:08
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR introduces a comprehensive developer environment generator for Chainlink testing, enabling automated creation of complete test environments with infrastructure and CI configurations. The changes streamline the setup process for system-level testing using the Chainlink Testing Framework (CTF).
Key Changes:
- Added CLI command for generating complete Chainlink developer environments with configurable node counts and network types
- Implemented Go runtime version detection for code generation to ensure compatibility
- Enhanced chaos test naming to include pod label information for better test identification
Reviewed Changes
Copilot reviewed 8 out of 11 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/framework-codegen.yml |
New CI workflow for testing the code generation framework |
book/src/SUMMARY.md |
Reorganized documentation structure to emphasize the new generator-first workflow |
book/src/framework/generate.md |
Updated documentation covering both environment and infrastructure test generation |
framework/.gitignore |
Added patterns to exclude generated development environments from version control |
framework/cmd/main.go |
Implemented the gen env CLI command with interactive shell support |
framework/config.go |
Refactored string replacement to use ReplaceAll and updated file permissions to octal notation |
framework/tmpl_gen_test.go |
Added end-to-end test validating environment generation and health checks |
wasp/tmpl_generator.go |
Enhanced with dynamic Go version detection and improved chaos test case naming |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
kdihalas
previously approved these changes
Nov 20, 2025
skudasov
enabled auto-merge (squash)
November 20, 2025 17:02
gustavogama-cll
previously approved these changes
Nov 20, 2025
gustavogama-cll
previously approved these changes
Nov 20, 2025
skudasov
disabled auto-merge
November 20, 2025 17:21
- Add ensureJustInstalled() function to check and install 'just' automatically - On macOS, automatically installs via Homebrew if available - Provides helpful error messages with installation instructions for other platforms - Update documentation to reflect automatic installation capability - Fixes issue where environment generation failed when 'just' was not in PATH
ecPablo
approved these changes
Nov 20, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This template enforces a simple workflow that developers can adapt when building system-level tests using CTF, see CLI docs:
Below is a summarization created by an LLM (gpt-4-0125-preview). Be mindful of hallucinations and verify accuracy.
Why
The code changes introduce a new framework for generating developer environments, CI configurations, and end-to-end tests for blockchain-based applications. These changes aim to streamline the setup and testing process for developers, making it easier to build, test, and deploy blockchain applications.
What
.github/workflows/framework-codegen.ymlfor Framework Code Generation CI configuration.book/src/SUMMARY.mdupdates to include Generating Developer Environment documentation.book/src/framework/generate.mdwith documentation on generating Chainlink environments and infrastructure testing templates..gitignoreinframework/to ignore generated development environments and automated test environments.framework/cmd/main.gofor generating developer environments and setting up Go environments.framework/components/dockercompose/go.sum.framework/components/fake/go.sumfor testing purposes.framework/tmpl_gen.goand added a test inframework/tmpl_gen_test.gofor validating the developer environment generation process.wasp/tmpl_generator.go.