-
Notifications
You must be signed in to change notification settings - Fork 86
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
Fix /graphql-whatever matching /graphql route #4979
base: main
Are you sure you want to change the base?
Conversation
|
🐋 This PR was built and pushed to the following Docker images (tag: Docker Bake metadata{
"app": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/6hto2h1nk1kk2zsmouk40ijbi",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:125780c50fc25c71089c62e66a22a6b5fbeb7bd5e2a98cf2b729bb855d3bcd66",
"size": 685
},
"containerimage.digest": "sha256:125780c50fc25c71089c62e66a22a6b5fbeb7bd5e2a98cf2b729bb855d3bcd66",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/app:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/app:kamil_fix_graphql_proxy"
},
"composition-federation-2": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/fo9rz3upddzhmnlac1dvqo9mb",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:8f0bf6c8af7ba2eed12fc7de6f4c0ba68e9a0d1968ed3480e776071a125e7b2a",
"size": 685
},
"containerimage.digest": "sha256:8f0bf6c8af7ba2eed12fc7de6f4c0ba68e9a0d1968ed3480e776071a125e7b2a",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/composition-federation-2:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/composition-federation-2:kamil_fix_graphql_proxy"
},
"emails": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/ilv2qmr7gjodjsay0dx081wqq",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:6b6ba46a695114f9a023cef8c306a97e4d2d85ccf655a1b9f973cc97fb808ad8",
"size": 685
},
"containerimage.digest": "sha256:6b6ba46a695114f9a023cef8c306a97e4d2d85ccf655a1b9f973cc97fb808ad8",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/emails:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/emails:kamil_fix_graphql_proxy"
},
"policy": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/kz047z7p58zo037ez83qzatwb",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:1bfd7dc4e4376b55ed994bb73f9db7961adda1983442eb0a209c43c08664605f",
"size": 685
},
"containerimage.digest": "sha256:1bfd7dc4e4376b55ed994bb73f9db7961adda1983442eb0a209c43c08664605f",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/policy:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/policy:kamil_fix_graphql_proxy"
},
"rate-limit": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/pqj4sbzpbucv3ghl6a18ukrc4",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:b2e3d11cced12b1f26d473b6c474dac5cd2d3c7c633a1b39a033afcf85391755",
"size": 685
},
"containerimage.digest": "sha256:b2e3d11cced12b1f26d473b6c474dac5cd2d3c7c633a1b39a033afcf85391755",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/rate-limit:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/rate-limit:kamil_fix_graphql_proxy"
},
"schema": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/u8linwu33oxn6imeyypa937v0",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:d682ba1aeac17af1d9063480071f3a526baa5dd4c4046043df67fb80479f0c86",
"size": 685
},
"containerimage.digest": "sha256:d682ba1aeac17af1d9063480071f3a526baa5dd4c4046043df67fb80479f0c86",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/schema:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/schema:kamil_fix_graphql_proxy"
},
"server": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/muby64ikcjnnggk7i9ib16i2u",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:3502660da5f36ce9318550ad0089cda5ddf4a720fde4752faa3a849a4bcd9698",
"size": 685
},
"containerimage.digest": "sha256:3502660da5f36ce9318550ad0089cda5ddf4a720fde4752faa3a849a4bcd9698",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/server:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/server:kamil_fix_graphql_proxy"
},
"storage": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/5ho1f921wa2vyegktym23wzh7",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:abf58be1cfa829fd57687404723703ac63eec7e8407e489bc2ab27407a20a83a",
"size": 685
},
"containerimage.digest": "sha256:abf58be1cfa829fd57687404723703ac63eec7e8407e489bc2ab27407a20a83a",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/storage:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/storage:kamil_fix_graphql_proxy"
},
"stripe-billing": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/sdzs0cdfspsoh6svouk9my9do",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:4d21f1f2b115c8a47a16f1c345a57ca2fa766cf8f22f5ad66e55b55fbc2a3df2",
"size": 685
},
"containerimage.digest": "sha256:4d21f1f2b115c8a47a16f1c345a57ca2fa766cf8f22f5ad66e55b55fbc2a3df2",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/stripe-billing:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/stripe-billing:kamil_fix_graphql_proxy"
},
"tokens": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/gbxh750xagnfu17rcvaz7jqrv",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:5df340fddba46ab6229c82aa77557cf786ca7afac2aec61ee77bf9001c7c6587",
"size": 685
},
"containerimage.digest": "sha256:5df340fddba46ab6229c82aa77557cf786ca7afac2aec61ee77bf9001c7c6587",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/tokens:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/tokens:kamil_fix_graphql_proxy"
},
"usage": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/wtrhkca2k8i5wphglz12bmd2c",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:2b81e333e030dcb3ab3d4af4af4d94d6cb7ff32414f4087bfb74f58166caa389",
"size": 685
},
"containerimage.digest": "sha256:2b81e333e030dcb3ab3d4af4af4d94d6cb7ff32414f4087bfb74f58166caa389",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/usage:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/usage:kamil_fix_graphql_proxy"
},
"usage-estimator": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/qo6gcb2w9l01ba9kwti2db3lz",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:0e3764828610d24c7a73a72f2461ee178da7248b4843d412119014d02df63ac8",
"size": 685
},
"containerimage.digest": "sha256:0e3764828610d24c7a73a72f2461ee178da7248b4843d412119014d02df63ac8",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/usage-estimator:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/usage-estimator:kamil_fix_graphql_proxy"
},
"usage-ingestor": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/rtqb1sg7khbmk75qaterozjy6",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:36745d3ecb289254038b7f731d3e84540ce5dd1881855f34d467b04feebe2a06",
"size": 685
},
"containerimage.digest": "sha256:36745d3ecb289254038b7f731d3e84540ce5dd1881855f34d467b04feebe2a06",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/usage-ingestor:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/usage-ingestor:kamil_fix_graphql_proxy"
},
"webhooks": {
"buildx.build.ref": "builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c/builder-fa6746f7-ddb8-4455-a5e8-8730241ae43c0/51h4yxd99fhc4clkkiea9990p",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"digest": "sha256:ec2c885f3e3669236dea60a169a91288f582aedea78affc7a411286738e2702a",
"size": 685
},
"containerimage.digest": "sha256:ec2c885f3e3669236dea60a169a91288f582aedea78affc7a411286738e2702a",
"image.name": "ghcr.io/kamilkisiela/graphql-hive/webhooks:c0d0d2a0267480b154af1613737682174c91335d,ghcr.io/kamilkisiela/graphql-hive/webhooks:kamil_fix_graphql_proxy"
}
} |
We used
prefix: "/graphql"
, and because of that every path that starts with/graphql
is routed by Envoy tographql-api
service.For non
/
routes, I tried to move us topath_separated_prefix
, so/graphql
route could accept/graphql
,/graphql/whatever
, but not/graphql-whatever
.The problem is that
path_separated_prefix
is only available in Envoy, so I had to create two routesexact /graphql
andprefix /graphql/
, but I wish to solve it in a different way (to support/graphql?
as well, and to not duplicate routes)./graphql/stream
is affected