concourse / concourse/concourse-chart

[Feature] Support for multiple worker groups with different configurations

Open
#274 1 comment 7 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Mustache
Stars
160
Forks
189
PR merge metrics
No merged PRs in 30d

Description

It would be great to be able to specify multiple sets of worker statefulsets, each with different configurations. Consider some implementation like:

# values.yaml
concourse:
  workers:  # replacing concourse.worker
    default:  # this is the existing worker group
      <<: *existing-concourse-worker-map
    gpu-enabled:
      # this map merged on top of the default before templating
      tag: gpu-enabled

workers:  # replacing worker, whose new default values look like:
  default:
    <<: *existing-worker-map
  # with new groups added below
  gpu-enabled:
    # this map merged on top of the default before templating
    enabled: true

This would replace current solutions offered such as handling multiple Helm releases -- one containing all the components while the rest have web.enabled=false and postgres.enabled=false. Logically, a single Concourse cluster should be able to be managed by a single Helm release, and I think the added complexity from this feature would not outweigh the benefits.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing values.yaml and the existing worker configuration and StatefulSet templates; the issue does not name specific files or tests. Define how default and additional worker groups merge their configurations, then verify that one Helm release can manage groups with distinct settings instead of requiring multiple releases.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes
Domain
devops, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.