From 36820a30d09a283adb34545a9dd357512c6ce1dc Mon Sep 17 00:00:00 2001 From: Gabe Cook Date: Thu, 2 Mar 2023 17:10:06 -0600 Subject: [PATCH] :sparkles: (qbittorrent): Create qBittorrent chart --- README.md | 1 + charts/qbittorrent/.helmignore | 25 ++++++ charts/qbittorrent/Chart.lock | 6 ++ charts/qbittorrent/Chart.yaml | 25 ++++++ charts/qbittorrent/README.md | 96 ++++++++++++++++++++++ charts/qbittorrent/README_CONFIG.md.gotmpl | 9 ++ charts/qbittorrent/templates/NOTES.txt | 1 + charts/qbittorrent/templates/common.yaml | 1 + charts/qbittorrent/values.yaml | 53 ++++++++++++ 9 files changed, 217 insertions(+) create mode 100644 charts/qbittorrent/.helmignore create mode 100644 charts/qbittorrent/Chart.lock create mode 100644 charts/qbittorrent/Chart.yaml create mode 100644 charts/qbittorrent/README.md create mode 100644 charts/qbittorrent/README_CONFIG.md.gotmpl create mode 100644 charts/qbittorrent/templates/NOTES.txt create mode 100644 charts/qbittorrent/templates/common.yaml create mode 100644 charts/qbittorrent/values.yaml diff --git a/README.md b/README.md index ba75716cd..2d1286f2c 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,7 @@ helm delete my- | [pictshare](charts/pictshare/) | PictShare is an open source image, mp4, pastebin hosting service with a simple resizing and upload API that you can host yourself. | | [podgrab](charts/podgrab/) | A self-hosted podcast manager to download episodes as soon as they become live. | | [portfolio](charts/portfolio/) | My personal portfolio website | +| [qbittorrent](charts/qbittorrent/) | The qBittorrent project aims to provide an open-source software alternative to µTorrent. | | [relax-sounds](charts/relax-sounds/) | Relax Sounds is a website that lets you stream relaxing sounds to your browser or over Google Cast. | | [rss-bridge](charts/rss-bridge/) | The RSS feed for websites missing it. | | [rsshub](charts/rsshub/) | RSSHub is an open source, easy to use, and extensible RSS feed generator. It's capable of generating RSS feeds from pretty much everything. | diff --git a/charts/qbittorrent/.helmignore b/charts/qbittorrent/.helmignore new file mode 100644 index 000000000..f56cea6b7 --- /dev/null +++ b/charts/qbittorrent/.helmignore @@ -0,0 +1,25 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# helm-docs templates +*.gotmpl diff --git a/charts/qbittorrent/Chart.lock b/charts/qbittorrent/Chart.lock new file mode 100644 index 000000000..10d2e6d10 --- /dev/null +++ b/charts/qbittorrent/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://bjw-s.github.io/helm-charts + version: 1.3.2 +digest: sha256:9bb4816882dfc02904f9f347a7995bf7acefd55bd60f925c3a8d80938a2b1ec0 +generated: "2023-02-19T11:44:05.401780406Z" diff --git a/charts/qbittorrent/Chart.yaml b/charts/qbittorrent/Chart.yaml new file mode 100644 index 000000000..e9e340d72 --- /dev/null +++ b/charts/qbittorrent/Chart.yaml @@ -0,0 +1,25 @@ +apiVersion: v2 +name: qbittorrent +description: The qBittorrent project aims to provide an open-source software alternative to µTorrent. +home: https://charts.gabe565.com/charts/qbittorrent +icon: https://raw.githubusercontent.com/qbittorrent/qBittorrent/master/src/icons/qbittorrent-tray.svg +type: application +version: 0.0.1 +# renovate datasource=docker depName=ghcr.io/linuxserver/qbittorrent +appVersion: version-4.5.2-r0 +kubeVersion: ">=1.22.0-0" +keywords: + - torrent + - bittorrent +dependencies: + - name: common + repository: https://bjw-s.github.io/helm-charts + version: 1.3.2 +sources: + - https://github.com/gabe565/charts/tree/main/charts/qbittorrent + - https://github.com/qbittorrent/qBittorrent + - https://github.com/linuxserver/docker-qbittorrent +annotations: + artifacthub.io/changes: |- + - kind: added + description: Initial release diff --git a/charts/qbittorrent/README.md b/charts/qbittorrent/README.md new file mode 100644 index 000000000..9e26558eb --- /dev/null +++ b/charts/qbittorrent/README.md @@ -0,0 +1,96 @@ +# qbittorrent + +qbittorrent logo + +![Version: 0.0.1](https://img.shields.io/badge/Version-0.0.1-informational?style=flat) +![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat) +![AppVersion: version-4.5.2-r0](https://img.shields.io/badge/AppVersion-version--4.5.2--r0-informational?style=flat) + +The qBittorrent project aims to provide an open-source software alternative to µTorrent. + +**Homepage:** + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/gabe565/charts/issues/new)** + +## Source Code + +* +* +* + +## Requirements + +Kubernetes: `>=1.22.0-0` + +## Dependencies + +| Repository | Name | Version | +|------------|------|---------| +| | common | 1.3.2 | + +## TL;DR + +```console +helm repo add gabe565 https://charts.gabe565.com +helm repo update +helm install qbittorrent gabe565/qbittorrent +``` + +## Installing the Chart + +To install the chart with the release name `qbittorrent` + +```console +helm install qbittorrent gabe565/qbittorrent +``` + +## Uninstalling the Chart + +To uninstall the `qbittorrent` deployment + +```console +helm uninstall qbittorrent +``` + +The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release. + +## Configuration + +Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values. +Other values may be used from the [values.yaml](https://github.com/bjw-s/helm-charts/tree/main/charts/library/common/values.yaml) from the [bjw-s common library](https://github.com/bjw-s/helm-charts/tree/main/charts/library/common). + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install qbittorrent \ + --set env.TZ="America/New York" \ + gabe565/qbittorrent +``` + +Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. + +```console +helm install qbittorrent gabe565/qbittorrent -f values.yaml +``` + +## Custom configuration + +N/A + +## Values + +**Important**: When deploying an application Helm chart you can add more values from the bjw-s common library chart [here](https://github.com/bjw-s/helm-charts/tree/main/charts/library/common) + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| env | object | See [values.yaml](./values.yaml) | environment variables. [[ref]](https://github.com/linuxserver/docker-qbittorrent#parameters) | +| env.TZ | string | `"UTC"` | Set the container timezone | +| image.pullPolicy | string | `"IfNotPresent"` | image pull policy | +| image.repository | string | `"ghcr.io/linuxserver/qbittorrent"` | image repository | +| image.tag | string | `"version-4.5.2-r0"` | image tag | +| ingress.main | object | See [values.yaml](./values.yaml) | Enable and configure ingress settings for the chart under this key. | +| persistence | object | See values.yaml | Configure persistence settings for the chart under this key. | +| service | object | See [values.yaml](./values.yaml) | Configures service settings for the chart. | + +--- +Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs) diff --git a/charts/qbittorrent/README_CONFIG.md.gotmpl b/charts/qbittorrent/README_CONFIG.md.gotmpl new file mode 100644 index 000000000..e93d80bfa --- /dev/null +++ b/charts/qbittorrent/README_CONFIG.md.gotmpl @@ -0,0 +1,9 @@ +{{- define "custom.custom.configuration.header" -}} +## Custom configuration +{{- end -}} + +{{- define "custom.custom.configuration" -}} +{{ template "custom.custom.configuration.header" . }} + +N/A +{{- end -}} diff --git a/charts/qbittorrent/templates/NOTES.txt b/charts/qbittorrent/templates/NOTES.txt new file mode 100644 index 000000000..44ecfaa6c --- /dev/null +++ b/charts/qbittorrent/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "bjw-s.common.lib.chart.notes" . -}} diff --git a/charts/qbittorrent/templates/common.yaml b/charts/qbittorrent/templates/common.yaml new file mode 100644 index 000000000..6eb9b68ff --- /dev/null +++ b/charts/qbittorrent/templates/common.yaml @@ -0,0 +1 @@ +{{ include "bjw-s.common.loader.all" . }} diff --git a/charts/qbittorrent/values.yaml b/charts/qbittorrent/values.yaml new file mode 100644 index 000000000..86aec244d --- /dev/null +++ b/charts/qbittorrent/values.yaml @@ -0,0 +1,53 @@ +# +# IMPORTANT NOTE +# +# This chart inherits from our common library chart. You can check the default values/options here: +# https://github.com/bjw-s/helm-charts/blob/main/charts/library/common/values.yaml +# + +image: + # -- image repository + repository: ghcr.io/linuxserver/qbittorrent + # -- image pull policy + pullPolicy: IfNotPresent + # -- image tag + tag: version-4.5.2-r0 + +# -- environment variables. [[ref]](https://github.com/linuxserver/docker-qbittorrent#parameters) +# @default -- See [values.yaml](./values.yaml) +env: + # -- Set the container timezone + TZ: UTC + +# -- Configures service settings for the chart. +# @default -- See [values.yaml](./values.yaml) +service: + main: + ports: + http: + port: 8080 + bittorrent: + enabled: false + ports: + bittorrent: + enabled: true + port: 6881 + protocol: TCP + +ingress: + # -- Enable and configure ingress settings for the chart under this key. + # @default -- See [values.yaml](./values.yaml) + main: + enabled: false + +# -- Configure persistence settings for the chart under this key. +# @default -- See values.yaml +persistence: + config: + enabled: false + media: + enabled: false + # mountPath: /media + downloads: + enabled: false + # mountPath: /downloads