From 0bbc232549f6f903d65a3e05390a1f7a9ad16ecf Mon Sep 17 00:00:00 2001
From: acarranoqovery <105300721+acarranoqovery@users.noreply.github.com>
Date: Thu, 1 Aug 2024 12:05:34 +0200
Subject: [PATCH] Feat: adding cdn flag + reveview doc organization on domain
(#458)
* feat: added cancel info for lifecycle jobs
* chore: improve dependency info on demo cluster
* feat: added CDN flag and reorganized the doc
* fix
---
.../_partials/_configure_domains.md.erb | 84 ++++++++--------
.../getting-started/install-qovery/local.md | 6 +-
.../install-qovery/local.md.erb | 4 +-
.../configuration/advanced-settings.md | 8 +-
.../configuration/advanced-settings.md.erb | 6 --
.../using-qovery/configuration/application.md | 95 +++++++++----------
.../configuration/application.md.erb | 12 +--
.../using-qovery/configuration/clusters.md | 8 +-
.../configuration/clusters.md.erb | 6 +-
.../using-qovery/configuration/environment.md | 6 +-
.../configuration/environment.md.erb | 2 +-
.../docs/using-qovery/configuration/helm.md | 85 +++++++++--------
.../deployment/deployment-actions.md | 11 ++-
.../deployment/deployment-actions.md.erb | 8 +-
...i-gateway-in-front-of-multiple-services.md | 6 +-
...teway-in-front-of-multiple-services.md.erb | 2 +-
16 files changed, 168 insertions(+), 181 deletions(-)
diff --git a/scripts/generate/templates/_partials/_configure_domains.md.erb b/scripts/generate/templates/_partials/_configure_domains.md.erb
index 0cd451c6c9..68b7d58192 100644
--- a/scripts/generate/templates/_partials/_configure_domains.md.erb
+++ b/scripts/generate/templates/_partials/_configure_domains.md.erb
@@ -1,10 +1,36 @@
-Within this section you can customize the domain used to reach your <%= service %>.
+## Connecting from the internet
+
+Your <%= service %> can be reached from the internet by publicly exposing at least one of its ports (See the [Ports](#ports) section to know more). Once this is done, Qovery will generate and assign a domain to your application (See [this section](#qovery-provided-domains) to know more). You can customize the domain assigned to your application via the `Domain` section in the settings (see [this section](#custom-domains) to know more).
+
+### Qovery provided domains
+
+For each port publicly exposed, a domain is automatically assigned by Qovery to your <%= service %>. Qovery will manage for you the networking and the TLS configuration for these domains.
+
+Example: `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` or `-p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` for helm services.
+
+Note:
+- each service deployed on the same cluster will have the same root domain assigned (example: `za8ad0657.bool.sh`)
+- the first characters of the domain (before the `-`) is based on the portName given to the port associated with this domain (See the [port section](#ports))
+- a default domain (without the portName) is assigned to the `default port`(See the [port section](#ports)). Example `zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh`
+
+**Special Case - Preview Environment**
+For each port exposed publicly, an additional domain will be created with the following pattern `portName-prId-srvName-envSourceName.cluster_domain`:
+- portName: is the port name, as explained above
+- prID: is the id of the PR that has generated the preview environment
+- srvName: is the name of the service
+- envSourceName: is the name of the blueprint environment that has created the current preview environment
+
+domain example: `p80-123-frontend-blueprint.za8ad0657.bool.sh`
+
+### Custom domains
+
+If you prefer to assign your own domain to the <%= service %>, you can customize it from the "Domain" section within the <%= service %> settings.
You can customize the domain of your <%= service %> in different ways, depending on what you want to achieve:
* You want to use your own domain for your <%= service %>
-* You want to modify the subdomain assigned to your <%= service %> by Qovery (i.e. change `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` into `my-app-domain.za8ad0657.bool.sh`).
+* You want to modify the subdomain assigned to your <%= service %> by Qovery (i.e. change `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` into `my-app-domain.za8ad0657.bool.sh`). See [this section](#qovery-provided-domains) to know more about these domains.
-In both cases, you can assign the new custom domain to your <%= service %> press the `Add Domain` button.
+In both cases, you can assign the new custom domain by pressing the `Add Domain` button.
@@ -20,29 +46,31 @@ This configuration will be **automatically removed** on every cloned environment
Once the domain is added within the Qovery console (Example: mydomain.com), you need to configure within your DNS two `CNAME` records pointing to the domain provided by Qovery, as shown in the UI (example: mydomain.com CNAME za7cc1b71-z4b8474b3-gtw.zc531a994.rustrocks.cloud and *.mydomain.com CNAME za7cc1b71-z4b8474b3-gtw.zc531a994.rustrocks.cloud).
-Having a wildcard domain (example: *.mydomain.com) configured on your DNS will avoid you to modify the Qovery setup every time you want to add a new subdomain. If `wildcard` is not supported by your DNS provider, you will have to configure each subdomain manually.
+Having a wildcard domain entry (example: *.mydomain.com) configured on your DNS will avoid you to modify the Qovery setup every time you want to add a new subdomain. If `wildcard` is not supported by your DNS provider, you will have to configure each subdomain manually.
-If the service needs to expose more than one port publicly, you can define a dedicated subdomain to redirect the traffic on the right port by setting the “Port Name” value within the [port settings](#ports).
+If a service needs to expose more than one port publicly, you can define a dedicated subdomain to redirect the traffic on the right port by setting the “Port Name” value within the [port settings](#ports).
-From this point, Qovery will automatically handle the TLS/SSL certificate creation and renewal for the configured domain.
+After re-deploying the service, Qovery will automatically handle the TLS/SSL certificate creation and renewal for the configured domain.
-** Special case - CDN in proxy mode **
+
+
+[We prepared a guide and video tutorial that explains how to set up your custom domain.][guides.getting-started.setting-custom-domain]
+
+
+
+** Special case - domain behind a CDN **
-If your service is behind a CDN using a `proxy mode` (i.e. the traffic is routed through the CDN to Qovery), make sure to disable the option "Generate certificate" on the domain setup. Since the certificate of your domain is directly managed by the CDN, Qovery won't be able to do that for you and it will raise warnings on your application status.
+If your service is behind a CDN using a `proxy mode` (i.e. the traffic is routed through the CDN to Qovery), make sure to enable the option `Domain behind a CDN` and disable the option "Generate certificate" on the domain setup. Since the certificate of your domain is directly managed by the CDN, Qovery won't be able to do that for you and it will raise warnings on your application status.
-
-
-[We prepared a guide and video tutorial that explains how to set up your custom domain.][guides.getting-started.setting-custom-domain]
-
-
+If you are using Cloudflare to manage your CDN, we can also manage automatically your custom domain configuration via a wildcard domain setup for the whole cluster. Check our [documentation here][docs.using-qovery.configuration.clusters#use-custom-domain-and-wildcard-tls-for-the-whole-cluster-beta]
#### Change the auto assigned sub-domain
@@ -57,32 +85,4 @@ The <%= service %> will now be accessible from both the default and the new cust
Qovery does not check collision in the domain declaration. Make sure you assign a unique subdomain within your cluster.
-
-
-## Connecting from the internet
-
-Your <%= service %> can be reached from the internet by publicly exposing at least one of its ports (See the [Ports](#ports) section to know more). Once this is done, Qovery will generate for you a domain to reach your application from the internet. You can also customize the domain assigned to your application and manage by yourself this assignment via the `Domain` section.
-
-### Qovery provided domains
-
-For each port publicly exposed, a domain is automatically assigned by Qovery to your <%= service %>. Qovery will manage for you the networking and the TLS configuration for these domains.
-
-Example: `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` or `-p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` for helm services.
-
-Note:
-- each service deployed on the same cluster will have the same root domain assigned (example: `za8ad0657.bool.sh`)
-- the first characters of the domain (before the `-`) is based on the portName given to the port associated with this domain (See the [port section](#ports))
-- a default domain (without the portName) is assigned to the `default port`(See the [port section](#ports)). Example `zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh`
-
-**Special Case - Preview Environment**
-For each port exposed publicly, an additional domain will be created with the following pattern `portName-prId-srvName-envSourceName.cluster_domain`:
-- portName: is the port name, as explained above
-- prID: is the id of the PR that has generated the preview environment
-- srvName: is the name of the service
-- envSourceName: is the name of the blueprint environment that has created the current preview environment
-
-domain example: `p80-123-frontend-blueprint.za8ad0657.bool.sh`
-
-### Custom domains
-
-If you prefer to assign your own domain to the <%= service %>, have a look at the [Domain section](#domains) to know more.
\ No newline at end of file
+
\ No newline at end of file
diff --git a/website/docs/getting-started/install-qovery/local.md b/website/docs/getting-started/install-qovery/local.md
index a948995fe6..f858d25afc 100644
--- a/website/docs/getting-started/install-qovery/local.md
+++ b/website/docs/getting-started/install-qovery/local.md
@@ -1,5 +1,5 @@
---
-last_modified_on: "2024-07-12"
+last_modified_on: "2024-07-16"
title: "Local"
description: "Install Qovery on your local machine"
---
@@ -26,9 +26,9 @@ It's important to note that this local setup of Qovery using the `qovery demo up
## Requirements
-- **Supported Operating Systems**: Linux, MacOS, and Windows.
+- **Supported Operating Systems**: Linux, MacOS, and Windows (only on WSL).
- **Resources**: 4 CPU and 8GB of RAM for your Docker runtime.
-- **Binaries**: [docker][urls.docker], jq, curl, sed, grep, git.
+- **Binaries**: [docker][urls.docker] (up and running), git.
- A stable Internet connection.
- A Qovery account. If you don't have one, please sign up at https://start.qovery.com
diff --git a/website/docs/getting-started/install-qovery/local.md.erb b/website/docs/getting-started/install-qovery/local.md.erb
index 131357846e..072bc91cdd 100644
--- a/website/docs/getting-started/install-qovery/local.md.erb
+++ b/website/docs/getting-started/install-qovery/local.md.erb
@@ -12,9 +12,9 @@ It's important to note that this local setup of Qovery using the `qovery demo up
## Requirements
-- **Supported Operating Systems**: Linux, MacOS, and Windows.
+- **Supported Operating Systems**: Linux, MacOS, and Windows (only on WSL).
- **Resources**: 4 CPU and 8GB of RAM for your Docker runtime.
-- **Binaries**: [docker][urls.docker], jq, curl, sed, grep, git.
+- **Binaries**: [docker][urls.docker] (up and running), git.
- A stable Internet connection.
- A Qovery account. If you don't have one, please sign up at https://start.qovery.com
diff --git a/website/docs/using-qovery/configuration/advanced-settings.md b/website/docs/using-qovery/configuration/advanced-settings.md
index 595a51f2f6..cc6176dc7c 100644
--- a/website/docs/using-qovery/configuration/advanced-settings.md
+++ b/website/docs/using-qovery/configuration/advanced-settings.md
@@ -1,5 +1,5 @@
---
-last_modified_on: "2024-07-03"
+last_modified_on: "2024-07-30"
title: "Service Advanced Settings"
description: "Learn how to set advanced settings on your infrastructure with Qovery"
---
@@ -75,12 +75,6 @@ All services have access to advanced settings, you can find where they are avail
|---------|----------------------------------------|---------------|
| integer | GB RAM allocated to your build process | `8` |
-#### deployment.custom_domain_check_enabled ![](/img/advanced_settings/application.svg) ![](/img/advanced_settings/container.svg) ![](/img/advanced_settings/cronjob.svg) ![](/img/advanced_settings/job.svg) ![](/img/advanced_settings/helm.svg)
-
-| Type | Description | Use Case | Default Value |
-|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------|
-| boolean | Qovery allows you to set custom domains for your applications through the addition of a CNAME record to your domain's DNS settings. By default, when an application is deployed, Qovery checks that the CNAME record is set up correctly. This advanced setting allows you to disable this check. | If you are using a Content Delivery Network (CDN), checking the CNAME setup for any custom domains you may have set up is likely to stall the deployment of your application.
Therefore, if you are using a CDN behind your application, we recommend disabling this feature to save time during your application deployments. | `true` |
-
#### deployment.termination_grace_period_seconds ![](/img/advanced_settings/application.svg) ![](/img/advanced_settings/container.svg) ![](/img/advanced_settings/cronjob.svg) ![](/img/advanced_settings/job.svg)
| Type | Description | Use Case | Default Value |
diff --git a/website/docs/using-qovery/configuration/advanced-settings.md.erb b/website/docs/using-qovery/configuration/advanced-settings.md.erb
index ba6a3b0036..368286a867 100644
--- a/website/docs/using-qovery/configuration/advanced-settings.md.erb
+++ b/website/docs/using-qovery/configuration/advanced-settings.md.erb
@@ -63,12 +63,6 @@ All services have access to advanced settings, you can find where they are avail
|---------|----------------------------------------|---------------|
| integer | GB RAM allocated to your build process | `8` |
-#### deployment.custom_domain_check_enabled ![](/img/advanced_settings/application.svg) ![](/img/advanced_settings/container.svg) ![](/img/advanced_settings/cronjob.svg) ![](/img/advanced_settings/job.svg) ![](/img/advanced_settings/helm.svg)
-
-| Type | Description | Use Case | Default Value |
-|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------|
-| boolean | Qovery allows you to set custom domains for your applications through the addition of a CNAME record to your domain's DNS settings. By default, when an application is deployed, Qovery checks that the CNAME record is set up correctly. This advanced setting allows you to disable this check. | If you are using a Content Delivery Network (CDN), checking the CNAME setup for any custom domains you may have set up is likely to stall the deployment of your application.
Therefore, if you are using a CDN behind your application, we recommend disabling this feature to save time during your application deployments. | `true` |
-
#### deployment.termination_grace_period_seconds ![](/img/advanced_settings/application.svg) ![](/img/advanced_settings/container.svg) ![](/img/advanced_settings/cronjob.svg) ![](/img/advanced_settings/job.svg)
| Type | Description | Use Case | Default Value |
diff --git a/website/docs/using-qovery/configuration/application.md b/website/docs/using-qovery/configuration/application.md
index 89b9b2d07e..abbb76a49a 100644
--- a/website/docs/using-qovery/configuration/application.md
+++ b/website/docs/using-qovery/configuration/application.md
@@ -1,5 +1,5 @@
---
-last_modified_on: "2024-07-03"
+last_modified_on: "2024-07-30"
title: "Application"
description: "Learn how to configure your Application on Qovery"
---
@@ -363,7 +363,7 @@ Within this section you can define the port exposed by your application to the o
You can edit the existing ports or declare new ones by specifying:
- Application port: this is the port exposed internally by your application for the other services.
- Protocol: you can select the protocol used by your application : HTTP (for both standard HTTP or websocket communications), gRPC, TCP, UDP.
-- Publicly exposed: it allows you to expose over the public network your service. A public domain will be assigned to your application during the deployment (see [Connectin from the internet section](#connecting-from-the-internet))
+- Publicly exposed: it allows you to expose over the public network your service. A public domain will be assigned to your application during the deployment (see [Connecting from the internet section](#connecting-from-the-internet))
- If Publicly Exposed is selected:
- External port: it is the port that can be used to access this service over the internet (when exposed publicly). Note that for HTTP and gRPC the port is set by default to 443.
- Port Name: it is the name assigned to the port. When multiple ports are exposed publicly, its value is used to route the traffic to the right port based on the called subdomain (which will contain the port name value). Since each port is exposed on the port 443, having a different subdomain is the only way to have multiple ports exposed over the internet. If not set, the default value is `p` (see [Qovery Provided Domain section](#qovery-provided-domains) for more information)
@@ -389,15 +389,39 @@ To know more about how to configure your Liveness and Readiness probes, have a l
This section allows to specify which changes on your repository should trigger an auto-deploy (if enabled). To know more about how to configure your Deployment Restrictions, have a look at the [deployment restrictions section][docs.using-qovery.deployment.deploying-with-auto-deploy#filtering-commits-triggering-the-auto-deploy].
-### Domains
+## Connecting from the internet
+
+Your application can be reached from the internet by publicly exposing at least one of its ports (See the [Ports](#ports) section to know more). Once this is done, Qovery will generate and assign a domain to your application (See [this section](#qovery-provided-domains) to know more). You can customize the domain assigned to your application via the `Domain` section in the settings (see [this section](#custom-domains) to know more).
+
+### Qovery provided domains
+
+For each port publicly exposed, a domain is automatically assigned by Qovery to your application. Qovery will manage for you the networking and the TLS configuration for these domains.
+
+Example: `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` or `-p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` for helm services.
+
+Note:
+- each service deployed on the same cluster will have the same root domain assigned (example: `za8ad0657.bool.sh`)
+- the first characters of the domain (before the `-`) is based on the portName given to the port associated with this domain (See the [port section](#ports))
+- a default domain (without the portName) is assigned to the `default port`(See the [port section](#ports)). Example `zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh`
+
+**Special Case - Preview Environment**
+For each port exposed publicly, an additional domain will be created with the following pattern `portName-prId-srvName-envSourceName.cluster_domain`:
+- portName: is the port name, as explained above
+- prID: is the id of the PR that has generated the preview environment
+- srvName: is the name of the service
+- envSourceName: is the name of the blueprint environment that has created the current preview environment
-Within this section you can customize the domain used to reach your application.
+domain example: `p80-123-frontend-blueprint.za8ad0657.bool.sh`
+
+### Custom domains
+
+If you prefer to assign your own domain to the application, you can customize it from the "Domain" section within the application settings.
You can customize the domain of your application in different ways, depending on what you want to achieve:
* You want to use your own domain for your application
-* You want to modify the subdomain assigned to your application by Qovery (i.e. change `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` into `my-app-domain.za8ad0657.bool.sh`).
+* You want to modify the subdomain assigned to your application by Qovery (i.e. change `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` into `my-app-domain.za8ad0657.bool.sh`). See [this section](#qovery-provided-domains) to know more about these domains.
-In both cases, you can assign the new custom domain to your application press the `Add Domain` button.
+In both cases, you can assign the new custom domain by pressing the `Add Domain` button.
@@ -413,29 +437,31 @@ This configuration will be **automatically removed** on every cloned environment
Once the domain is added within the Qovery console (Example: mydomain.com), you need to configure within your DNS two `CNAME` records pointing to the domain provided by Qovery, as shown in the UI (example: mydomain.com CNAME za7cc1b71-z4b8474b3-gtw.zc531a994.rustrocks.cloud and *.mydomain.com CNAME za7cc1b71-z4b8474b3-gtw.zc531a994.rustrocks.cloud).
-Having a wildcard domain (example: *.mydomain.com) configured on your DNS will avoid you to modify the Qovery setup every time you want to add a new subdomain. If `wildcard` is not supported by your DNS provider, you will have to configure each subdomain manually.
+Having a wildcard domain entry (example: *.mydomain.com) configured on your DNS will avoid you to modify the Qovery setup every time you want to add a new subdomain. If `wildcard` is not supported by your DNS provider, you will have to configure each subdomain manually.
-If the service needs to expose more than one port publicly, you can define a dedicated subdomain to redirect the traffic on the right port by setting the “Port Name” value within the [port settings](#ports).
+If a service needs to expose more than one port publicly, you can define a dedicated subdomain to redirect the traffic on the right port by setting the “Port Name” value within the [port settings](#ports).
-From this point, Qovery will automatically handle the TLS/SSL certificate creation and renewal for the configured domain.
+After re-deploying the service, Qovery will automatically handle the TLS/SSL certificate creation and renewal for the configured domain.
-** Special case - CDN in proxy mode **
+
-If your service is behind a CDN using a `proxy mode` (i.e. the traffic is routed through the CDN to Qovery), make sure to disable the option "Generate certificate" on the domain setup. Since the certificate of your domain is directly managed by the CDN, Qovery won't be able to do that for you and it will raise warnings on your application status.
+[We prepared a guide and video tutorial that explains how to set up your custom domain.][guides.getting-started.setting-custom-domain]
+
+
+
+** Special case - domain behind a CDN **
+
+If your service is behind a CDN using a `proxy mode` (i.e. the traffic is routed through the CDN to Qovery), make sure to enable the option `Domain behind a CDN` and disable the option "Generate certificate" on the domain setup. Since the certificate of your domain is directly managed by the CDN, Qovery won't be able to do that for you and it will raise warnings on your application status.
-
-
-[We prepared a guide and video tutorial that explains how to set up your custom domain.][guides.getting-started.setting-custom-domain]
-
-
+If you are using Cloudflare to manage your CDN, we can also manage automatically your custom domain configuration via a wildcard domain setup for the whole cluster. Check our [documentation here][docs.using-qovery.configuration.clusters#use-custom-domain-and-wildcard-tls-for-the-whole-cluster-beta]
#### Change the auto assigned sub-domain
@@ -452,38 +478,6 @@ Qovery does not check collision in the domain declaration. Make sure you assign
-## Connecting from the internet
-
-Your application can be reached from the internet by publicly exposing at least one of its ports (See the [Ports](#ports) section to know more). Once this is done, Qovery will generate for you a domain to reach your application from the internet. You can also customize the domain assigned to your application and manage by yourself this assignment via the `Domain` section.
-
-### Qovery provided domains
-
-For each port publicly exposed, a domain is automatically assigned by Qovery to your application. Qovery will manage for you the networking and the TLS configuration for these domains.
-
-Example: `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` or `-p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` for helm services.
-
-Note:
-- each service deployed on the same cluster will have the same root domain assigned (example: `za8ad0657.bool.sh`)
-- the first characters of the domain (before the `-`) is based on the portName given to the port associated with this domain (See the [port section](#ports))
-- a default domain (without the portName) is assigned to the `default port`(See the [port section](#ports)). Example `zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh`
-
-**Special Case - Preview Environment**
-For each port exposed publicly, an additional domain will be created with the following pattern `portName-prId-srvName-envSourceName.cluster_domain`:
-- portName: is the port name, as explained above
-- prID: is the id of the PR that has generated the preview environment
-- srvName: is the name of the service
-- envSourceName: is the name of the blueprint environment that has created the current preview environment
-
-domain example: `p80-123-frontend-blueprint.za8ad0657.bool.sh`
-
-### Custom domains
-
-If you prefer to assign your own domain to the application, have a look at the [Domain section](#domains) to know more.
-
-### Advanced Settings
-
-You can further customize the service behaviour via the service advanced settings. Check [this documentation][docs.using-qovery.configuration.advanced-settings] to know more.
-
## Connecting to a database
To know how to access your database from your application, [have a look at the database section][docs.using-qovery.configuration.environment-variable#connecting-to-a-database].
@@ -530,6 +524,10 @@ Not every configuration parameter will be copied within the new service for cons
Please check the configuration of the new service before deploying it.
+## Advanced Settings
+
+You can further customize the service behaviour via the service advanced settings. Check [this documentation][docs.using-qovery.configuration.advanced-settings] to know more.
+
## Delete an Application
@@ -558,6 +556,7 @@ In the application overview, click on the `3 dots` button and remove the applica
[docs.using-qovery.configuration.advanced-settings]: /docs/using-qovery/configuration/advanced-settings/
[docs.using-qovery.configuration.application#build-mode]: /docs/using-qovery/configuration/application/#build-mode
[docs.using-qovery.configuration.application-health-checks]: /docs/using-qovery/configuration/application-health-checks/
+[docs.using-qovery.configuration.clusters#use-custom-domain-and-wildcard-tls-for-the-whole-cluster-beta]: /docs/using-qovery/configuration/clusters/#use-custom-domain-and-wildcard-tls-for-the-whole-cluster-beta
[docs.using-qovery.configuration.environment-variable#connecting-to-a-database]: /docs/using-qovery/configuration/environment-variable/#connecting-to-a-database
[docs.using-qovery.configuration.environment-variable#connecting-to-another-application]: /docs/using-qovery/configuration/environment-variable/#connecting-to-another-application
[docs.using-qovery.configuration.environment-variable]: /docs/using-qovery/configuration/environment-variable/
diff --git a/website/docs/using-qovery/configuration/application.md.erb b/website/docs/using-qovery/configuration/application.md.erb
index b78cecbd6c..c17e4d1266 100644
--- a/website/docs/using-qovery/configuration/application.md.erb
+++ b/website/docs/using-qovery/configuration/application.md.erb
@@ -351,7 +351,7 @@ Within this section you can define the port exposed by your application to the o
You can edit the existing ports or declare new ones by specifying:
- Application port: this is the port exposed internally by your application for the other services.
- Protocol: you can select the protocol used by your application : HTTP (for both standard HTTP or websocket communications), gRPC, TCP, UDP.
-- Publicly exposed: it allows you to expose over the public network your service. A public domain will be assigned to your application during the deployment (see [Connectin from the internet section](#connecting-from-the-internet))
+- Publicly exposed: it allows you to expose over the public network your service. A public domain will be assigned to your application during the deployment (see [Connecting from the internet section](#connecting-from-the-internet))
- If Publicly Exposed is selected:
- External port: it is the port that can be used to access this service over the internet (when exposed publicly). Note that for HTTP and gRPC the port is set by default to 443.
- Port Name: it is the name assigned to the port. When multiple ports are exposed publicly, its value is used to route the traffic to the right port based on the called subdomain (which will contain the port name value). Since each port is exposed on the port 443, having a different subdomain is the only way to have multiple ports exposed over the internet. If not set, the default value is `p` (see [Qovery Provided Domain section](#qovery-provided-domains) for more information)
@@ -377,14 +377,8 @@ To know more about how to configure your Liveness and Readiness probes, have a l
This section allows to specify which changes on your repository should trigger an auto-deploy (if enabled). To know more about how to configure your Deployment Restrictions, have a look at the [deployment restrictions section][docs.using-qovery.deployment.deploying-with-auto-deploy#filtering-commits-triggering-the-auto-deploy].
-### Domains
-
<%= configure_domains("application") %>
-### Advanced Settings
-
-You can further customize the service behaviour via the service advanced settings. Check [this documentation][docs.using-qovery.configuration.advanced-settings] to know more.
-
## Connecting to a database
To know how to access your database from your application, [have a look at the database section][docs.using-qovery.configuration.environment-variable#connecting-to-a-database].
@@ -412,6 +406,10 @@ To connect to your application via SSH, please use the via the [Qovery SSH comma
<%= clone_service() %>
+## Advanced Settings
+
+You can further customize the service behaviour via the service advanced settings. Check [this documentation][docs.using-qovery.configuration.advanced-settings] to know more.
+
## Delete an Application
diff --git a/website/docs/using-qovery/configuration/clusters.md b/website/docs/using-qovery/configuration/clusters.md
index a51d75ee39..1b54696f2b 100644
--- a/website/docs/using-qovery/configuration/clusters.md
+++ b/website/docs/using-qovery/configuration/clusters.md
@@ -1,5 +1,5 @@
---
-last_modified_on: "2024-07-03"
+last_modified_on: "2024-07-30"
title: "Clusters"
description: "Learn how to configure your Kubernetes clusters on Qovery"
---
@@ -621,7 +621,7 @@ Please note that you will have to manually delete on your cloud account:
- the image registry linked to this cluster
- any resource created by a lifecycle job that will not be properly deleted during the `environment deletion` event.
-Check [this section][#cleaning-up-a-cluster-from-your-aws-account] to find these elements and delete them.
+Check [this section](#cleaning-up-a-cluster-from-your-aws-account) to find these elements and delete them.
@@ -643,7 +643,7 @@ Please note that you will have to manually delete on your cloud account:
- any managed database that was created via Qovery
- any resource created by a lifecycle job that will not be properly deleted during the `environment deletion` event.
-Check [this section][#cleaning-up-a-cluster-from-your-aws-account] to find these elements and delete them.
+Check [this section](#cleaning-up-a-cluster-from-your-aws-account) to find these elements and delete them.
@@ -658,7 +658,7 @@ This operation will delete:
-Check [this section][#cleaning-up-a-cluster-from-your-aws-account] to find these elements and delete them.
+Check [this section](#cleaning-up-a-cluster-from-your-aws-account) to find these elements and delete them.
diff --git a/website/docs/using-qovery/configuration/clusters.md.erb b/website/docs/using-qovery/configuration/clusters.md.erb
index cb6a0a1c60..c340b57254 100644
--- a/website/docs/using-qovery/configuration/clusters.md.erb
+++ b/website/docs/using-qovery/configuration/clusters.md.erb
@@ -613,7 +613,7 @@ Please note that you will have to manually delete on your cloud account:
- the image registry linked to this cluster
- any resource created by a lifecycle job that will not be properly deleted during the `environment deletion` event.
-Check [this section][#cleaning-up-a-cluster-from-your-aws-account] to find these elements and delete them.
+Check [this section](#cleaning-up-a-cluster-from-your-aws-account) to find these elements and delete them.
@@ -635,7 +635,7 @@ Please note that you will have to manually delete on your cloud account:
- any managed database that was created via Qovery
- any resource created by a lifecycle job that will not be properly deleted during the `environment deletion` event.
-Check [this section][#cleaning-up-a-cluster-from-your-aws-account] to find these elements and delete them.
+Check [this section](#cleaning-up-a-cluster-from-your-aws-account) to find these elements and delete them.
@@ -650,7 +650,7 @@ This operation will delete:
-Check [this section][#cleaning-up-a-cluster-from-your-aws-account] to find these elements and delete them.
+Check [this section](#cleaning-up-a-cluster-from-your-aws-account) to find these elements and delete them.
diff --git a/website/docs/using-qovery/configuration/environment.md b/website/docs/using-qovery/configuration/environment.md
index 63c3c9ce53..dba5870984 100644
--- a/website/docs/using-qovery/configuration/environment.md
+++ b/website/docs/using-qovery/configuration/environment.md
@@ -1,5 +1,5 @@
---
-last_modified_on: "2023-12-10"
+last_modified_on: "2024-07-30"
title: "Environment"
description: "Learn how to configure your Environments on Qovery"
---
@@ -207,7 +207,7 @@ Cloning an environment is possible directly from the 3 dots menu of your environ
When cloning an environment, every configuration of the original environment will be copied except for:
-- [Application custom domains][docs.using-qovery.configuration.application#domains]: custom domains are not cloned to avoid collision.
+- [Application custom domains][docs.using-qovery.configuration.application#custom-domains]: custom domains are not cloned to avoid collision.
- [Application BUILT_IN variables][docs.using-qovery.configuration.environment-variable#built_in-variables]: Since completely new services will be create, the original built_in variables will be replaced. Aliases and overrides are preserved during the clone operation.
## Terraform exporter
@@ -243,7 +243,7 @@ This is a non-recoverable operation. By deleting your environment, all your runn
To delete your environment, you must go in the `settings` > `Danger zone` and delete your Environment.
-[docs.using-qovery.configuration.application#domains]: /docs/using-qovery/configuration/application/#domains
+[docs.using-qovery.configuration.application#custom-domains]: /docs/using-qovery/configuration/application/#custom-domains
[docs.using-qovery.configuration.application]: /docs/using-qovery/configuration/application/
[docs.using-qovery.configuration.cronjob]: /docs/using-qovery/configuration/cronjob/
[docs.using-qovery.configuration.database]: /docs/using-qovery/configuration/database/
diff --git a/website/docs/using-qovery/configuration/environment.md.erb b/website/docs/using-qovery/configuration/environment.md.erb
index a5ee48a7ea..770bd0251d 100644
--- a/website/docs/using-qovery/configuration/environment.md.erb
+++ b/website/docs/using-qovery/configuration/environment.md.erb
@@ -198,7 +198,7 @@ Cloning an environment is possible directly from the 3 dots menu of your environ
When cloning an environment, every configuration of the original environment will be copied except for:
-- [Application custom domains][docs.using-qovery.configuration.application#domains]: custom domains are not cloned to avoid collision.
+- [Application custom domains][docs.using-qovery.configuration.application#custom-domains]: custom domains are not cloned to avoid collision.
- [Application BUILT_IN variables][docs.using-qovery.configuration.environment-variable#built_in-variables]: Since completely new services will be create, the original built_in variables will be replaced. Aliases and overrides are preserved during the clone operation.
## Terraform exporter
diff --git a/website/docs/using-qovery/configuration/helm.md b/website/docs/using-qovery/configuration/helm.md
index af1bf69176..558ab4bfde 100644
--- a/website/docs/using-qovery/configuration/helm.md
+++ b/website/docs/using-qovery/configuration/helm.md
@@ -1,5 +1,5 @@
---
-last_modified_on: "2024-04-12"
+last_modified_on: "2024-07-30"
title: "Helm"
description: "Learn how to configure your Helm on Qovery"
---
@@ -271,13 +271,39 @@ You can edit the existing ports or declare new ones by specifying:
### Domains
-Within this section you can customize the domain used to reach your helm services.
+## Connecting from the internet
+
+Your helm services can be reached from the internet by publicly exposing at least one of its ports (See the [Ports](#ports) section to know more). Once this is done, Qovery will generate and assign a domain to your application (See [this section](#qovery-provided-domains) to know more). You can customize the domain assigned to your application via the `Domain` section in the settings (see [this section](#custom-domains) to know more).
+
+### Qovery provided domains
+
+For each port publicly exposed, a domain is automatically assigned by Qovery to your helm services. Qovery will manage for you the networking and the TLS configuration for these domains.
+
+Example: `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` or `-p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` for helm services.
+
+Note:
+- each service deployed on the same cluster will have the same root domain assigned (example: `za8ad0657.bool.sh`)
+- the first characters of the domain (before the `-`) is based on the portName given to the port associated with this domain (See the [port section](#ports))
+- a default domain (without the portName) is assigned to the `default port`(See the [port section](#ports)). Example `zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh`
+
+**Special Case - Preview Environment**
+For each port exposed publicly, an additional domain will be created with the following pattern `portName-prId-srvName-envSourceName.cluster_domain`:
+- portName: is the port name, as explained above
+- prID: is the id of the PR that has generated the preview environment
+- srvName: is the name of the service
+- envSourceName: is the name of the blueprint environment that has created the current preview environment
+
+domain example: `p80-123-frontend-blueprint.za8ad0657.bool.sh`
+
+### Custom domains
+
+If you prefer to assign your own domain to the helm services, you can customize it from the "Domain" section within the helm services settings.
You can customize the domain of your helm services in different ways, depending on what you want to achieve:
* You want to use your own domain for your helm services
-* You want to modify the subdomain assigned to your helm services by Qovery (i.e. change `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` into `my-app-domain.za8ad0657.bool.sh`).
+* You want to modify the subdomain assigned to your helm services by Qovery (i.e. change `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` into `my-app-domain.za8ad0657.bool.sh`). See [this section](#qovery-provided-domains) to know more about these domains.
-In both cases, you can assign the new custom domain to your helm services press the `Add Domain` button.
+In both cases, you can assign the new custom domain by pressing the `Add Domain` button.
@@ -293,29 +319,31 @@ This configuration will be **automatically removed** on every cloned environment
Once the domain is added within the Qovery console (Example: mydomain.com), you need to configure within your DNS two `CNAME` records pointing to the domain provided by Qovery, as shown in the UI (example: mydomain.com CNAME za7cc1b71-z4b8474b3-gtw.zc531a994.rustrocks.cloud and *.mydomain.com CNAME za7cc1b71-z4b8474b3-gtw.zc531a994.rustrocks.cloud).
-Having a wildcard domain (example: *.mydomain.com) configured on your DNS will avoid you to modify the Qovery setup every time you want to add a new subdomain. If `wildcard` is not supported by your DNS provider, you will have to configure each subdomain manually.
+Having a wildcard domain entry (example: *.mydomain.com) configured on your DNS will avoid you to modify the Qovery setup every time you want to add a new subdomain. If `wildcard` is not supported by your DNS provider, you will have to configure each subdomain manually.
-If the service needs to expose more than one port publicly, you can define a dedicated subdomain to redirect the traffic on the right port by setting the “Port Name” value within the [port settings](#ports).
+If a service needs to expose more than one port publicly, you can define a dedicated subdomain to redirect the traffic on the right port by setting the “Port Name” value within the [port settings](#ports).
-From this point, Qovery will automatically handle the TLS/SSL certificate creation and renewal for the configured domain.
+After re-deploying the service, Qovery will automatically handle the TLS/SSL certificate creation and renewal for the configured domain.
-** Special case - CDN in proxy mode **
+
+
+[We prepared a guide and video tutorial that explains how to set up your custom domain.][guides.getting-started.setting-custom-domain]
+
+
+
+** Special case - domain behind a CDN **
-If your service is behind a CDN using a `proxy mode` (i.e. the traffic is routed through the CDN to Qovery), make sure to disable the option "Generate certificate" on the domain setup. Since the certificate of your domain is directly managed by the CDN, Qovery won't be able to do that for you and it will raise warnings on your application status.
+If your service is behind a CDN using a `proxy mode` (i.e. the traffic is routed through the CDN to Qovery), make sure to enable the option `Domain behind a CDN` and disable the option "Generate certificate" on the domain setup. Since the certificate of your domain is directly managed by the CDN, Qovery won't be able to do that for you and it will raise warnings on your application status.
-
-
-[We prepared a guide and video tutorial that explains how to set up your custom domain.][guides.getting-started.setting-custom-domain]
-
-
+If you are using Cloudflare to manage your CDN, we can also manage automatically your custom domain configuration via a wildcard domain setup for the whole cluster. Check our [documentation here][docs.using-qovery.configuration.clusters#use-custom-domain-and-wildcard-tls-for-the-whole-cluster-beta]
#### Change the auto assigned sub-domain
@@ -332,34 +360,6 @@ Qovery does not check collision in the domain declaration. Make sure you assign
-## Connecting from the internet
-
-Your helm services can be reached from the internet by publicly exposing at least one of its ports (See the [Ports](#ports) section to know more). Once this is done, Qovery will generate for you a domain to reach your application from the internet. You can also customize the domain assigned to your application and manage by yourself this assignment via the `Domain` section.
-
-### Qovery provided domains
-
-For each port publicly exposed, a domain is automatically assigned by Qovery to your helm services. Qovery will manage for you the networking and the TLS configuration for these domains.
-
-Example: `p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` or `-p80-zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh` for helm services.
-
-Note:
-- each service deployed on the same cluster will have the same root domain assigned (example: `za8ad0657.bool.sh`)
-- the first characters of the domain (before the `-`) is based on the portName given to the port associated with this domain (See the [port section](#ports))
-- a default domain (without the portName) is assigned to the `default port`(See the [port section](#ports)). Example `zdf72de72-z709e1a88-gtw.za8ad0657.bool.sh`
-
-**Special Case - Preview Environment**
-For each port exposed publicly, an additional domain will be created with the following pattern `portName-prId-srvName-envSourceName.cluster_domain`:
-- portName: is the port name, as explained above
-- prID: is the id of the PR that has generated the preview environment
-- srvName: is the name of the service
-- envSourceName: is the name of the blueprint environment that has created the current preview environment
-
-domain example: `p80-123-frontend-blueprint.za8ad0657.bool.sh`
-
-### Custom domains
-
-If you prefer to assign your own domain to the helm services, have a look at the [Domain section](#domains) to know more.
-
## Logs
To learn how to display your helm logs, navigate to [logs section][docs.using-qovery.deployment.logs#live-logs]
@@ -412,6 +412,7 @@ In the helm overview, click on the `3 dots` button and remove the helm.
[docs.qovery.deployment.deploying-with-auto-deploy]: /docs/using-qovery/deployment/deploying-with-auto-deploy/
[docs.using-qovery.configuration.advanced-settings#network-settings]: /docs/using-qovery/configuration/advanced-settings/#network-settings
[docs.using-qovery.configuration.advanced-settings]: /docs/using-qovery/configuration/advanced-settings/
+[docs.using-qovery.configuration.clusters#use-custom-domain-and-wildcard-tls-for-the-whole-cluster-beta]: /docs/using-qovery/configuration/clusters/#use-custom-domain-and-wildcard-tls-for-the-whole-cluster-beta
[docs.using-qovery.configuration.environment]: /docs/using-qovery/configuration/environment/
[docs.using-qovery.configuration.helm#using-the-environment-variables-in-your-chart]: /docs/using-qovery/configuration/helm/#using-the-environment-variables-in-your-chart
[docs.using-qovery.configuration.organization.helm-repository]: /docs/using-qovery/configuration/organization/helm-repository/
diff --git a/website/docs/using-qovery/deployment/deployment-actions.md b/website/docs/using-qovery/deployment/deployment-actions.md
index 2a53cdbd43..9ad362ff94 100644
--- a/website/docs/using-qovery/deployment/deployment-actions.md
+++ b/website/docs/using-qovery/deployment/deployment-actions.md
@@ -1,5 +1,5 @@
---
-last_modified_on: "2024-03-01"
+last_modified_on: "2024-07-16"
title: "Deployment Actions"
description: "Learn how to deploy your application"
---
@@ -130,13 +130,13 @@ Once triggered, the deployment status service goes through the following statuse
* **RESTART ERROR** : Qovery couldn't process the restart request
### Cancel Deployment
-The `Cancel Deployment` action allows you to abort any `Deploy` or `Redeploy` action. This action is available only if the current deployment status is `Queued` or `Building` or `Deploying`.
-
+The `Cancel Deployment` action allows you to abort any `Deploy` or `Redeploy` action and stop the execution of the deployment pipeline. This action is available only if the current deployment status is `Queued` or `Building` or `Deploying`.
-The action allows to cancel the operation, not to rollback to the previous state. If during the deployment of services A and B, the `Cancel Deployment` action is triggered after that the deployment of service A has been completed, only the deployment of service B will be cancelled (service A will use the new config / version)
+If a deployment of a service A is already ongoing, the cancel operation will stop the deployment execution and rollback the service A to the previous version. Any service already deployed during the pipeline execution will not rollback to the previous version.
+
+For [Lifecycle Jobs][docs.using-qovery.configuration.lifecycle-job], the cancel operation is not taken into account unless it is `forced` via the checkbox available in the "Deployment cancel" modal.
-
### Deploy other version
The `Deploy other version` action allows you to deploy a different version for your service. This action is available no matter the deployment status of the service.
@@ -161,6 +161,7 @@ Once you click on the action, this panel will appear, and you will be able to ch
By pressing on the Deploy button, a deployment of the service will be triggered using the selected version.
+[docs.using-qovery.configuration.lifecycle-job]: /docs/using-qovery/configuration/lifecycle-job/
[docs.using-qovery.deployment.deployment-actions#deploy]: /docs/using-qovery/deployment/deployment-actions/#deploy
[docs.using-qovery.deployment.deployment-actions#restart-service]: /docs/using-qovery/deployment/deployment-actions/#restart-service
[docs.using-qovery.deployment.deployment-pipeline]: /docs/using-qovery/deployment/deployment-pipeline/
diff --git a/website/docs/using-qovery/deployment/deployment-actions.md.erb b/website/docs/using-qovery/deployment/deployment-actions.md.erb
index a305682644..a88baabdb7 100644
--- a/website/docs/using-qovery/deployment/deployment-actions.md.erb
+++ b/website/docs/using-qovery/deployment/deployment-actions.md.erb
@@ -121,13 +121,13 @@ Once triggered, the deployment status service goes through the following statuse
* **RESTART ERROR** : Qovery couldn't process the restart request
### Cancel Deployment
-The `Cancel Deployment` action allows you to abort any `Deploy` or `Redeploy` action. This action is available only if the current deployment status is `Queued` or `Building` or `Deploying`.
-
+The `Cancel Deployment` action allows you to abort any `Deploy` or `Redeploy` action and stop the execution of the deployment pipeline. This action is available only if the current deployment status is `Queued` or `Building` or `Deploying`.
-The action allows to cancel the operation, not to rollback to the previous state. If during the deployment of services A and B, the `Cancel Deployment` action is triggered after that the deployment of service A has been completed, only the deployment of service B will be cancelled (service A will use the new config / version)
+If a deployment of a service A is already ongoing, the cancel operation will stop the deployment execution and rollback the service A to the previous version. Any service already deployed during the pipeline execution will not rollback to the previous version.
+
+For [Lifecycle Jobs][docs.using-qovery.configuration.lifecycle-job], the cancel operation is not taken into account unless it is `forced` via the checkbox available in the "Deployment cancel" modal.
-
### Deploy other version
The `Deploy other version` action allows you to deploy a different version for your service. This action is available no matter the deployment status of the service.
diff --git a/website/guides/tutorial/use-an-api-gateway-in-front-of-multiple-services.md b/website/guides/tutorial/use-an-api-gateway-in-front-of-multiple-services.md
index e25530ec7b..5314b6aaef 100644
--- a/website/guides/tutorial/use-an-api-gateway-in-front-of-multiple-services.md
+++ b/website/guides/tutorial/use-an-api-gateway-in-front-of-multiple-services.md
@@ -1,5 +1,5 @@
---
-last_modified_on: "2023-05-29"
+last_modified_on: "2024-07-30"
$schema: "/.meta/.schemas/guides.json"
title: Use an API gateway in front of multiple services
description: Learn how to use an API gateway in front of multiple services
@@ -121,13 +121,13 @@ When you have multiple applications within the same environment, it is difficult
## Set up custom domain
-Add a custom domain to expose your API gateway with the domain of your choice. Check out [this documentation][docs.using-qovery.configuration.application#domains] to set up your domain.
+Add a custom domain to expose your API gateway with the domain of your choice. Check out [this documentation][docs.using-qovery.configuration.application#custom-domains] to set up your domain.
## Deploy API Gateway
Once everything is set up, you can deploy your application.
-[docs.using-qovery.configuration.application#domains]: /docs/using-qovery/configuration/application/#domains
+[docs.using-qovery.configuration.application#custom-domains]: /docs/using-qovery/configuration/application/#custom-domains
[docs.using-qovery.configuration.environment-variable#alias-environment-variable]: /docs/using-qovery/configuration/environment-variable/#alias-environment-variable
[urls.start_qovery]: https://start.qovery.com
diff --git a/website/guides/tutorial/use-an-api-gateway-in-front-of-multiple-services.md.erb b/website/guides/tutorial/use-an-api-gateway-in-front-of-multiple-services.md.erb
index e47a10fdac..1a1b92eb88 100644
--- a/website/guides/tutorial/use-an-api-gateway-in-front-of-multiple-services.md.erb
+++ b/website/guides/tutorial/use-an-api-gateway-in-front-of-multiple-services.md.erb
@@ -112,7 +112,7 @@ When you have multiple applications within the same environment, it is difficult
## Set up custom domain
-Add a custom domain to expose your API gateway with the domain of your choice. Check out [this documentation][docs.using-qovery.configuration.application#domains] to set up your domain.
+Add a custom domain to expose your API gateway with the domain of your choice. Check out [this documentation][docs.using-qovery.configuration.application#custom-domains] to set up your domain.
## Deploy API Gateway