From b8928f348348e705a9fbdae9c740bfb59e7b8fd4 Mon Sep 17 00:00:00 2001 From: Emilie BOUIN Date: Mon, 7 Oct 2024 17:39:32 +0200 Subject: [PATCH 1/3] docs(serverless): add section Versioning and rollback in function and container limitations --- .../reference-content/containers-limitations.mdx | 9 +++++++++ .../reference-content/functions-limitations.mdx | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/serverless/containers/reference-content/containers-limitations.mdx b/serverless/containers/reference-content/containers-limitations.mdx index 257cb9e872..cd137da3f0 100644 --- a/serverless/containers/reference-content/containers-limitations.mdx +++ b/serverless/containers/reference-content/containers-limitations.mdx @@ -86,3 +86,12 @@ For example, if you build an image using an ARM CPU, such as Apple Silicon M ser You must ensure that you build your image to target `amd64` architecture, to acheive this there are multiple solutions: * You can use the following Docker command: `docker buildx build --platform linux/amd64 .`, or * You can use an Instance with `amd64` architecture to run your builds. + +## Versioning and rollback + +Scaleway Containers do not currently support versioning or automatic rollback mechanisms. +However, in the event of a failed deployment, the previously deployed version of the container will continue to handle +incoming requests for up to 24 hours. After this period, the container in error will be deleted, and requests will no +longer be served until a successful deployment is made. This ensures temporary service continuity, but it is important +to monitor and resolve deployment issues promptly, as the fallback is not intended to provide long-term version control +or rollback capabilities. diff --git a/serverless/functions/reference-content/functions-limitations.mdx b/serverless/functions/reference-content/functions-limitations.mdx index 36a6614ce0..31d41e4290 100644 --- a/serverless/functions/reference-content/functions-limitations.mdx +++ b/serverless/functions/reference-content/functions-limitations.mdx @@ -55,3 +55,12 @@ To ensure the proper functioning of the product, we restrict the use of certain * **465**: Due to potential abuse (spam), no outbound traffic is allowed through this port, except from Scaleway Transactional Email SMTP servers. * Reserved environment variables: * `SCW_*`: Reserved for product configuration (for example: token validation). + +## Versioning and rollback + +Scaleway Functions do not currently support versioning or automatic rollback mechanisms. +However, in the event of a failed deployment, the previously deployed version of the function will continue to handle +incoming requests for up to 24 hours. After this period, the function in error will be deleted, and requests will no +longer be served until a successful deployment is made. This ensures temporary service continuity, but it is important +to monitor and resolve deployment issues promptly, as the fallback is not intended to provide long-term version control +or rollback capabilities. From 1f52c6ee41300c676b60e7f2c819ed65f6676dfd Mon Sep 17 00:00:00 2001 From: Emilie BOUIN Date: Tue, 8 Oct 2024 10:23:22 +0200 Subject: [PATCH 2/3] fix: review changes --- .../reference-content/containers-limitations.mdx | 8 ++++++++ .../functions/reference-content/functions-limitations.mdx | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/serverless/containers/reference-content/containers-limitations.mdx b/serverless/containers/reference-content/containers-limitations.mdx index cd137da3f0..9a8c691cb4 100644 --- a/serverless/containers/reference-content/containers-limitations.mdx +++ b/serverless/containers/reference-content/containers-limitations.mdx @@ -95,3 +95,11 @@ incoming requests for up to 24 hours. After this period, the container in error longer be served until a successful deployment is made. This ensures temporary service continuity, but it is important to monitor and resolve deployment issues promptly, as the fallback is not intended to provide long-term version control or rollback capabilities. + +Below is an example than illustrates this behavior: + +* Time +0H: The first container is deployed and works correctly. +* Time +1H: The container is redeployed, but the deployment fails, and the container ends up in an error state. +* Time +2H: Despite the failed deployment, the first container is still handling incoming requests. +* Time +25H: The 24-hour window expires, and both the first working container and the failed container are removed, +leading to service disruption until a new successful deployment is made. diff --git a/serverless/functions/reference-content/functions-limitations.mdx b/serverless/functions/reference-content/functions-limitations.mdx index 31d41e4290..61ee48c16c 100644 --- a/serverless/functions/reference-content/functions-limitations.mdx +++ b/serverless/functions/reference-content/functions-limitations.mdx @@ -64,3 +64,11 @@ incoming requests for up to 24 hours. After this period, the function in error w longer be served until a successful deployment is made. This ensures temporary service continuity, but it is important to monitor and resolve deployment issues promptly, as the fallback is not intended to provide long-term version control or rollback capabilities. + +Below is an example than illustrates this behavior: + +* Time +0H: The first function is deployed and works correctly. +* Time +1H: The function is redeployed, but the deployment fails, and the function ends up in an error state. +* Time +2H: Despite the failed deployment, the first function is still handling incoming requests. +* Time +25H: The 24-hour window expires, and both the first working function and the failed function are removed, +leading to service disruption until a new successful deployment is made. From 370517ed63cb75d7e00e465b88e7b89d47c9ab75 Mon Sep 17 00:00:00 2001 From: SamyOubouaziz Date: Wed, 9 Oct 2024 12:10:33 +0200 Subject: [PATCH 3/3] docs(SRV): update --- .../containers/troubleshooting/common-errors.mdx | 10 ++++++++++ .../functions/troubleshooting/common-errors.mdx | 12 +++++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/serverless/containers/troubleshooting/common-errors.mdx b/serverless/containers/troubleshooting/common-errors.mdx index c004b7dc70..83931eceb9 100644 --- a/serverless/containers/troubleshooting/common-errors.mdx +++ b/serverless/containers/troubleshooting/common-errors.mdx @@ -46,3 +46,13 @@ This issue can happen for the following reasons: ### Possible solutions Make sure that you did not exceed the maximum number of allowed namespaces with the [Scaleway console](https://console.scaleway.com/) or with the [API](https://www.scaleway.com/en/developers/api/serverless-containers/#path-namespaces-list-all-your-namespaces). + +## Container stopped working several hours after a redeploy + +### Cause + +The new deploy failed, and the [fallback mechanism has been triggered](/serverless/containers/reference-content/containers-limitations/#versioning-and-rollback). + +### Possible solution + +Identify the element that caused the deployment to fail, fix the error, and deploy the container again. diff --git a/serverless/functions/troubleshooting/common-errors.mdx b/serverless/functions/troubleshooting/common-errors.mdx index 4cf775e47d..e308928d89 100644 --- a/serverless/functions/troubleshooting/common-errors.mdx +++ b/serverless/functions/troubleshooting/common-errors.mdx @@ -97,4 +97,14 @@ This issue can happen for the following reasons: ### Possible solutions -Make sure that you did not exceed the maximum number of allowed namespaces with the [Scaleway console](https://console.scaleway.com/) or with the [API](https://www.scaleway.com/en/developers/api/serverless-functions/#path-namespaces-list-all-your-namespaces). \ No newline at end of file +Make sure that you did not exceed the maximum number of allowed namespaces with the [Scaleway console](https://console.scaleway.com/) or with the [API](https://www.scaleway.com/en/developers/api/serverless-functions/#path-namespaces-list-all-your-namespaces). + +## Function stopped working several hours after a redeploy + +### Cause + +The new deploy failed, and the [fallback mechanism has been triggered](/serverless/functions/reference-content/functions-limitations/#versioning-and-rollback). + +### Possible solution + +Identify the element that caused the deployment to fail, fix the error, and deploy the function again.