This is an automated email from the ASF dual-hosted git repository. lewismc pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/tika-helm.git
The following commit(s) were added to refs/heads/main by this push: new 30b18d3 TIKA-4468 Generate tika-helm values documentation as part of Continuous Integration workflow (#25) 30b18d3 is described below commit 30b18d3d3b072a112e83c1afbaec3b46c2175a9f Author: Lewis John McGibbney <lewi...@apache.org> AuthorDate: Thu Aug 21 23:22:53 2025 -0700 TIKA-4468 Generate tika-helm values documentation as part of Continuous Integration workflow (#25) * TIKA-4468 Generate tika-helm values documentation as part of Continuous Integration workflow --- .github/workflows/helm_docs.yaml | 95 +++++++ README.md | 562 +++++++++++++++++++++++++++++++++++---- README.md => README.md.gotmpl | 62 ++--- values.yaml | 111 +++++--- 4 files changed, 710 insertions(+), 120 deletions(-) diff --git a/.github/workflows/helm_docs.yaml b/.github/workflows/helm_docs.yaml new file mode 100644 index 0000000..64d5496 --- /dev/null +++ b/.github/workflows/helm_docs.yaml @@ -0,0 +1,95 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +name: Update Chart Metadata + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + types: [opened, synchronize, reopened] + +jobs: + update-chart-metadata: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4.1.5 + with: + fetch-depth: 0 + - name: Setup Helm Docs + shell: bash + env: + GH_TOKEN: ${{ github.token }} + GH_REPO: norwoodj/helm-docs + VERSION: latest + run: | + set -euo pipefail + + if [[ "$VERSION" == latest ]]; then + VERSION= + fi + + case "${{ runner.os }}" in + Linux) + OS=linux + FILENAME=helm-docs + ;; + macOS) + OS=darwin + FILENAME=helm-docs + ;; + Windows) + OS=windows + FILENAME=helm-docs.exe + ;; + esac + + RELEASE="$(gh release view --json=name,assets $VERSION)" + VERSION="$(jq -r '.name' <<<"$RELEASE")" + echo "version=$VERSION" >>$GITHUB_OUTPUT + echo "Installing helm-docs $VERSION..." + + DEST="$RUNNER_TEMP/helm-docs" + ASSET="$(jq -r --arg OS "$OS" \ + '.assets[].name | select(ascii_downcase | test($OS + "_(amd64|x86_64).(tar.gz|zip)$"))' \ + <<<"$RELEASE" \ + )" + + echo "Downloading $ASSET" + mkdir -p "$DEST" + cd "$DEST" + case "$ASSET" in + *.tar.gz) + gh release download "$VERSION" --pattern="$ASSET" --output=- | tar -xzf - "$FILENAME" ;; + *.zip) + gh release download "$VERSION" --pattern="$ASSET" + unzip -o "$ASSET" "$FILENAME" + rm "$ASSET" + ;; + *) + echo Invalid file type; exit 1;; + esac + echo "$DEST" >>$GITHUB_PATH + - name: Run helm-docs + run: | + helm-docs + if git diff --exit-code; then + echo "Documentation up to date" + else + echo "Documentation outdated. Run helm-docs (https://github.com/norwoodj/helm-docs?tab=readme-ov-file#installation) locally and commit changes." + exit 1 + fi diff --git a/README.md b/README.md index 365a55b..1fd4288 100644 --- a/README.md +++ b/README.md @@ -1,56 +1,45 @@ tika-helm ========= -[](https://artifacthub.io/packages/search?repo=apache-tika) +[](https://artifacthub.io/packages/helm/apache-tika/tika) + + + -<div class="artifacthub-widget" data-url="https://artifacthub.io/packages/helm/apache-tika/tika" data-theme="light" data-header="true" data-stars="true" data-responsive="false"><blockquote><p lang="en" dir="ltr"><b>tika</b>: The official Helm chart to deploy Apache Tika on Kubernetes</p>— Open in <a href="https://artifacthub.io/packages/helm/apache-tika/tika">Artifact Hub</a></blockquote></div><script async src="https://artifacthub.io/artifacthub-widget.js"></script> - -A [Helm chart][] to deploy [Apache Tika][] on [Kubernetes][]. +<div class="artifacthub-widget" data-url="https://artifacthub.io/packages/helm/apache-tika/tika" data-theme="dark" data-header="true" data-stars="true" data-responsive="true"><blockquote><p lang="en" dir="ltr"><b>tika</b>: The official Helm chart for Apache Tika</p>— Open in <a href="https://artifacthub.io/packages/helm/apache-tika/tika">Artifact Hub</a></blockquote></div> <img src="https://tika.apache.org/tika.png" width="300" /> -This Helm chart is a lightweight way to configure and run the official [apache/tika][] Docker image. - -We recommend that the Helm chart version is aligned to the version Tika (and subsequently the -version of the [Tika Docker image][]) you want to deploy. -This will ensure that you using a chart version that has been tested against the corresponding -production version. This will also ensure that the documentation and examples for the chart +We recommend that the Helm chart version is aligned to the version Tika (and subsequently the +version of the [Tika Docker image][]) you want to deploy. +This will ensure that you using a chart version that has been tested against the corresponding +production version. This will also ensure that the documentation and examples for the chart will work with the version of Tika you are installing. -<!-- development warning placeholder --> -**Warning**: This branch is used for development, please use the [latest release][] for released version. - <!-- START doctoc generated TOC please keep comment here to allow auto update --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> -- [tika-helm](#tika-helm) - - [Requirements](#requirements) - - [Installing](#installing) - - [Install released version using Helm repository](#install-released-version-using-helm-repository) - - [Install development version using master branch](#install-development-version-using-master-branch) - - [Custom configuration for tika](#custom-configuration-for-tika) - - [Upgrading](#upgrading) - - [Configuration](#configuration) - - [Deprecated](#deprecated) - - [Contributing](#contributing) - - [More Information](#more-information) - - [Authors](#authors) +- [Installing](#installing) + - [Install released version using Helm repository](#install-released-version-using-helm-repository) + - [Install development version using main branch](#install-development-version-using-main-branch) + - [Custom configuration for tika](#custom-configuration-for-tika) +- [Upgrading](#upgrading) +- [Values](#values) +- [Testing](#testing) +- [Contributing](#contributing) +- [More Information](#more-information) - [License](#license) +- [Maintainers](#maintainers) <!-- END doctoc generated TOC please keep comment here to allow auto update --> <!-- Use this to update TOC: --> <!-- docker run --rm -it -v $(pwd):/usr/src jorgeandrada/doctoc --github --> -## Requirements - -* Kubernetes >= 1.14 -* [Helm][] >= v3.4.2 - ## Installing ### Install released version using Helm repository -**N.B.** You may or may not need/wish to install the chart into a specific **namespace**, +**N.B.** You may or may not need/wish to install the chart into a specific **namespace**, in which case you may need to augment the commands below. * Add the Tika Helm charts repo: @@ -80,7 +69,7 @@ while true; do kubectl --namespace tika-test port-forward $POD_NAME 9998:$CONTAI ``` ... this should keep `kubectl` reconnecting on connection lost. -### Install development version using master branch +### Install development version using main branch * Clone the git repo: `git clone g...@github.com:apache/tika-helm.git` @@ -108,11 +97,479 @@ tikaConfig: | Please check `artifacthub.io/changes` in `Chart.yaml` before upgrading. -## Configuration - -| Parameter | Description | Default | -| --------- | ----------- | ------- | -| `...` | ... | ... | +## Values + +<table> + <thead> + <th>Key</th> + <th>Type</th> + <th>Default</th> + <th>Description</th> + </thead> + <tbody> + <tr> + <td>affinity</td> + <td>object</td> + <td><pre lang="json"> +{} +</pre> +</td> + <td>Affinity rules for pod scheduling</td> + </tr> + <tr> + <td>autoscaling.apiVersion</td> + <td>string</td> + <td><pre lang="json"> +"autoscaling/v2" +</pre> +</td> + <td>API version for the HorizontalPodAutoscaler</td> + </tr> + <tr> + <td>autoscaling.enabled</td> + <td>bool</td> + <td><pre lang="json"> +false +</pre> +</td> + <td>Enable autoscaling for Tika pods</td> + </tr> + <tr> + <td>autoscaling.maxReplicas</td> + <td>int</td> + <td><pre lang="json"> +100 +</pre> +</td> + <td>Maximum number of replicas</td> + </tr> + <tr> + <td>autoscaling.minReplicas</td> + <td>int</td> + <td><pre lang="json"> +1 +</pre> +</td> + <td>Minimum number of replicas</td> + </tr> + <tr> + <td>autoscaling.targetCPUUtilizationPercentage</td> + <td>int</td> + <td><pre lang="json"> +80 +</pre> +</td> + <td>Target CPU utilization percentage for autoscaling</td> + </tr> + <tr> + <td>autoscaling.targetMemoryUtilizationPercentage</td> + <td>int</td> + <td><pre lang="json"> +80 +</pre> +</td> + <td>Target memory utilization percentage for autoscaling</td> + </tr> + <tr> + <td>config.base_url</td> + <td>string</td> + <td><pre lang="json"> +"http://localhost/" +</pre> +</td> + <td>Base URL for the Tika service</td> + </tr> + <tr> + <td>fullnameOverride</td> + <td>string</td> + <td><pre lang="json"> +"" +</pre> +</td> + <td>Override the full name of the release</td> + </tr> + <tr> + <td>image.pullPolicy</td> + <td>string</td> + <td><pre lang="json"> +"IfNotPresent" +</pre> +</td> + <td>Image pull policy for the Tika container</td> + </tr> + <tr> + <td>image.repository</td> + <td>string</td> + <td><pre lang="json"> +"apache/tika" +</pre> +</td> + <td>Docker image repository for Apache Tika</td> + </tr> + <tr> + <td>image.tag</td> + <td>string</td> + <td><pre lang="json"> +"3.2.2.0-full" +</pre> +</td> + <td>Overrides the image tag whose default is the chart appVersion</td> + </tr> + <tr> + <td>imagePullSecrets</td> + <td>list</td> + <td><pre lang="json"> +[] +</pre> +</td> + <td>Secrets for pulling images from a private registry</td> + </tr> + <tr> + <td>ingress.annotations</td> + <td>object</td> + <td><pre lang="json"> +{} +</pre> +</td> + <td>Annotations for the ingress resource</td> + </tr> + <tr> + <td>ingress.enabled</td> + <td>bool</td> + <td><pre lang="json"> +false +</pre> +</td> + <td>Enable ingress for the Tika service</td> + </tr> + <tr> + <td>ingress.hosts[0]</td> + <td>object</td> + <td><pre lang="json"> +{ + "host": "chart-example.local", + "paths": [] +} +</pre> +</td> + <td>Hostnames for the ingress</td> + </tr> + <tr> + <td>ingress.tls</td> + <td>list</td> + <td><pre lang="json"> +[] +</pre> +</td> + <td>TLS configuration for the ingress</td> + </tr> + <tr> + <td>livenessProbe.failureThreshold</td> + <td>int</td> + <td><pre lang="json"> +20 +</pre> +</td> + <td>Number of failed liveness probes before restarting the pod</td> + </tr> + <tr> + <td>livenessProbe.initialDelaySeconds</td> + <td>int</td> + <td><pre lang="json"> +15 +</pre> +</td> + <td>Initial delay before starting liveness probe (seconds)</td> + </tr> + <tr> + <td>livenessProbe.periodSeconds</td> + <td>int</td> + <td><pre lang="json"> +5 +</pre> +</td> + <td>Interval between liveness probes (seconds)</td> + </tr> + <tr> + <td>livenessProbe.scheme</td> + <td>string</td> + <td><pre lang="json"> +"HTTP" +</pre> +</td> + <td>Scheme for liveness probe (HTTP or HTTPS)</td> + </tr> + <tr> + <td>livenessProbe.timeoutSeconds</td> + <td>int</td> + <td><pre lang="json"> +30 +</pre> +</td> + <td>Timeout for liveness probe (seconds)</td> + </tr> + <tr> + <td>nameOverride</td> + <td>string</td> + <td><pre lang="json"> +"" +</pre> +</td> + <td>Override the name of the chart</td> + </tr> + <tr> + <td>namespaceOverride</td> + <td>string</td> + <td><pre lang="json"> +"" +</pre> +</td> + <td>Override the namespace for the release</td> + </tr> + <tr> + <td>networkPolicy.allowExternal</td> + <td>bool</td> + <td><pre lang="json"> +false +</pre> +</td> + <td>Allow external traffic without requiring a "-client" label</td> + </tr> + <tr> + <td>networkPolicy.enabled</td> + <td>bool</td> + <td><pre lang="json"> +false +</pre> +</td> + <td>Create a network policy to restrict traffic to pods within the same namespace that include the label `<release>-client: true`.</td> + </tr> + <tr> + <td>nodeSelector</td> + <td>object</td> + <td><pre lang="json"> +{} +</pre> +</td> + <td>Node selector for pod scheduling</td> + </tr> + <tr> + <td>podAnnotations</td> + <td>object</td> + <td><pre lang="json"> +{} +</pre> +</td> + <td>Annotations to add to the Tika pods</td> + </tr> + <tr> + <td>podSecurityContext</td> + <td>object</td> + <td><pre lang="json"> +{} +</pre> +</td> + <td></td> + </tr> + <tr> + <td>readinessProbe.failureThreshold</td> + <td>int</td> + <td><pre lang="json"> +20 +</pre> +</td> + <td>Number of failed readiness probes before marking pod as not ready</td> + </tr> + <tr> + <td>readinessProbe.initialDelaySeconds</td> + <td>int</td> + <td><pre lang="json"> +15 +</pre> +</td> + <td>Initial delay before starting readiness probe (seconds)</td> + </tr> + <tr> + <td>readinessProbe.periodSeconds</td> + <td>int</td> + <td><pre lang="json"> +5 +</pre> +</td> + <td>Interval between readiness probes (seconds)</td> + </tr> + <tr> + <td>readinessProbe.scheme</td> + <td>string</td> + <td><pre lang="json"> +"HTTP" +</pre> +</td> + <td>Scheme for readiness probe (HTTP or HTTPS)</td> + </tr> + <tr> + <td>readinessProbe.timeoutSeconds</td> + <td>int</td> + <td><pre lang="json"> +30 +</pre> +</td> + <td>Timeout for readiness probe (seconds)</td> + </tr> + <tr> + <td>replicaCount</td> + <td>int</td> + <td><pre lang="json"> +1 +</pre> +</td> + <td>Number of Tika pod replicas to deploy</td> + </tr> + <tr> + <td>resources.limits</td> + <td>object</td> + <td><pre lang="json"> +{ + "cpu": "2", + "memory": "2000Mi" +} +</pre> +</td> + <td>Resource limits for the Tika container</td> + </tr> + <tr> + <td>resources.requests</td> + <td>object</td> + <td><pre lang="json"> +{ + "cpu": "1", + "memory": "1500Mi" +} +</pre> +</td> + <td>Resource requests for the Tika container</td> + </tr> + <tr> + <td>securityContext.allowPrivilegeEscalation</td> + <td>bool</td> + <td><pre lang="json"> +true +</pre> +</td> + <td>Allow privilege escalation for the container</td> + </tr> + <tr> + <td>securityContext.capabilities.drop</td> + <td>list</td> + <td><pre lang="json"> +[ + "ALL" +] +</pre> +</td> + <td>Capabilities to drop for the container</td> + </tr> + <tr> + <td>securityContext.readOnlyRootFilesystem</td> + <td>bool</td> + <td><pre lang="json"> +true +</pre> +</td> + <td>Run container with read-only root filesystem</td> + </tr> + <tr> + <td>securityContext.runAsGroup</td> + <td>int</td> + <td><pre lang="json"> +35002 +</pre> +</td> + <td>Group ID to run the container</td> + </tr> + <tr> + <td>securityContext.runAsNonRoot</td> + <td>bool</td> + <td><pre lang="json"> +true +</pre> +</td> + <td>Run container as non-root user</td> + </tr> + <tr> + <td>securityContext.runAsUser</td> + <td>int</td> + <td><pre lang="json"> +35002 +</pre> +</td> + <td>User ID to run the container</td> + </tr> + <tr> + <td>service.port</td> + <td>int</td> + <td><pre lang="json"> +9998 +</pre> +</td> + <td>Port for the Tika service</td> + </tr> + <tr> + <td>service.type</td> + <td>string</td> + <td><pre lang="json"> +"ClusterIP" +</pre> +</td> + <td>Type of Kubernetes service to expose Tika</td> + </tr> + <tr> + <td>serviceAccount.annotations</td> + <td>object</td> + <td><pre lang="json"> +{} +</pre> +</td> + <td>Annotations to add to the service account</td> + </tr> + <tr> + <td>serviceAccount.create</td> + <td>bool</td> + <td><pre lang="json"> +true +</pre> +</td> + <td>Specifies whether a service account should be created</td> + </tr> + <tr> + <td>serviceAccount.name</td> + <td>string</td> + <td><pre lang="json"> +"" +</pre> +</td> + <td>The name of the service account to use; if not set and create is true, a name is generated</td> + </tr> + <tr> + <td>tolerations</td> + <td>list</td> + <td><pre lang="json"> +[] +</pre> +</td> + <td>Tolerations for pod scheduling</td> + </tr> + <tr> + <td>topologySpreadConstraints</td> + <td>list</td> + <td><pre lang="json"> +[] +</pre> +</td> + <td>Control how Pods are spread across the cluster</td> + </tr> + </tbody> +</table> ## Testing @@ -136,13 +593,29 @@ For more information on Apache Tika, go to the official [Apache Tika][] project For more information on the Apache Software Foundation, go to the [Apache Software Foundation][] website. -## Authors - -Apache Tika Dev Team (d...@tika.apache.org) - -# License +## License The code is licensed permissively under the [Apache License v2.0][]. +## Maintainers + +| Name | Email | Url | +| ---- | ------ | --- | +| lewismc | <lewi...@apache.org> | <https://github.com/lewismc> | +| stijnbrouwers | | <https://github.com/stijnbrouwers> | +| philipsoutham | | <https://github.com/philipsoutham> | +| frascu | | <https://github.com/frascu> | +| euven | | <https://github.com/euven> | +| ps0uth | | <https://github.com/ps0uth> | +| ahilmathew | | <https://github.com/ahilmathew> | +| aidanthewiz | | <https://github.com/aidanthewiz> | +| bartek | | <https://github.com/bartek> | +| CiraciNicolo | | <https://github.com/CiraciNicolo> | +| amalucelli | | <https://github.com/amalucelli> | +| thatmlopsguy | | <https://github.com/thatmlopsguy> | + +---------------------------------------------- +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) + [Apache License v2.0]: https://www.apache.org/licenses/LICENSE-2.0.html [Apache Software Foundation]: http://apache.org [Apache Tika]: https://tika.apache.org @@ -150,10 +623,5 @@ The code is licensed permissively under the [Apache License v2.0][]. [BREAKING_CHANGES.md]: https://github.com/apache/tika-helm/blob/master/BREAKING_CHANGES.md [CHANGELOG.md]: https://github.com/apache/tika-helm/blob/master/CHANGELOG.md [CONTRIBUTING]: https://github.com/apache/tika#contributing-via-github -[apache/tika]: https://github.com/apache/tika-docker [helm-unittest]: https://github.com/helm-unittest/helm-unittest -[Helm chart]: https://helm.sh/docs/topics/charts/ -[Kubernetes]: https://kubernetes.io/ [Tika Docker image]: https://hub.docker.com/r/apache/tika/tags?page=1&ordering=last_updated -[helm]: https://helm.sh -[latest release]: https://github.com/apache/tika-helm/releases diff --git a/README.md b/README.md.gotmpl similarity index 71% copy from README.md copy to README.md.gotmpl index 365a55b..d74ed6b 100644 --- a/README.md +++ b/README.md.gotmpl @@ -1,51 +1,40 @@ tika-helm ========= -[](https://artifacthub.io/packages/search?repo=apache-tika) +[](https://artifacthub.io/packages/helm/apache-tika/tika) +{{ template "chart.versionBadge" . }} +{{ template "chart.typeBadge" . }} +{{ template "chart.appVersionBadge" . }} -<div class="artifacthub-widget" data-url="https://artifacthub.io/packages/helm/apache-tika/tika" data-theme="light" data-header="true" data-stars="true" data-responsive="false"><blockquote><p lang="en" dir="ltr"><b>tika</b>: The official Helm chart to deploy Apache Tika on Kubernetes</p>— Open in <a href="https://artifacthub.io/packages/helm/apache-tika/tika">Artifact Hub</a></blockquote></div><script async src="https://artifacthub.io/artifacthub-widget.js"></script> - -A [Helm chart][] to deploy [Apache Tika][] on [Kubernetes][]. +<div class="artifacthub-widget" data-url="https://artifacthub.io/packages/helm/apache-tika/tika" data-theme="dark" data-header="true" data-stars="true" data-responsive="true"><blockquote><p lang="en" dir="ltr"><b>tika</b>: The official Helm chart for Apache Tika</p>— Open in <a href="https://artifacthub.io/packages/helm/apache-tika/tika">Artifact Hub</a></blockquote></div> <img src="https://tika.apache.org/tika.png" width="300" /> -This Helm chart is a lightweight way to configure and run the official [apache/tika][] Docker image. - We recommend that the Helm chart version is aligned to the version Tika (and subsequently the version of the [Tika Docker image][]) you want to deploy. This will ensure that you using a chart version that has been tested against the corresponding production version. This will also ensure that the documentation and examples for the chart will work with the version of Tika you are installing. -<!-- development warning placeholder --> -**Warning**: This branch is used for development, please use the [latest release][] for released version. - <!-- START doctoc generated TOC please keep comment here to allow auto update --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> -- [tika-helm](#tika-helm) - - [Requirements](#requirements) - - [Installing](#installing) - - [Install released version using Helm repository](#install-released-version-using-helm-repository) - - [Install development version using master branch](#install-development-version-using-master-branch) - - [Custom configuration for tika](#custom-configuration-for-tika) - - [Upgrading](#upgrading) - - [Configuration](#configuration) - - [Deprecated](#deprecated) - - [Contributing](#contributing) - - [More Information](#more-information) - - [Authors](#authors) +- [Installing](#installing) + - [Install released version using Helm repository](#install-released-version-using-helm-repository) + - [Install development version using main branch](#install-development-version-using-main-branch) + - [Custom configuration for tika](#custom-configuration-for-tika) +- [Upgrading](#upgrading) +- [Values](#values) +- [Testing](#testing) +- [Contributing](#contributing) +- [More Information](#more-information) - [License](#license) +- [Maintainers](#maintainers) <!-- END doctoc generated TOC please keep comment here to allow auto update --> <!-- Use this to update TOC: --> <!-- docker run --rm -it -v $(pwd):/usr/src jorgeandrada/doctoc --github --> -## Requirements - -* Kubernetes >= 1.14 -* [Helm][] >= v3.4.2 - ## Installing ### Install released version using Helm repository @@ -80,7 +69,7 @@ while true; do kubectl --namespace tika-test port-forward $POD_NAME 9998:$CONTAI ``` ... this should keep `kubectl` reconnecting on connection lost. -### Install development version using master branch +### Install development version using main branch * Clone the git repo: `git clone g...@github.com:apache/tika-helm.git` @@ -108,11 +97,7 @@ tikaConfig: | Please check `artifacthub.io/changes` in `Chart.yaml` before upgrading. -## Configuration - -| Parameter | Description | Default | -| --------- | ----------- | ------- | -| `...` | ... | ... | +{{ template "chart.valuesSectionHtml" . }} ## Testing @@ -136,12 +121,12 @@ For more information on Apache Tika, go to the official [Apache Tika][] project For more information on the Apache Software Foundation, go to the [Apache Software Foundation][] website. -## Authors +## License +The code is licensed permissively under the [Apache License v2.0][]. -Apache Tika Dev Team (d...@tika.apache.org) +{{ template "chart.maintainersSection" . }} -# License -The code is licensed permissively under the [Apache License v2.0][]. +{{ template "helm-docs.versionFooter" . }} [Apache License v2.0]: https://www.apache.org/licenses/LICENSE-2.0.html [Apache Software Foundation]: http://apache.org @@ -150,10 +135,5 @@ The code is licensed permissively under the [Apache License v2.0][]. [BREAKING_CHANGES.md]: https://github.com/apache/tika-helm/blob/master/BREAKING_CHANGES.md [CHANGELOG.md]: https://github.com/apache/tika-helm/blob/master/CHANGELOG.md [CONTRIBUTING]: https://github.com/apache/tika#contributing-via-github -[apache/tika]: https://github.com/apache/tika-docker [helm-unittest]: https://github.com/helm-unittest/helm-unittest -[Helm chart]: https://helm.sh/docs/topics/charts/ -[Kubernetes]: https://kubernetes.io/ [Tika Docker image]: https://hub.docker.com/r/apache/tika/tags?page=1&ordering=last_updated -[helm]: https://helm.sh -[latest release]: https://github.com/apache/tika-helm/releases diff --git a/values.yaml b/values.yaml index 0bca7f5..2f139af 100644 --- a/values.yaml +++ b/values.yaml @@ -1,11 +1,12 @@ +--- # Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with +# contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at +# the License. You may obtain a copy of the License at # -# http://www.apache.org/licenses/LICENSE-2.0 +# http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, @@ -17,18 +18,28 @@ # This is a YAML-formatted file. # Declare variables to be passed into your templates. +# -- Number of Tika pod replicas to deploy replicaCount: 1 image: + # -- Docker image repository for Apache Tika repository: apache/tika + # -- Image pull policy for the Tika container pullPolicy: IfNotPresent - # Overrides the image tag whose default is the chart appVersion. - tag: "3.2.2.0-full" + # -- Overrides the image tag whose default is the chart appVersion + tag: '3.2.2.0-full' +# -- Secrets for pulling images from a private registry imagePullSecrets: [] -nameOverride: "" -fullnameOverride: "" -namespaceOverride: "" + +# -- Override the name of the chart +nameOverride: '' + +# -- Override the full name of the release +fullnameOverride: '' + +# -- Override the namespace for the release +namespaceOverride: '' # Environment variables to set in the container # For example: @@ -38,111 +49,147 @@ namespaceOverride: "" # env: [] serviceAccount: - # Specifies whether a service account should be created + # -- Specifies whether a service account should be created create: true - # Annotations to add to the service account + # -- Annotations to add to the service account annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "" + # -- The name of the service account to use; if not set + # and create is true, a name is generated + name: '' +# -- Annotations to add to the Tika pods podAnnotations: {} podSecurityContext: + # -- Security context for the pod {} # fsGroup: 2000 securityContext: + # -- Allow privilege escalation for the container allowPrivilegeEscalation: true capabilities: + # -- Capabilities to drop for the container drop: - ALL + # -- Run container with read-only root filesystem readOnlyRootFilesystem: true + # -- Run container as non-root user runAsNonRoot: true + # -- User ID to run the container runAsUser: 35002 + # -- Group ID to run the container runAsGroup: 35002 service: + # -- Type of Kubernetes service to expose Tika type: ClusterIP + # -- Port for the Tika service port: 9998 ingress: + # -- Enable ingress for the Tika service enabled: false + # -- Annotations for the ingress resource annotations: {} # kubernetes.io/ingress.class: nginx # kubernetes.io/tls-acme: "true" hosts: + # -- Hostnames for the ingress - host: chart-example.local paths: [] - tls: [] - # - secretName: chart-example-tls - # hosts: - # - chart-example.local + # -- TLS configuration for the ingress + tls: + [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local livenessProbe: + # -- Initial delay before starting liveness probe (seconds) initialDelaySeconds: 15 + # -- Timeout for liveness probe (seconds) timeoutSeconds: 30 + # -- Number of failed liveness probes before restarting the pod failureThreshold: 20 + # -- Interval between liveness probes (seconds) periodSeconds: 5 + # -- Scheme for liveness probe (HTTP or HTTPS) scheme: HTTP readinessProbe: + # -- Initial delay before starting readiness probe (seconds) initialDelaySeconds: 15 + # -- Timeout for readiness probe (seconds) timeoutSeconds: 30 + # -- Number of failed readiness probes before marking pod as not ready failureThreshold: 20 + # -- Interval between readiness probes (seconds) periodSeconds: 5 + # -- Scheme for readiness probe (HTTP or HTTPS) scheme: HTTP resources: - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # -- Resource limits for the Tika container limits: - cpu: "2" + cpu: '2' memory: 2000Mi + # -- Resource requests for the Tika container requests: - cpu: "1" + cpu: '1' memory: 1500Mi autoscaling: + # -- API version for the HorizontalPodAutoscaler apiVersion: autoscaling/v2 + # -- Enable autoscaling for Tika pods enabled: false + # -- Minimum number of replicas minReplicas: 1 + # -- Maximum number of replicas maxReplicas: 100 + # -- Target CPU utilization percentage for autoscaling targetCPUUtilizationPercentage: 80 + # -- Target memory utilization percentage for autoscaling targetMemoryUtilizationPercentage: 80 +# -- Node selector for pod scheduling nodeSelector: {} +# -- Tolerations for pod scheduling tolerations: [] +# -- Affinity rules for pod scheduling affinity: {} +# -- Control how Pods are spread across the cluster topologySpreadConstraints: [] networkPolicy: - # networkPolicy.enabled -- Create a network policy to restrict traffic to pods - # within the same namespace that include the label `<release>-client: true`. + # -- Create a network policy to restrict traffic to pods within the + # same namespace that include the label `<release>-client: true`. enabled: false - # networkPolicy.allowExternal -- Don't require a "-client" label for connections. + # -- Allow external traffic without requiring a "-client" label allowExternal: false config: - base_url: "http://localhost/" -# Use the below block to use custom tika-config.xml. -# Refer https://tika.apache.org/2.9.1/configuring.html to know more about configuring apache-tika + # -- Base URL for the Tika service + base_url: 'http://localhost/' + +# -- Custom Tika configuration (tika-config.xml) +# Refer https://tika.apache.org/2.9.1/configuring.html for details # tikaConfig: | # <?xml version="1.0" encoding="UTF-8"?> # <properties> # <parsers> -# <!-- Default Parser for most things, except for 2 mime types, and never -# use the Executable Parser --> +# <!-- Default Parser for most things, except for 2 mime +# types, and never use the Executable Parser --> # <parser class="org.apache.tika.parser.DefaultParser"> # <mime-exclude>image/jpeg</mime-exclude> # <mime-exclude>application/pdf</mime-exclude> -# <parser-exclude class="org.apache.tika.parser.executable.ExecutableParser"/> +# <parser-exclude +# class="org.apache.tika.parser.executable.ExecutableParser"/> # </parser> # <!-- Use a different parser for PDF --> # <parser class="org.apache.tika.parser.EmptyParser">