-
Notifications
You must be signed in to change notification settings - Fork 15
feat(infra): introduce ENSRainbow Searchlight service #1579
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📝 WalkthroughWalkthroughA new searchlight service variant is introduced for the ENSRAINBOW deployment infrastructure. The GitHub Actions workflow is updated to include the new service identifier throughout deployment phases, while Terraform configuration adds a corresponding module instance with parameterized naming to support multiple service variants. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces a second ENSRainbow service instance called "Searchlight" to Blue, Green, and Yellow environments. The implementation adds a configurable suffix mechanism to the ENSRainbow Terraform module, enabling multiple instances of the service to coexist with different configurations.
Changes:
- Added a
svc_name_suffixvariable to the ENSRainbow Terraform module to support multiple service instances - Created a new
ensrainbow_searchlightmodule instance with label set ID "searchlight" - Updated Blue/Green deployment workflows to manage the new Searchlight service alongside the original ENSRainbow service
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| terraform/modules/ensrainbow/variables.tf | Added svc_name_suffix variable with empty string default to support service name customization |
| terraform/modules/ensrainbow/main.tf | Applied suffix to service and disk names to enable multiple instances |
| terraform/main.tf | Created ensrainbow_searchlight module instance with "-searchlight" suffix and "searchlight" label set ID |
| .github/workflows/deploy_ensnode_blue_green.yml | Added ENSRAINBOW_SEARCHLIGHT_SVC_ID secrets, deployment steps, and improved alignment formatting |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Greptile OverviewGreptile SummaryAdded ENSRainbow Searchlight service to Blue, Green, and Yellow environments by extending the existing Changes:
Notes:
Confidence Score: 4/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant Dev as Developer
participant GH as GitHub Actions
participant Railway as Railway Platform
participant Render as Render Platform
participant TF as Terraform
Note over Dev,TF: Blue/Green Deployment Flow
Dev->>GH: Trigger workflow_dispatch<br/>(target: blue/green, tag: version)
GH->>GH: Validate Docker images exist
GH->>GH: Set environment variables<br/>(ENSRAINBOW_SEARCHLIGHT_SVC_ID)
GH->>Railway: Update service images<br/>(incl. ENSRAINBOW_SEARCHLIGHT)
GH->>Railway: Redeploy all services<br/>(incl. ENSRAINBOW_SEARCHLIGHT)
Railway-->>GH: Deployment complete
Note over Dev,TF: Yellow Deployment Flow (Terraform)
Dev->>GH: Trigger workflow_dispatch<br/>(tag: version)
GH->>GH: Validate Docker images exist
GH->>TF: terraform init/plan/apply
TF->>Render: Create ensrainbow_searchlight module
Note over TF,Render: ensrainbow-searchlight service<br/>disk: ensrainbow-data-searchlight<br/>label_set_id: "searchlight"
TF->>Render: Update existing ensrainbow service
Render-->>TF: Services deployed
TF-->>GH: Terraform apply complete
Note over Dev,Render: Existing ENSIndexers still reference<br/>only original ensrainbow URL
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
2 files reviewed, 1 comment
Additional Comments (1)
Prompt To Fix With AIThis is a comment left during a code review.
Path: terraform/main.tf
Line: 138:138
Comment:
Indexers still reference only `module.ensrainbow.ensrainbow_url`. Check whether they should also connect to the Searchlight instance, or if the Searchlight service is intended for a different client.
How can I resolve this? If you propose a fix, please make it concise. |
Lite PR
Tip: Review docs on the ENSNode PR process
Summary
Why
Testing
Notes for Reviewer (Optional)
BLUE_ENSRAINBOW_SEARCHLIGHT_SVC_IDGREEN_ENSRAINBOW_SEARCHLIGHT_SVC_IDPre-Review Checklist (Blocking)