From 1e8cacae218b1e695ff609f949d8e942a8affafc Mon Sep 17 00:00:00 2001 From: jenkins-x-bot Date: Fri, 3 May 2024 13:31:50 +0000 Subject: [PATCH] chore: release 1.17.1 --- changelog.md | 7 + charts/lighthouse/Chart.yaml | 4 +- charts/lighthouse/README.md | 308 ++++++++++++------------ charts/lighthouse/lighthouse-1.17.1.tgz | Bin 0 -> 15827 bytes charts/lighthouse/values.yaml | 151 +----------- 5 files changed, 167 insertions(+), 303 deletions(-) create mode 100644 changelog.md create mode 100644 charts/lighthouse/lighthouse-1.17.1.tgz diff --git a/changelog.md b/changelog.md new file mode 100644 index 000000000..75e9af7be --- /dev/null +++ b/changelog.md @@ -0,0 +1,7 @@ + +## Changes in version 1.17.1 + +### Chores + +* deps: upgrade jenkins-x/go-scm to version 1.14.33 (jenkins-x-bot) +* deps: upgrade jenkins-x/go-scm to version 1.14.31 (jenkins-x-bot) diff --git a/charts/lighthouse/Chart.yaml b/charts/lighthouse/Chart.yaml index edc18364e..c910b328c 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.1 home: https://github.com/jenkins-x/lighthouse - +appVersion: 1.17.1 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.1.tgz b/charts/lighthouse/lighthouse-1.17.1.tgz new file mode 100644 index 0000000000000000000000000000000000000000..d19d426df2df43c2b821ef5c28c7551e9cb3f197 GIT binary patch literal 15827 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