-
Notifications
You must be signed in to change notification settings - Fork 925
chore(gateway): Expose GraphQL API #1310
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
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
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.
❌ Changes requested. Reviewed everything up to 78fd7d5 in 2 minutes and 6 seconds
More details
- Looked at
80
lines of code in5
files - Skipped
0
files when reviewing. - Skipped posting
9
drafted comments based on config settings.
1. .env.example:140
-
Draft comment:
This environment variable with the same default value is already defined in the gateway service configuration. -
HASURA_URL environment variable (docker-compose.yml)
-
Reason this comment was not posted:
Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 10% vs. threshold = 50%
Having the same environment variable defined in multiple places with the same default value could potentially cause confusion or maintenance issues. However, .env.example is meant to be a reference for all possible environment variables, so having it listed there is actually correct and useful. The docker-compose.yml file using the same default is not a problem - it's a complementary configuration.
Maybe having consistent documentation of environment variables is actually important for developers setting up the system? The .env.example file serves as central documentation.
Yes, exactly - .env.example should list ALL possible environment variables, even if they have defaults elsewhere. This helps developers understand what variables are available.
The comment should be deleted. Having HASURA_URL in .env.example is correct and useful as documentation, even if it has a default value in docker-compose.yml.
2. .env.example:140
- Draft comment:
Consider adding a comment for HASURA_URL to indicate its purpose, similar to other GraphQL vars. - Reason this comment was not posted:
Confidence changes required:20%
<= threshold50%
None
3. gateway/docker-compose.yml:11
- Draft comment:
Ensure HASURA_URL value (http://hasura:8080) matches the internal network and hasura container setup in Docker. - Reason this comment was not posted:
Confidence changes required:20%
<= threshold50%
None
4. gateway/entrypoint.sh:8
- Draft comment:
Verify if HASURA_URL should be required like JWT_SHARED_KEY and AGENTS_API_KEY, or if a default suffices. - Reason this comment was not posted:
Confidence changes required:30%
<= threshold50%
None
5. gateway/traefik.yml.template:88
- Draft comment:
New router for Hasura GraphQL looks correct; ensure its priority (3) doesn't conflict with other services. - Reason this comment was not posted:
Confidence changes required:20%
<= threshold50%
None
6. hasura/docker-compose.yml:12
- Draft comment:
Explicitly setting HASURA_GRAPHQL_SERVER_PORT to 8080 is good; verify port mappings align with traefik routing. - Reason this comment was not posted:
Confidence changes required:20%
<= threshold50%
None
7. .env.example:137
- Draft comment:
Consider adding an inline comment explaining HASURA_URL (e.g., 'Hasura GraphQL API endpoint') for clarity. - Reason this comment was not posted:
Confidence changes required:33%
<= threshold50%
None
8. gateway/traefik.yml.template:162
- Draft comment:
Verify that 'passHostHeader: false' for service-hasura is intentional to avoid forwarding client headers. - Reason this comment was not posted:
Confidence changes required:33%
<= threshold50%
None
9. hasura/docker-compose.yml:12
- Draft comment:
Explicitly setting HASURA_GRAPHQL_SERVER_PORT (8080) helps ensure consistency with the gateway routing. - Reason this comment was not posted:
Confidence changes required:0%
<= threshold50%
None
Workflow ID: wflow_ulxkHP2ii6XFfMst
Want Ellipsis to fix these issues? Tag @ellipsis-dev
in a comment. You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
PR Type
Enhancement, Configuration changes
Description
Added support for Hasura GraphQL API integration.
Updated environment variables and configurations for Hasura.
Enhanced
traefik.yml.template
with Hasura routing and service definitions.Updated
docker-compose.yml
for Hasura service setup.Changes walkthrough 📝
entrypoint.sh
Add `HASURA_URL` environment variable to entrypoint script
gateway/entrypoint.sh
HASURA_URL
environment variable with default value.HASURA_URL
is included in the script's environment setup..env.example
Add `HASURA_URL` to example environment file
.env.example
HASURA_URL
example configuration.HASURA_CLAIMS_MAP
for Hasura claims mapping.docker-compose.yml
Update Docker Compose for Hasura integration
gateway/docker-compose.yml
HASURA_URL
to the gateway service environment variables.docker-compose.yml
Update Hasura Docker Compose configuration
hasura/docker-compose.yml
HASURA_GRAPHQL_SERVER_PORT
environment variable.traefik.yml.template
Add Hasura routing and service in Traefik configuration
gateway/traefik.yml.template
/v1/graphql
.service-hasura
with load balancer and server URL.