Add concourse as the foundational CI tool to k8s-cluster

This change allows to add a concourse-server to the kubernetes cluster.
This commit is contained in:
2025-11-27 18:01:07 +01:00
parent 0eaa5d3b08
commit 91f81b8726
5 changed files with 101 additions and 27 deletions

View File

@@ -1,6 +1,8 @@
cert_manager_state: present
cert_manager_version: v1.18.2
letsencrypt_clusterissuers: {}
gitea_chart_version: 12.3.0
gitea_state: present
gitea_image_rootless: False
@@ -9,3 +11,8 @@ gitea_image: gitea-for-nehrke-info
gitea_image_tag: latest
gitea_image_registry: docker.nehrke.info
concourse_chart_version: 19.0.2
concourse_state: present
concourse_namespace: concourse
concourse_local_users: {}
concourse_worker_replicas: 2

View File

@@ -0,0 +1,45 @@
- name: Ensure concourse namespace
kubernetes.core.k8s:
state: "{{ concourse_state }}"
definition:
apiVersion: v1
kind: Namespace
metadata:
name: "{{ concourse_namespace }}"
labels:
name: "{{ concourse_namespace }}"
- name: Deploy concourse {{ concourse_chart_version }}
kubernetes.core.helm:
name: concourse
chart_ref: concourse
chart_version: "{{ concourse_chart_version }}"
chart_repo_url: https://concourse-charts.storage.googleapis.com/
release_namespace: "{{ concourse_namespace }}"
release_state: "{{ concourse_state }}"
values:
concourse:
web:
kubernetes:
keepNamespaces: False
externalUrl: "https://{{ concourse_host }}"
enableResourceCausality: True
secrets:
localUsers: "{{ concourse_local_users.items() | map('join', ':') | join(',') }}"
worker:
replicas: "{{ concourse_worker_replicas }}"
web:
env:
- name: CONCOURSE_MAIN_TEAM_LOCAL_USER
value: "{{ concourse_local_users.keys() | join(',') }}"
ingress:
enabled: True
annotations:
cert-manager.io/cluster-issuer: "{{ concourse_certificate_issuer }}"
traefik.ingress.kubernetes.io/router.middlewares: default-redirect-https@kubernetescrd
hosts:
- "{{ concourse_host }}"
tls:
- hosts:
- "{{ concourse_host }}"
secretName: concourse-tls

View File

@@ -9,3 +9,9 @@
- k8s
- gitea
import_tasks: _gitea.yml
- name: Ensure concourse
tags:
- k8s
- concourse
import_tasks: _concourse.yml