0
votes

Related Reference Issue: Redeploying OpenAPI spec into App Engine standard environment

When using Cloud Endpoints via App Engine, what would be the best way to approach continuous deployments? If the OpenApi spec changes, the backend service tied to the endpoint needs to be redeployed meaning that modifications to a "v1" of an endpoint would require downtime in the service while the service is in deployment.

Does this mean that any time a new spec is generated a "breaking change" occurred and I should increment the version, redeploy the backend service, and update the url on any services that use that endpoint to allow more seamless transitioning in modifications to the endpoint? Because as of now working with endpoints I'm having trouble seeing in what instances redeploying the spec doesn't break the backend service and vice-versa.

1

1 Answers

0
votes

I realized that when a new spec is generated, there is an ENDPOINTS_SERVICE_VERSION that is generated which seems to be persistent. So the act of deploying a new spec does not cause a breaking change in the API endpoint AFAIK as the backend service will still be pointing to a valid previous deployment.

I don't know how many ENDPOINTS_SERVICE_VERSIONs are persistent as I could not find this in the docs but if the backend service is updated with the latest endpoint service version soon afterwards, updates to the api can be seamless without disruption of the service as far as deployments go.