Skip to content

Commit

Permalink
docs: deprecate lagoon.rollout settings
Browse files Browse the repository at this point in the history
  • Loading branch information
rocketeerbkw committed Jan 24, 2025
1 parent aa0a28b commit 4534eec
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 37 deletions.
21 changes: 6 additions & 15 deletions docs/concepts-basics/docker-compose-yml.md
Original file line number Diff line number Diff line change
Expand Up @@ -354,21 +354,6 @@ In the example above, the services are named `nginx` and `php` (but you can call

In order for Lagoon to realize which one is the `nginx` and which one is the `php` service, we define it via `lagoon.deployment.servicetype: nginx` and `lagoon.deployment.servicetype: php`.

## Helm Templates (Kubernetes only)

Lagoon uses [Helm](https://helm.sh/) for templating on Kubernetes. To do this, a series of [Charts](https://github.com/uselagoon/build-deploy-tool/tree/main/legacy/helmcharts) are included with the `build-deploy-tool` image.

## Custom Rollout Monitor Types

By default, Lagoon expects that services from custom templates are rolled out via a [`DeploymentConfig`](https://docs.openshift.com/container-platform/4.4/applications/deployments/what-deployments-are.html#deployments-and-deploymentconfigs_what-deployments-are) object within Kubernetes or Openshift. It monitors the rollout based on this object. In some cases, the services that are defined via custom deployment need a different way of monitoring. This can be defined via `lagoon.rollout`:

* `deploymentconfig` - This is the default. Expects a [`DeploymentConfig`](https://docs.openshift.com/container-platform/4.4/applications/deployments/what-deployments-are.html#deployments-and-deploymentconfigs_what-deployments-are) object in the template for the service.
* `statefulset` - Expects a [`Statefulset`](https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/) object in the template for the service.
* `daemonset` - Expects a [`Daemonset`](https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/) object in the template for the service.
* `false` - Will not monitor any rollouts, and will just be happy if the template applies and does not throw any errors.

You can also overwrite the rollout for just one specific environment. This is done in [`.lagoon.yml`](lagoon-yml.md#environmentsnamerollouts).

## Docker Compose v2 compatibility

!!! bug
Expand Down Expand Up @@ -437,3 +422,9 @@ The corrected version combines both aliases into a single mapping key - you'll n
<< : [*default-volumes, *default-user]
...
```

## Deprecated

These settings have been deprecated and should be removed from use in your `docker-compose.yml`.

* `services.[name].labels.lagoon.rollout`
23 changes: 1 addition & 22 deletions docs/concepts-basics/lagoon-yml.md
Original file line number Diff line number Diff line change
Expand Up @@ -532,26 +532,6 @@ environments:
mariadb: mariadb.main.deployment.yml
```

### `environments.[name].rollouts`

The Lagoon build process checks the `lagoon.rollout` label from the `docker-compose.yml` file in order to check if the service needs a special rollout type \(read more about them in the [documentation of `docker-compose.yml`](docker-compose-yml.md#custom-rollout-monitor-types)\)

Sometimes you might want to override the **rollout type** just for a single environment, especially if you also overwrote the template type for the environment:

`service-name: rollout-type`

* `service-name` is the name of the service from `docker-compose.yml` you would like to override.
* `rollout-type` is the type of rollout. See [documentation of `docker-compose.yml`](docker-compose-yml.md#custom-rollout-monitor-types)\) for possible values.

#### Custom Rollout Type Example

```yaml title=".lagoon.yml"
environments:
main:
rollouts:
mariadb: statefulset
```

### `environments.[name].autogenerateRoutes`

This allows for any environments to get autogenerated routes when route autogeneration is disabled.
Expand Down Expand Up @@ -821,8 +801,6 @@ environments:
mariadb: mariadb
templates:
mariadb: mariadb.main.deployment.yml
rollouts:
mariadb: statefulset
cronjobs:
- name: drush cron
schedule: "M * * * *" # This will run the cron once per hour.
Expand Down Expand Up @@ -851,6 +829,7 @@ These settings have been deprecated and should be removed from use in your `.lag
The `None` option is equivalent to `Redirect`.

* `environments.[name].monitoring_urls`
* `environments.[name].rollouts`
* `environments.[name].routes.[service].[route].hsts`
* `environments.[name].routes.[service].[route].insecure`

Expand Down

0 comments on commit 4534eec

Please sign in to comment.