From 49d8393f286ec92a4198c0407de0c5776f22f981 Mon Sep 17 00:00:00 2001 From: Evan Read Date: Wed, 21 Aug 2019 20:17:04 +0000 Subject: [PATCH] Edit of new Worker section --- doc/topics/autodevops/index.md | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/doc/topics/autodevops/index.md b/doc/topics/autodevops/index.md index 4bfcd4aad96..b8ad552accc 100644 --- a/doc/topics/autodevops/index.md +++ b/doc/topics/autodevops/index.md @@ -587,29 +587,32 @@ procfile exec` to replicate the environment where your application will run. #### Workers Some web applications need to run extra deployments for "worker processes". For -example it is common in a Rails application to have a separate worker process +example, it is common in a Rails application to have a separate worker process to run background tasks like sending emails. The [default Helm chart](https://gitlab.com/gitlab-org/charts/auto-deploy-app) used in Auto Deploy [has support for running worker processes](https://gitlab.com/gitlab-org/charts/auto-deploy-app/merge_requests/9). -In order to run a worker you'll need to ensure that it is able to respond to -the standard health checks which expect a successful HTTP response on port -`5000`. For sidekiq you could make use of the -[sidekiq_alive gem](https://rubygems.org/gems/sidekiq_alive) to do this. +In order to run a worker, you'll need to ensure that it is able to respond to +the standard health checks, which expect a successful HTTP response on port +`5000`. For [Sidekiq](https://github.com/mperham/sidekiq), you could make use of +the [`sidekiq_alive` gem](https://rubygems.org/gems/sidekiq_alive) to do this. -In order to work with sidekiq you'll also need to ensure your deployments have -access to a redis instance. Auto DevOps won't deploy this for you so you'll -need to manage this separately and then set a CI variable -`K8S_SECRET_REDIS_URL` which the URL of this instance to ensure it's passed -into your deployments. +In order to work with Sidekiq, you'll also need to ensure your deployments have +access to a Redis instance. Auto DevOps won't deploy this for you so you'll +need to: -Once you have configured your worker to respond to health checks you you will +- Maintain your own Redis instance. +- Set a CI variable `K8S_SECRET_REDIS_URL`, which the URL of this instance to + ensure it's passed into your deployments. + +Once you have configured your worker to respond to health checks, you will need to configure a CI variable `HELM_UPGRADE_EXTRA_ARGS` with the value -`--values helm-values.yaml`. Then you can, for example, run a -[sidekiq](https://github.com/mperham/sidekiq) worker for your rails application -by adding a file named `helm-values.yaml` to your repo with the following +`--values helm-values.yaml`. + +Then you can, for example, run a Sidekiq worker for your Rails application +by adding a file named `helm-values.yaml` to your repository with the following content: ```yml