From 32c94b5b70db8215f8b711d5b59e9bd3a288adfe Mon Sep 17 00:00:00 2001 From: jenkins-x-bot Date: Fri, 3 May 2024 13:34:46 +0000 Subject: [PATCH] chore: release 1.17.2 --- changelog.md | 6 + charts/lighthouse/Chart.yaml | 4 +- charts/lighthouse/README.md | 308 ++++++++++++------------ charts/lighthouse/lighthouse-1.17.2.tgz | Bin 0 -> 15826 bytes charts/lighthouse/values.yaml | 151 +----------- 5 files changed, 166 insertions(+), 303 deletions(-) create mode 100644 changelog.md create mode 100644 charts/lighthouse/lighthouse-1.17.2.tgz diff --git a/changelog.md b/changelog.md new file mode 100644 index 000000000..3487be227 --- /dev/null +++ b/changelog.md @@ -0,0 +1,6 @@ + +## Changes in version 1.17.2 + +### Chores + +* deps: upgrade jenkins-x/go-scm to version 1.14.34 (jenkins-x-bot) diff --git a/charts/lighthouse/Chart.yaml b/charts/lighthouse/Chart.yaml index edc18364e..bf7cee402 100644 --- a/charts/lighthouse/Chart.yaml +++ b/charts/lighthouse/Chart.yaml @@ -3,6 +3,6 @@ description: | This chart bootstraps installation of [Lighthouse](https://github.com/jenkins-x/lighthouse). icon: https://raw.githubusercontent.com/jenkins-x/jenkins-x-website/master/images/logo/jenkinsx-icon-color.svg name: lighthouse -version: 0.1.0-SNAPSHOT +version: 1.17.2 home: https://github.com/jenkins-x/lighthouse - +appVersion: 1.17.2 diff --git a/charts/lighthouse/README.md b/charts/lighthouse/README.md index ed4700eef..48370b1c7 100644 --- a/charts/lighthouse/README.md +++ b/charts/lighthouse/README.md @@ -42,157 +42,161 @@ helm uninstall my-lighthouse --namespace lighthouse ## Values -| Key | Type | Description | Default | -| --------------------------------------------------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `cluster.crds.create` | bool | Create custom resource definitions | `true` | -| `configMaps.config` | string | Raw `config.yaml` content | `nil` | -| `configMaps.configUpdater` | object | Settings used to configure the `config-updater` plugin | `{"orgAndRepo":"","path":""}` | -| `configMaps.create` | bool | Enables creation of `config.yaml` and `plugins.yaml` config maps | `false` | -| `configMaps.plugins` | string | Raw `plugins.yaml` content | `nil` | -| `engines.jenkins` | bool | Enables the Jenkins engine | `false` | -| `engines.jx` | bool | Enables the jx engine | `true` | -| `engines.tekton` | bool | Enables the tekton engine | `false` | -| `env` | object | Environment variables | `{"JX_DEFAULT_IMAGE":""}` | -| `externalPlugins[0].name` | string | | `"cd-indicators"` | -| `externalPlugins[0].requiredResources[0].kind` | string | | `"Service"` | -| `externalPlugins[0].requiredResources[0].name` | string | | `"cd-indicators"` | -| `externalPlugins[0].requiredResources[0].namespace` | string | | `"jx"` | -| `externalPlugins[1].name` | string | | `"lighthouse-webui-plugin"` | -| `externalPlugins[1].requiredResources[0].kind` | string | | `"Service"` | -| `externalPlugins[1].requiredResources[0].name` | string | | `"lighthouse-webui-plugin"` | -| `externalPlugins[1].requiredResources[0].namespace` | string | | `"jx"` | -| `foghorn.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the foghorn pods | `{}` | -| `foghorn.image.pullPolicy` | string | Template for computing the foghorn controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | -| `foghorn.image.repository` | string | Template for computing the foghorn controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-foghorn"` | -| `foghorn.image.tag` | string | Template for computing the foghorn controller docker image tag | `"{{ .Values.image.tag }}"` | -| `foghorn.logLevel` | string | The logging level: trace, debug, info, warn, panic, fatal | `"info"` | -| `foghorn.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the foghorn pods | `{}` | -| `foghorn.replicaCount` | int | Number of replicas | `1` | -| `foghorn.resources.limits` | object | Resource limits applied to the foghorn pods | `{"cpu":"100m","memory":"256Mi"}` | -| `foghorn.resources.requests` | object | Resource requests applied to the foghorn pods | `{"cpu":"80m","memory":"128Mi"}` | -| `foghorn.terminationGracePeriodSeconds` | int | Termination grace period for foghorn pods | `180` | -| `foghorn.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the foghorn pods | `[]` | -| `gcJobs.backoffLimit` | int | Set the backoff limit for failed cronJobs | `6` | -| `gcJobs.concurrencyPolicy` | string | Drives the job's concurrency policy | `"Forbid"` | -| `gcJobs.failedJobsHistoryLimit` | int | Drives the failed jobs history limit | `1` | -| `gcJobs.image.pullPolicy` | string | Template for computing the gc job docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | -| `gcJobs.image.repository` | string | Template for computing the gc job docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-gc-jobs"` | -| `gcJobs.image.tag` | string | Template for computing the gc job docker image tag | `"{{ .Values.image.tag }}"` | -| `gcJobs.logLevel` | string | The logging level: trace, debug, info, warn, panic, fatal | `"info"` | -| `gcJobs.maxAge` | string | Max age from which `LighthouseJob`s will be deleted | `"168h"` | -| `gcJobs.schedule` | string | Cron expression to periodically delete `LighthouseJob`s | `"0/30 * * * *"` | -| `gcJobs.successfulJobsHistoryLimit` | int | Drives the successful jobs history limit | `3` | -| `git.kind` | string | Git SCM provider (`github`, `gitlab`, `stash`) | `"github"` | -| `git.server` | string | Git server URL | `""` | -| `githubApp.enabled` | bool | Enables GitHub app authentication | `false` | -| `githubApp.username` | string | GitHub app user name | `"jenkins-x[bot]"` | -| `hmacSecretName` | string | Existing hmac secret to use for webhooks | `""` | -| `hmacToken` | string | Secret used for webhooks | `""` | -| `hmacTokenEnabled` | bool | Enables the use of a hmac token. This should always be enabled if possible - though some git providers don't support it such as bitbucket cloud | `true` | -| `image.parentRepository` | string | Docker registry to pull images from | `"ghcr.io/jenkins-x"` | -| `image.pullPolicy` | string | Image pull policy | `"IfNotPresent"` | -| `image.tag` | string | Docker images tag the following tag is latest on the main branch, it's a specific version on a git tag | `"latest"` | -| `jenkinscontroller.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the tekton controller pods | `{}` | -| `jenkinscontroller.image.pullPolicy` | string | Template for computing the tekton controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | -| `jenkinscontroller.image.repository` | string | Template for computing the Jenkins controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-jenkins-controller"` | -| `jenkinscontroller.image.tag` | string | Template for computing the tekton controller docker image tag | `"{{ .Values.image.tag }}"` | -| `jenkinscontroller.jenkinsToken` | string | The token for authenticating the Jenkins user | `nil` | -| `jenkinscontroller.jenkinsURL` | string | The URL of the Jenkins instance | `nil` | -| `jenkinscontroller.jenkinsUser` | string | The username for the Jenkins user | `nil` | -| `jenkinscontroller.logLevel` | string | The logging level: trace, debug, info, warn, panic, fatal | `"info"` | -| `jenkinscontroller.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the tekton controller pods | `{}` | -| `jenkinscontroller.podAnnotations` | object | Annotations applied to the tekton controller pods | `{}` | -| `jenkinscontroller.resources.limits` | object | Resource limits applied to the tekton controller pods | `{"cpu":"100m","memory":"256Mi"}` | -| `jenkinscontroller.resources.requests` | object | Resource requests applied to the tekton controller pods | `{"cpu":"80m","memory":"128Mi"}` | -| `jenkinscontroller.service` | object | Service settings for the tekton controller | `{"annotations":{}}` | -| `jenkinscontroller.terminationGracePeriodSeconds` | int | Termination grace period for tekton controller pods | `180` | -| `jenkinscontroller.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the tekton controller pods | `[]` | -| `keeper.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the keeper pods | `{}` | -| `keeper.datadog.enabled` | string | Enables datadog | `"true"` | -| `keeper.env` | object | Lets you define keeper specific environment variables | `{}` | -| `keeper.image.pullPolicy` | string | Template for computing the keeper controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | -| `keeper.image.repository` | string | Template for computing the keeper controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-keeper"` | -| `keeper.image.tag` | string | Template for computing the keeper controller docker image tag | `"{{ .Values.image.tag }}"` | -| `keeper.livenessProbe` | object | Liveness probe configuration | `{"initialDelaySeconds":120,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | -| `keeper.logLevel` | string | The logging level: trace, debug, info, warn, panic, fatal | `"info"` | -| `keeper.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the keeper pods | `{}` | -| `keeper.podAnnotations` | object | Annotations applied to the keeper pods | `{}` | -| `keeper.probe` | object | Liveness and readiness probes settings | `{"path":"/"}` | -| `keeper.readinessProbe` | object | Readiness probe configuration | `{"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | -| `keeper.replicaCount` | int | Number of replicas | `1` | -| `keeper.resources.limits` | object | Resource limits applied to the keeper pods | `{"cpu":"400m","memory":"512Mi"}` | -| `keeper.resources.requests` | object | Resource requests applied to the keeper pods | `{"cpu":"100m","memory":"128Mi"}` | -| `keeper.service` | object | Service settings for the keeper controller | `{"externalPort":80,"internalPort":8888,"type":"ClusterIP"}` | -| `keeper.statusContextLabel` | string | Label used to report status to git provider | `"Lighthouse Merge Status"` | -| `keeper.terminationGracePeriodSeconds` | int | Termination grace period for keeper pods | `30` | -| `keeper.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the keeper pods | `[]` | -| `lighthouseJobNamespace` | string | Namespace where `LighthouseJob`s and `Pod`s are created | Deployment namespace | -| `logFormat` | string | Log format either json or stackdriver | `"json"` | -| `logService` | string | The name of the service registered with logging | `""` | -| `logStackSkip` | string | Comma separated stack frames to skip from the log | `""` | -| `oauthSecretName` | string | Existing Git token secret | `""` | -| `oauthToken` | string | Git token (used when GitHub app authentication is not enabled) | `""` | -| `poller.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the poller pods | `{}` | -| `poller.contextMatchPattern` | string | Regex pattern to use to match commit status context | `""` | -| `poller.datadog.enabled` | string | Enables datadog | `"true"` | -| `poller.enabled` | bool | Whether to enable or disable the poller component | `false` | -| `poller.env` | object | Lets you define poller specific environment variables | `{"POLL_HOOK_ENDPOINT":"http://hook/hook/poll","POLL_PERIOD":"20s"}` | -| `poller.image.pullPolicy` | string | Template for computing the poller controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | -| `poller.image.repository` | string | Template for computing the poller controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-poller"` | -| `poller.image.tag` | string | Template for computing the poller controller docker image tag | `"{{ .Values.image.tag }}"` | -| `poller.internalPort` | int | | `8888` | -| `poller.livenessProbe` | object | Liveness probe configuration | `{"initialDelaySeconds":120,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | -| `poller.logLevel` | string | The logging level: trace, debug, info, warn, panic, fatal | `"info"` | -| `poller.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the poller pods | `{}` | -| `poller.podAnnotations` | object | Annotations applied to the poller pods | `{}` | -| `poller.probe` | object | Liveness and readiness probes settings | `{"path":"/"}` | -| `poller.readinessProbe` | object | Readiness probe configuration | `{"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | -| `poller.replicaCount` | int | Number of replicas | `1` | -| `poller.requireReleaseSuccess` | bool | Keep polling releases until the most recent commit status is successful | `false` | -| `poller.resources.limits` | object | Resource limits applied to the poller pods | `{"cpu":"400m","memory":"512Mi"}` | -| `poller.resources.requests` | object | Resource requests applied to the poller pods | `{"cpu":"100m","memory":"128Mi"}` | -| `poller.terminationGracePeriodSeconds` | int | Termination grace period for poller pods | `30` | -| `poller.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the poller pods | `[]` | -| `scope` | string | set scope to either `cluster` or `namespace` for permissions | `cluster` | -| `tektoncontroller.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the tekton controller pods | `{}` | -| `tektoncontroller.dashboardTemplate` | string | Go template expression for URLs in the dashboard if not using Tekton dashboard | `""` | -| `tektoncontroller.dashboardURL` | string | the dashboard URL (e.g. Tekton dashboard) | `""` | -| `tektoncontroller.image.pullPolicy` | string | Template for computing the tekton controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | -| `tektoncontroller.image.repository` | string | Template for computing the tekton controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-tekton-controller"` | -| `tektoncontroller.image.tag` | string | Template for computing the tekton controller docker image tag | `"{{ .Values.image.tag }}"` | -| `tektoncontroller.logLevel` | string | The logging level: trace, debug, info, warn, panic, fatal | `"info"` | -| `tektoncontroller.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the tekton controller pods | `{}` | -| `tektoncontroller.podAnnotations` | object | Annotations applied to the tekton controller pods | `{}` | -| `tektoncontroller.replicaCount` | int | Number of replicas | `1` | -| `tektoncontroller.resources.limits` | object | Resource limits applied to the tekton controller pods | `{"cpu":"100m","memory":"256Mi"}` | -| `tektoncontroller.resources.requests` | object | Resource requests applied to the tekton controller pods | `{"cpu":"80m","memory":"128Mi"}` | -| `tektoncontroller.service` | object | Service settings for the tekton controller | `{"annotations":{}}` | -| `tektoncontroller.terminationGracePeriodSeconds` | int | Termination grace period for tekton controller pods | `180` | -| `tektoncontroller.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the tekton controller pods | `[]` | -| `user` | string | Git user name (used when GitHub app authentication is not enabled) | `""` | -| `webhooks.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the webhooks pods | `{}` | -| `webhooks.customDeploymentTriggerCommand` | string | deployments can configure the ability to allow custom lighthouse triggers using their own unique chat prefix, for example extending the default `/test` trigger prefix let them specify `customDeploymentTriggerPrefix: foo` which means they can also use their own custom trigger /foo mycoolthing | `""` | -| `webhooks.image.pullPolicy` | string | Template for computing the webhooks controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | -| `webhooks.image.repository` | string | Template for computing the webhooks controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-webhooks"` | -| `webhooks.image.tag` | string | Template for computing the webhooks controller docker image tag | `"{{ .Values.image.tag }}"` | -| `webhooks.ingress.annotations` | object | Webhooks ingress annotations | `{}` | -| `webhooks.ingress.enabled` | bool | Enable webhooks ingress | `false` | -| `webhooks.ingress.hosts` | list | Webhooks ingress host names | `[]` | -| `webhooks.ingress.ingressClassName` | string | Webhooks ingress ingressClassName | `nil` | -| `webhooks.labels` | object | allow optional labels to be added to the webhook deployment | `{}` | -| `webhooks.livenessProbe` | object | Liveness probe configuration | `{"initialDelaySeconds":60,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | -| `webhooks.logLevel` | string | The logging level: trace, debug, info, warn, panic, fatal | `"info"` | -| `webhooks.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the webhooks pods | `{}` | -| `webhooks.podAnnotations` | object | Annotations applied to the webhooks pods | `{}` | -| `webhooks.podLabels` | object | | `{}` | -| `webhooks.probe` | object | Liveness and readiness probes settings | `{"path":"/"}` | -| `webhooks.readinessProbe` | object | Readiness probe configuration | `{"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | -| `webhooks.replicaCount` | int | Number of replicas | `1` | -| `webhooks.resources.limits` | object | Resource limits applied to the webhooks pods | `{"cpu":"100m","memory":"512Mi"}` | -| `webhooks.resources.requests` | object | Resource requests applied to the webhooks pods | `{"cpu":"80m","memory":"128Mi"}` | -| `webhooks.service` | object | Service settings for the webhooks controller | `{"annotations":{},"externalPort":80,"internalPort":8080,"type":"ClusterIP"}` | -| `webhooks.serviceName` | string | Allows overriding the service name, this is here for compatibility reasons, regular users should clear this out | `"hook"` | -| `webhooks.terminationGracePeriodSeconds` | int | Termination grace period for webhooks pods | `180` | -| `webhooks.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the webhooks pods | `[]` | +| Key | Type | Description | Default | +|-----|------|-------------|---------| +| `cluster.crds.create` | bool | Create custom resource definitions | `true` | +| `configMaps.config` | string | Raw `config.yaml` content | `nil` | +| `configMaps.configUpdater` | object | Settings used to configure the `config-updater` plugin | `{"orgAndRepo":"","path":""}` | +| `configMaps.create` | bool | Enables creation of `config.yaml` and `plugins.yaml` config maps | `false` | +| `configMaps.plugins` | string | Raw `plugins.yaml` content | `nil` | +| `engines.jenkins` | bool | Enables the Jenkins engine | `false` | +| `engines.jx` | bool | Enables the jx engine | `true` | +| `engines.tekton` | bool | Enables the tekton engine | `false` | +| `env` | object | Environment variables | `{"JX_DEFAULT_IMAGE":""}` | +| `externalPlugins[0].name` | string | | `"cd-indicators"` | +| `externalPlugins[0].requiredResources[0].kind` | string | | `"Service"` | +| `externalPlugins[0].requiredResources[0].name` | string | | `"cd-indicators"` | +| `externalPlugins[0].requiredResources[0].namespace` | string | | `"jx"` | +| `externalPlugins[1].name` | string | | `"lighthouse-webui-plugin"` | +| `externalPlugins[1].requiredResources[0].kind` | string | | `"Service"` | +| `externalPlugins[1].requiredResources[0].name` | string | | `"lighthouse-webui-plugin"` | +| `externalPlugins[1].requiredResources[0].namespace` | string | | `"jx"` | +| `foghorn.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the foghorn pods | `{}` | +| `foghorn.image.pullPolicy` | string | Template for computing the foghorn controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | +| `foghorn.image.repository` | string | Template for computing the foghorn controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-foghorn"` | +| `foghorn.image.tag` | string | Template for computing the foghorn controller docker image tag | `"{{ .Values.image.tag }}"` | +| `foghorn.logLevel` | string | | `"info"` | +| `foghorn.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the foghorn pods | `{}` | +| `foghorn.replicaCount` | int | Number of replicas | `1` | +| `foghorn.resources.limits` | object | Resource limits applied to the foghorn pods | `{"cpu":"100m","memory":"256Mi"}` | +| `foghorn.resources.requests` | object | Resource requests applied to the foghorn pods | `{"cpu":"80m","memory":"128Mi"}` | +| `foghorn.terminationGracePeriodSeconds` | int | Termination grace period for foghorn pods | `180` | +| `foghorn.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the foghorn pods | `[]` | +| `gcJobs.backoffLimit` | int | Drives the job's backoff limit | `6` | +| `gcJobs.concurrencyPolicy` | string | Drives the job's concurrency policy | `"Forbid"` | +| `gcJobs.failedJobsHistoryLimit` | int | Drives the failed jobs history limit | `1` | +| `gcJobs.image.pullPolicy` | string | Template for computing the gc job docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | +| `gcJobs.image.repository` | string | Template for computing the gc job docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-gc-jobs"` | +| `gcJobs.image.tag` | string | Template for computing the gc job docker image tag | `"{{ .Values.image.tag }}"` | +| `gcJobs.logLevel` | string | | `"info"` | +| `gcJobs.maxAge` | string | Max age from which `LighthouseJob`s will be deleted | `"168h"` | +| `gcJobs.schedule` | string | Cron expression to periodically delete `LighthouseJob`s | `"0/30 * * * *"` | +| `gcJobs.successfulJobsHistoryLimit` | int | Drives the successful jobs history limit | `3` | +| `git.kind` | string | Git SCM provider (`github`, `gitlab`, `stash`) | `"github"` | +| `git.server` | string | Git server URL | `""` | +| `githubApp.enabled` | bool | Enables GitHub app authentication | `false` | +| `githubApp.username` | string | GitHub app user name | `"jenkins-x[bot]"` | +| `hmacSecretName` | string | Existing hmac secret to use for webhooks | `""` | +| `hmacToken` | string | Secret used for webhooks | `""` | +| `hmacTokenEnabled` | bool | Enables the use of a hmac token. This should always be enabled if possible - though some git providers don't support it such as bitbucket cloud | `true` | +| `hmacTokenVolumeMount` | object | Mount hmac token as a volume instead of using an environment variable Secret reference | `{"enabled":false}` | +| `image.parentRepository` | string | Docker registry to pull images from | `"ghcr.io/jenkins-x"` | +| `image.pullPolicy` | string | Image pull policy | `"IfNotPresent"` | +| `image.tag` | string | Docker images tag the following tag is latest on the main branch, it's a specific version on a git tag | `"latest"` | +| `jenkinscontroller.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the tekton controller pods | `{}` | +| `jenkinscontroller.image.pullPolicy` | string | Template for computing the tekton controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | +| `jenkinscontroller.image.repository` | string | Template for computing the Jenkins controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-jenkins-controller"` | +| `jenkinscontroller.image.tag` | string | Template for computing the tekton controller docker image tag | `"{{ .Values.image.tag }}"` | +| `jenkinscontroller.jenkinsToken` | string | The token for authenticating the Jenkins user | `nil` | +| `jenkinscontroller.jenkinsURL` | string | The URL of the Jenkins instance | `nil` | +| `jenkinscontroller.jenkinsUser` | string | The username for the Jenkins user | `nil` | +| `jenkinscontroller.logLevel` | string | | `"info"` | +| `jenkinscontroller.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the tekton controller pods | `{}` | +| `jenkinscontroller.podAnnotations` | object | Annotations applied to the tekton controller pods | `{}` | +| `jenkinscontroller.resources.limits` | object | Resource limits applied to the tekton controller pods | `{"cpu":"100m","memory":"256Mi"}` | +| `jenkinscontroller.resources.requests` | object | Resource requests applied to the tekton controller pods | `{"cpu":"80m","memory":"128Mi"}` | +| `jenkinscontroller.service` | object | Service settings for the tekton controller | `{"annotations":{}}` | +| `jenkinscontroller.terminationGracePeriodSeconds` | int | Termination grace period for tekton controller pods | `180` | +| `jenkinscontroller.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the tekton controller pods | `[]` | +| `keeper.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the keeper pods | `{}` | +| `keeper.datadog.enabled` | string | Enables datadog | `"true"` | +| `keeper.env` | object | Lets you define keeper specific environment variables | `{}` | +| `keeper.image.pullPolicy` | string | Template for computing the keeper controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | +| `keeper.image.repository` | string | Template for computing the keeper controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-keeper"` | +| `keeper.image.tag` | string | Template for computing the keeper controller docker image tag | `"{{ .Values.image.tag }}"` | +| `keeper.livenessProbe` | object | Liveness probe configuration | `{"initialDelaySeconds":120,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | +| `keeper.logLevel` | string | | `"info"` | +| `keeper.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the keeper pods | `{}` | +| `keeper.podAnnotations` | object | Annotations applied to the keeper pods | `{}` | +| `keeper.probe` | object | Liveness and readiness probes settings | `{"path":"/"}` | +| `keeper.readinessProbe` | object | Readiness probe configuration | `{"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | +| `keeper.replicaCount` | int | Number of replicas | `1` | +| `keeper.resources.limits` | object | Resource limits applied to the keeper pods | `{"cpu":"400m","memory":"512Mi"}` | +| `keeper.resources.requests` | object | Resource requests applied to the keeper pods | `{"cpu":"100m","memory":"128Mi"}` | +| `keeper.service` | object | Service settings for the keeper controller | `{"externalPort":80,"internalPort":8888,"type":"ClusterIP"}` | +| `keeper.statusContextLabel` | string | Label used to report status to git provider | `"Lighthouse Merge Status"` | +| `keeper.terminationGracePeriodSeconds` | int | Termination grace period for keeper pods | `30` | +| `keeper.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the keeper pods | `[]` | +| `lighthouseJobNamespace` | string | Namespace where `LighthouseJob`s and `Pod`s are created | Deployment namespace | +| `logFormat` | string | Log format either json or stackdriver | `"json"` | +| `logService` | string | The name of the service registered with logging | `""` | +| `logStackSkip` | string | Comma separated stack frames to skip from the log | `""` | +| `oauthSecretName` | string | Existing Git token secret | `""` | +| `oauthToken` | string | Git token (used when GitHub app authentication is not enabled) | `""` | +| `oauthTokenVolumeMount` | object | Mount Git token as a volume instead of using an environment variable Secret reference (used when GitHub app authentication is not enabled) | `{"enabled":false}` | +| `poller.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the poller pods | `{}` | +| `poller.contextMatchPattern` | string | Regex pattern to use to match commit status context | `""` | +| `poller.datadog.enabled` | string | Enables datadog | `"true"` | +| `poller.enabled` | bool | Whether to enable or disable the poller component | `false` | +| `poller.env` | object | Lets you define poller specific environment variables | `{"POLL_HOOK_ENDPOINT":"http://hook/hook/poll","POLL_PERIOD":"20s"}` | +| `poller.image.pullPolicy` | string | Template for computing the poller controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | +| `poller.image.repository` | string | Template for computing the poller controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-poller"` | +| `poller.image.tag` | string | Template for computing the poller controller docker image tag | `"{{ .Values.image.tag }}"` | +| `poller.internalPort` | int | | `8888` | +| `poller.livenessProbe` | object | Liveness probe configuration | `{"initialDelaySeconds":120,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | +| `poller.logLevel` | string | | `"info"` | +| `poller.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the poller pods | `{}` | +| `poller.podAnnotations` | object | Annotations applied to the poller pods | `{}` | +| `poller.probe` | object | Liveness and readiness probes settings | `{"path":"/"}` | +| `poller.readinessProbe` | object | Readiness probe configuration | `{"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | +| `poller.replicaCount` | int | Number of replicas | `1` | +| `poller.requireReleaseSuccess` | bool | Keep polling releases until the most recent commit status is successful | `false` | +| `poller.resources.limits` | object | Resource limits applied to the poller pods | `{"cpu":"400m","memory":"512Mi"}` | +| `poller.resources.requests` | object | Resource requests applied to the poller pods | `{"cpu":"100m","memory":"128Mi"}` | +| `poller.terminationGracePeriodSeconds` | int | Termination grace period for poller pods | `30` | +| `poller.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the poller pods | `[]` | +| `scope` | string | limit permissions to namespace privileges | `"cluster"` | +| `tektoncontroller.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the tekton controller pods | `{}` | +| `tektoncontroller.dashboardTemplate` | string | Go template expression for URLs in the dashboard if not using Tekton dashboard | `""` | +| `tektoncontroller.dashboardURL` | string | the dashboard URL (e.g. Tekton dashboard) | `""` | +| `tektoncontroller.image.pullPolicy` | string | Template for computing the tekton controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | +| `tektoncontroller.image.repository` | string | Template for computing the tekton controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-tekton-controller"` | +| `tektoncontroller.image.tag` | string | Template for computing the tekton controller docker image tag | `"{{ .Values.image.tag }}"` | +| `tektoncontroller.logLevel` | string | | `"info"` | +| `tektoncontroller.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the tekton controller pods | `{}` | +| `tektoncontroller.podAnnotations` | object | Annotations applied to the tekton controller pods | `{}` | +| `tektoncontroller.replicaCount` | int | Number of replicas | `1` | +| `tektoncontroller.resources.limits` | object | Resource limits applied to the tekton controller pods | `{"cpu":"100m","memory":"256Mi"}` | +| `tektoncontroller.resources.requests` | object | Resource requests applied to the tekton controller pods | `{"cpu":"80m","memory":"128Mi"}` | +| `tektoncontroller.service` | object | Service settings for the tekton controller | `{"annotations":{}}` | +| `tektoncontroller.terminationGracePeriodSeconds` | int | Termination grace period for tekton controller pods | `180` | +| `tektoncontroller.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the tekton controller pods | `[]` | +| `user` | string | Git user name (used when GitHub app authentication is not enabled) | `""` | +| `webhooks.affinity` | object | [Affinity rules](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) applied to the webhooks pods | `{}` | +| `webhooks.customDeploymentTriggerCommand` | string | deployments can configure the ability to allow custom lighthouse triggers using their own unique chat prefix, for example extending the default `/test` trigger prefix let them specify `customDeploymentTriggerPrefix: foo` which means they can also use their own custom trigger /foo mycoolthing | `""` | +| `webhooks.image.pullPolicy` | string | Template for computing the webhooks controller docker image pull policy | `"{{ .Values.image.pullPolicy }}"` | +| `webhooks.image.repository` | string | Template for computing the webhooks controller docker image repository | `"{{ .Values.image.parentRepository }}/lighthouse-webhooks"` | +| `webhooks.image.tag` | string | Template for computing the webhooks controller docker image tag | `"{{ .Values.image.tag }}"` | +| `webhooks.ingress.annotations` | object | Webhooks ingress annotations | `{}` | +| `webhooks.ingress.enabled` | bool | Enable webhooks ingress | `false` | +| `webhooks.ingress.hosts` | list | Webhooks ingress host names | `[]` | +| `webhooks.ingress.ingressClassName` | string | Webhooks ingress ingressClassName | `nil` | +| `webhooks.ingress.tls.enabled` | bool | Enable webhooks ingress tls | `false` | +| `webhooks.ingress.tls.secretName` | string | Specify webhooks ingress tls secretName | `""` | +| `webhooks.labels` | object | allow optional labels to be added to the webhook deployment | `{}` | +| `webhooks.livenessProbe` | object | Liveness probe configuration | `{"initialDelaySeconds":60,"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | +| `webhooks.logLevel` | string | | `"info"` | +| `webhooks.nodeSelector` | object | [Node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) applied to the webhooks pods | `{}` | +| `webhooks.podAnnotations` | object | Annotations applied to the webhooks pods | `{}` | +| `webhooks.podLabels` | object | | `{}` | +| `webhooks.probe` | object | Liveness and readiness probes settings | `{"path":"/"}` | +| `webhooks.readinessProbe` | object | Readiness probe configuration | `{"periodSeconds":10,"successThreshold":1,"timeoutSeconds":1}` | +| `webhooks.replicaCount` | int | Number of replicas | `1` | +| `webhooks.resources.limits` | object | Resource limits applied to the webhooks pods | `{"cpu":"100m","memory":"512Mi"}` | +| `webhooks.resources.requests` | object | Resource requests applied to the webhooks pods | `{"cpu":"80m","memory":"128Mi"}` | +| `webhooks.service` | object | Service settings for the webhooks controller | `{"annotations":{},"externalPort":80,"internalPort":8080,"type":"ClusterIP"}` | +| `webhooks.serviceName` | string | Allows overriding the service name, this is here for compatibility reasons, regular users should clear this out | `"hook"` | +| `webhooks.terminationGracePeriodSeconds` | int | Termination grace period for webhooks pods | `180` | +| `webhooks.tolerations` | list | [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) applied to the webhooks pods | `[]` | You can look directly at the [values.yaml](./values.yaml) file to look at the options and their default values. diff --git a/charts/lighthouse/lighthouse-1.17.2.tgz b/charts/lighthouse/lighthouse-1.17.2.tgz new file mode 100644 index 0000000000000000000000000000000000000000..bd77e9cbe9db9c451675cced1ee9e06ec5169710 GIT binary patch literal 15826 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