mirror of
https://github.com/plcnk/charts.git
synced 2026-04-05 17:22:21 +00:00
Compare commits
109 Commits
it-tools-1
...
wikijs-0.7
| Author | SHA1 | Date | |
|---|---|---|---|
| 1ad03f75ad | |||
| c2ade92e3b | |||
| 52ef885d21 | |||
| 00e7eaae02 | |||
| 60c76f9ec3 | |||
| 23f743236e | |||
| 502b1f6290 | |||
| a513d7ba45 | |||
| e9fcb61011 | |||
| 86b3a1e320 | |||
| 499e9621e8 | |||
| 1deba7324a | |||
| 5fd56267a2 | |||
| 9bbe6f41ef | |||
| 16e2d9cfae | |||
| 6e3834bbe0 | |||
| 4ebb6638d4 | |||
| 76cf768d5d | |||
| 87399bb44e | |||
| 941a5555d9 | |||
| d075823c8e | |||
| 769724720a | |||
| a789e1cc1a | |||
| 27269078ab | |||
| fe7b361925 | |||
| 04ffa01973 | |||
| a0a94c384d | |||
| 413d285131 | |||
| 1a4c72b312 | |||
| 1d644b4f84 | |||
| 7df4ad9051 | |||
| f135d2bab8 | |||
| a18b798693 | |||
| 3bfcc090f4 | |||
| c14495f98b | |||
| bccad5a6ae | |||
| d5f740ac9b | |||
| 048a50f51a | |||
| 5d954b8653 | |||
| a557fb6230 | |||
| b9c278bc2f | |||
| 516c77dd01 | |||
| 3fcf5839c7 | |||
| edd2e92213 | |||
| f708404a7f | |||
| d3534b4ed4 | |||
| 370563fe9b | |||
| 663ba55085 | |||
| 9a810984f7 | |||
| d32234d769 | |||
| 4e9ff18e1a | |||
| b475b3bf07 | |||
| 229da9aec8 | |||
| 48389c51f7 | |||
| bcc80ee2ce | |||
| 6c3b61a50c | |||
| 886d839eca | |||
| c70d0909fe | |||
| 1cc9a485b0 | |||
| 8815097302 | |||
| 84bc47b485 | |||
| c662ad0930 | |||
| 0b08b5ab96 | |||
| 0e13490cb2 | |||
| 0b836e3714 | |||
| 673882ea17 | |||
| 795076fd32 | |||
| 211c6eb3c9 | |||
| f3177431dc | |||
| 1501caa7fa | |||
| e8e34afecf | |||
| 6bd6db84b6 | |||
| 316c9da542 | |||
| 506c1dbf08 | |||
| d0a40d8e34 | |||
| 75eae30567 | |||
| 889db13bfd | |||
| 98287eab11 | |||
| d22af619f0 | |||
| 6349569d70 | |||
| 8d486da4a8 | |||
| b73656f095 | |||
| 5af36a965e | |||
| e7acff7893 | |||
| 61d0653c14 | |||
| 7a7a1af76e | |||
| 0cf760a6a0 | |||
| 0f8b576241 | |||
| 36dce8cb0c | |||
| 392a30a3c9 | |||
| 7ee7a18896 | |||
| 882dc805cf | |||
| 6afaf6cf65 | |||
| 4aa55b6b26 | |||
| d9f460f93a | |||
| aa0dd39801 | |||
| 31bbf1ca94 | |||
| 8a84b5e13a | |||
| 6655b6bb97 | |||
| 4c3749aa12 | |||
| 60408a5fd4 | |||
| e476ff3c5b | |||
| 6877ce65df | |||
| 668781b2aa | |||
| 65985fa488 | |||
| afd6a5141e | |||
| 1c16ee1558 | |||
| 26326862fc | |||
| be39c8c240 |
1
.github/CODEOWNERS
vendored
Normal file
1
.github/CODEOWNERS
vendored
Normal file
@ -0,0 +1 @@
|
||||
* @plcnk
|
||||
2
.github/cr-config.yaml
vendored
Normal file
2
.github/cr-config.yaml
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
generate-release-notes: true
|
||||
skip-existing: true
|
||||
5
.github/ct-install-config.yaml
vendored
Normal file
5
.github/ct-install-config.yaml
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
debug: true
|
||||
all: true
|
||||
chart-repos:
|
||||
- bjw-s=https://bjw-s.github.io/helm-charts
|
||||
- bitnami=https://charts.bitnami.com/bitnami
|
||||
6
.github/ct-lint-config.yaml
vendored
Normal file
6
.github/ct-lint-config.yaml
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
debug: true
|
||||
all: true
|
||||
validate-maintainers: false
|
||||
chart-repos:
|
||||
- bjw-s=https://bjw-s.github.io/helm-charts
|
||||
- bitnami=https://charts.bitnami.com/bitnami
|
||||
7
.github/labeler.yaml
vendored
Normal file
7
.github/labeler.yaml
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
---
|
||||
area/ci:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ".github/**/*"
|
||||
area/charts:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: "charts/**/*"
|
||||
50
.github/renovate.json5
vendored
50
.github/renovate.json5
vendored
@ -1,36 +1,30 @@
|
||||
{
|
||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||
"extends": [
|
||||
"github>plcnk/.github:default.json5",
|
||||
":semanticCommitTypeAll(chore)"
|
||||
$schema: 'https://docs.renovatebot.com/renovate-schema.json',
|
||||
extends: [
|
||||
'github>plcnk/.github:default.json5',
|
||||
':semanticCommitTypeAll(chore)',
|
||||
],
|
||||
"regexManagers": [
|
||||
{
|
||||
"fileMatch": ["\\.yaml$"],
|
||||
"matchStrings": [
|
||||
"# ?renovate datasource=(?<datasource>.+?) depName=(?<depName>.+)\\n.+: [\"']?(?<currentValue>.+?)[\"']?\\n"
|
||||
]
|
||||
}
|
||||
gitIgnoredAuthors: [
|
||||
'renovate[bot]@users.noreply.github.com',
|
||||
'178334506+plcnk-bot[bot]@users.noreply.github.com',
|
||||
],
|
||||
"packageRules": [
|
||||
customManagers: [
|
||||
{
|
||||
"matchDatasources": ["helm"],
|
||||
"commitMessageTopic": "{{depName}} Helm release"
|
||||
customType: 'regex',
|
||||
fileMatch: [
|
||||
'\\.yaml$',
|
||||
],
|
||||
matchStrings: [
|
||||
'# ?renovate datasource=(?<datasource>.+?) depName=(?<depName>.+)\\n.+: ["\']?(?<currentValue>.+?)["\']?\\n',
|
||||
],
|
||||
},
|
||||
],
|
||||
packageRules: [
|
||||
{
|
||||
"matchDatasources": ["docker"],
|
||||
"matchPackageNames": ["ghcr.io/dgtlmoon/changedetection.io"],
|
||||
"versioning": "loose"
|
||||
matchDatasources: [
|
||||
'helm',
|
||||
],
|
||||
commitMessageTopic: '{{depName}} Helm release',
|
||||
},
|
||||
{
|
||||
"matchDatasources": ["docker"],
|
||||
"matchPackageNames": ["ghcr.io/juanfont/headscale"],
|
||||
"allowedVersions": "!/^0.23.0$/"
|
||||
},
|
||||
{
|
||||
"matchDatasources": ["docker"],
|
||||
"matchPackageNames": ["eqalpha/keydb"],
|
||||
"versioning": "regex:^(?<compatability>.+?)_v(?<major>\\d+)\\.(?<minor>\\d+)\\.(?<patch>\\d+)$"
|
||||
}
|
||||
]
|
||||
],
|
||||
}
|
||||
|
||||
27
.github/workflows/labeler.yaml
vendored
Normal file
27
.github/workflows/labeler.yaml
vendored
Normal file
@ -0,0 +1,27 @@
|
||||
---
|
||||
name: Label PR
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
labeler:
|
||||
name: Labeler
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.event.pull_request.head.repo.full_name == github.repository }}
|
||||
steps:
|
||||
- name: Generate Token
|
||||
uses: actions/create-github-app-token@v1
|
||||
id: app-token
|
||||
with:
|
||||
app-id: ${{ secrets.BOT_APP_ID }}
|
||||
private-key: ${{ secrets.BOT_APP_PRIVATE_KEY }}
|
||||
|
||||
- name: Labeler
|
||||
uses: actions/labeler@v5
|
||||
with:
|
||||
repo-token: "${{ steps.app-token.outputs.token }}"
|
||||
configuration-path: .github/labeler.yaml
|
||||
56
.github/workflows/lint-test.yaml
vendored
Normal file
56
.github/workflows/lint-test.yaml
vendored
Normal file
@ -0,0 +1,56 @@
|
||||
name: Linting and Testing
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
paths:
|
||||
- "charts/**"
|
||||
- ".github/workflows/**"
|
||||
pull_request:
|
||||
branches: [master]
|
||||
paths:
|
||||
- "charts/**"
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up chart-testing
|
||||
uses: helm/chart-testing-action@v2.7.0
|
||||
|
||||
- name: Run chart-testing (lint)
|
||||
run: ct lint --config .github/ct-lint-config.yaml
|
||||
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Install Helm
|
||||
uses: azure/setup-helm@v4
|
||||
|
||||
- name: Set up chart-testing
|
||||
uses: helm/chart-testing-action@v2.7.0
|
||||
|
||||
- name: Run chart-testing (list-changed)
|
||||
id: list-changed
|
||||
run: |
|
||||
changed=$(ct list-changed --chart-dirs charts --target-branch ${{ github.event.repository.default_branch }})
|
||||
if [[ -n "$changed" ]]; then
|
||||
echo "changed=true" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Create kind cluster
|
||||
if: steps.list-changed.outputs.changed == 'true'
|
||||
uses: helm/kind-action@v1.12.0
|
||||
|
||||
- name: Run chart-testing (install)
|
||||
if: steps.list-changed.outputs.changed == 'true'
|
||||
run: ct install --config .github/ct-install-config.yaml
|
||||
85
.github/workflows/release.yaml
vendored
85
.github/workflows/release.yaml
vendored
@ -1,4 +1,4 @@
|
||||
name: Release Charts
|
||||
name: Release
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
@ -8,12 +8,31 @@ on:
|
||||
paths:
|
||||
- charts/**
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
packages: write
|
||||
pages: write
|
||||
id-token: write
|
||||
|
||||
concurrency:
|
||||
group: release
|
||||
cancel-in-progress: false
|
||||
|
||||
jobs:
|
||||
release:
|
||||
permissions:
|
||||
contents: write
|
||||
release-charts:
|
||||
name: Release Charts
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
AUTHOR_USER: plcnk-bot
|
||||
AUTHOR_EMAIL: 178334506+plcnk-bot[bot]@users.noreply.github.com
|
||||
steps:
|
||||
- name: Generate Token
|
||||
id: app-token
|
||||
uses: actions/create-github-app-token@v1
|
||||
with:
|
||||
app-id: ${{ secrets.BOT_APP_ID }}
|
||||
private-key: ${{ secrets.BOT_APP_PRIVATE_KEY }}
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
@ -21,10 +40,58 @@ jobs:
|
||||
|
||||
- name: Configure Git
|
||||
run: |
|
||||
git config user.name "$GITHUB_ACTOR"
|
||||
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
|
||||
git config user.name "${{ env.AUTHOR_USER }}"
|
||||
git config user.email "${{ env.AUTHOR_EMAIL }}"
|
||||
|
||||
- name: Run chart-releaser
|
||||
uses: helm/chart-releaser-action@v1.6.0
|
||||
- name: Add Helm repos
|
||||
run: |
|
||||
helm repo add bjw-s https://bjw-s.github.io/helm-charts
|
||||
helm repo add bitnami https://charts.bitnami.com/bitnami
|
||||
|
||||
- name: Install chart-releaser
|
||||
uses: helm/chart-releaser-action@v1.5.0
|
||||
with:
|
||||
install_only: true
|
||||
|
||||
- name: Package charts
|
||||
id: package_charts
|
||||
run: |
|
||||
changed_charts=""
|
||||
for dir in charts/*; do
|
||||
chart_name="$(basename "$dir")"
|
||||
version="$(yq '.version' "$dir/Chart.yaml")"
|
||||
if ! git rev-parse "$chart_name-${version#v}" &>/dev/null; then
|
||||
echo "Packaging chart $chart_name..."
|
||||
cr package --package-path=.cr-release-packages "$dir"
|
||||
changed_charts+="$chart_name,"
|
||||
fi
|
||||
done
|
||||
echo "changed_charts=${changed_charts%,}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v3
|
||||
if: steps.package_charts.outputs.changed_charts != ''
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ github.token }}
|
||||
|
||||
- name: Push charts to GHCR
|
||||
if: steps.package_charts.outputs.changed_charts != ''
|
||||
run: |
|
||||
for pkg in .cr-release-packages/*; do
|
||||
if [ -z "${pkg:-}" ]; then
|
||||
break
|
||||
fi
|
||||
echo "Pushing $pkg..."
|
||||
helm push "$pkg" "oci://ghcr.io/$GITHUB_REPOSITORY_OWNER/charts"
|
||||
done
|
||||
|
||||
- name: Publish charts
|
||||
uses: helm/chart-releaser-action@v1.5.0
|
||||
if: steps.package_charts.outputs.changed_charts != ''
|
||||
with:
|
||||
config: .github/cr-config.yaml
|
||||
skip_packaging: true
|
||||
env:
|
||||
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
||||
CR_TOKEN: ${{ steps.app-token.outputs.token }}
|
||||
|
||||
115
.github/workflows/renovate.yaml
vendored
Normal file
115
.github/workflows/renovate.yaml
vendored
Normal file
@ -0,0 +1,115 @@
|
||||
name: Renovate
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- renovate/**
|
||||
|
||||
env:
|
||||
COMMIT_MESSAGE: "chore: Update chart metadata"
|
||||
|
||||
jobs:
|
||||
update-chart-metadata:
|
||||
name: Update Chart Metadata
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
AUTHOR_USER: plcnk-bot
|
||||
AUTHOR_EMAIL: 178334506+plcnk-bot[bot]@users.noreply.github.com
|
||||
steps:
|
||||
- name: Generate Token
|
||||
id: app-token
|
||||
uses: actions/create-github-app-token@v1
|
||||
with:
|
||||
app-id: ${{ secrets.BOT_APP_ID }}
|
||||
private-key: ${{ secrets.BOT_APP_PRIVATE_KEY }}
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
token: ${{ steps.app-token.outputs.token }}
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Detect Changes
|
||||
uses: dorny/paths-filter@v3
|
||||
id: changes
|
||||
with:
|
||||
list-files: shell
|
||||
filters: |
|
||||
charts:
|
||||
- charts/**
|
||||
|
||||
- name: Fetch PR
|
||||
id: pr
|
||||
uses: actions/github-script@v7
|
||||
with:
|
||||
github-token: ${{ steps.app-token.outputs.token }}
|
||||
script: |
|
||||
const response = await github.rest.repos.listPullRequestsAssociatedWithCommit({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
commit_sha: context.sha,
|
||||
});
|
||||
const pr = response.data.shift();
|
||||
core.setOutput("title", pr.title);
|
||||
core.setOutput("base_ref", pr.base.ref);
|
||||
core.setOutput("labels", pr.labels.map((e) => e.name).filter((e) => e));
|
||||
|
||||
- name: Update changelog
|
||||
env:
|
||||
TITLE: ${{ steps.pr.outputs.title }}
|
||||
CHANGELOG_APPEND: ${{ contains(steps.pr.outputs.labels, 'changelog-append') }}
|
||||
BREAKING_CHANGE: ${{ contains(steps.pr.outputs.labels, 'breaking-change') }}
|
||||
run: |
|
||||
set -eux
|
||||
export DESCRIPTION="$(perl -pe 's/^.+?: (.)/\U$1/' <<<"$TITLE")"
|
||||
if [[ "$BREAKING_CHANGE" == "true" ]]; then
|
||||
DESCRIPTION="BREAKING - $DESCRIPTION"
|
||||
fi
|
||||
CHANGELOG="$(yq -o json '[{"kind": "changed", "description": strenv(DESCRIPTION)}]')"
|
||||
UPDATE_TYPE=replace
|
||||
if [[ "$CHANGELOG_APPEND" == "true" ]]; then
|
||||
UPDATE_TYPE=append
|
||||
fi
|
||||
./hack/update-changelog.sh "$UPDATE_TYPE" "$CHANGELOG" ${{ steps.changes.outputs.charts_files }}
|
||||
|
||||
- name: Set type to patch
|
||||
if: contains(steps.pr.outputs.labels, 'patch') || contains(steps.pr.outputs.labels, 'digest')
|
||||
run: echo TYPE=patch >>$GITHUB_ENV
|
||||
- name: Set type to minor
|
||||
if: contains(steps.pr.outputs.labels, 'major') || contains(steps.pr.outputs.labels, 'minor')
|
||||
run: echo TYPE=minor >>$GITHUB_ENV
|
||||
- name: Update chart version
|
||||
if: "!contains(steps.pr.outputs.labels, 'skip-version-bump')"
|
||||
run: |
|
||||
set -eux
|
||||
./hack/update-version.sh "$TYPE" ${{ steps.changes.outputs.charts_files }}
|
||||
|
||||
- name: Install helm-docs
|
||||
uses: gabe565/setup-helm-docs-action@v1
|
||||
- name: Generate Helm docs
|
||||
run: |
|
||||
set -eu
|
||||
./hack/gen-helm-docs.sh
|
||||
|
||||
- name: Check if commit exists
|
||||
id: commit_exists
|
||||
env:
|
||||
BASE_REF: ${{ steps.pr.outputs.base_ref }}
|
||||
run: |
|
||||
set -eu
|
||||
IFS=$'\n\t'
|
||||
commits="$(git rev-list --pretty=oneline "origin/$BASE_REF..HEAD" | cut -d' ' -f2-)"
|
||||
if grep -F -e "$COMMIT_MESSAGE" <<<"$commits"; then
|
||||
echo 'result=true' >>$GITHUB_OUTPUT
|
||||
else
|
||||
echo 'result=false' >>$GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Commit chart version
|
||||
uses: stefanzweifel/git-auto-commit-action@v5
|
||||
if: steps.commit_exists.outputs.result == 'false' && !contains(steps.pr.outputs.labels, 'skip-chart-meta')
|
||||
with:
|
||||
commit_user_name: ${{ env.AUTHOR_USER }}
|
||||
commit_user_email: ${{ env.AUTHOR_EMAIL }}
|
||||
commit_author: ${{ env.AUTHOR_USER }} <${{ env.AUTHOR_EMAIL }}>
|
||||
commit_message: ${{ env.COMMIT_MESSAGE }}
|
||||
6
.gitignore
vendored
6
.gitignore
vendored
@ -1 +1,5 @@
|
||||
test_values/
|
||||
# Test values
|
||||
test_values/
|
||||
|
||||
# Helm resources
|
||||
charts/**/charts
|
||||
|
||||
40
README.md
40
README.md
@ -3,37 +3,35 @@
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/minicloudlabs/helm-charts/blob/main/LICENSE"><img src="https://img.shields.io/github/license/minicloudlabs/helm-charts" /></a>
|
||||
<a href="https://github.com/plcnk/charts/blob/master/LICENSE"><img src="https://img.shields.io/github/license/plcnk/charts" /></a>
|
||||
<a href="https://artifacthub.io/packages/search?repo=plcnk"><img src="https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/plcnk" /></a>
|
||||
<a href="https://github.com/plcnk/charts/actions/workflows/release.yaml"><img src="https://github.com/plcnk/charts/actions/workflows/release.yaml/badge.svg" /></a>
|
||||
<a href="https://docs.renovatebot.com/"><img src="https://img.shields.io/badge/Renovate-enabled-green?style=flat&logo=renovate" /></a>
|
||||
</p>
|
||||
|
||||
# plcnk's Helm Charts
|
||||
<p align="center">
|
||||
<a href="https://github.com/plcnk/charts/actions/workflows/release.yaml"><img src="https://github.com/plcnk/charts/actions/workflows/release.yaml/badge.svg" /></a>
|
||||
<a href="https://github.com/plcnk/charts/actions/workflows/lint-test.yaml"><img src="https://github.com/plcnk/charts/actions/workflows/lint-test.yaml/badge.svg" /></a>
|
||||
</p>
|
||||
|
||||
Charts for deploying applications on [Kubernetes](https://kubernetes.io/) using [Helm](https://helm.sh/).
|
||||
# Charts
|
||||
|
||||
A collection of [Helm](https://helm.sh) charts for [Kubernetes](https://kubernetes.io/).
|
||||
|
||||
All charts are based on the [bjw-s common library chart](https://github.com/bjw-s/helm-charts/tree/main/charts/library/common).
|
||||
|
||||
Also available on [Artifact Hub](https://artifacthub.io/packages/search?repo=plcnk).
|
||||
|
||||
The code in this repository is provided as-is with no warranties.
|
||||
|
||||
## Usage
|
||||
|
||||
[Helm](https://helm.sh) must be installed to use the charts.
|
||||
Please refer to Helm's [documentation](https://helm.sh/docs/) to get started.
|
||||
|
||||
Once Helm is set up properly, add the repo as follows:
|
||||
|
||||
```console
|
||||
helm repo add plcnk https://charts.plcnk.net
|
||||
helm repo update
|
||||
```
|
||||
|
||||
You can then run `helm search repo plcnk` to see the charts.
|
||||
|
||||
## Available charts
|
||||
## Chart Overview
|
||||
|
||||
| Chart | Description |
|
||||
| ----- | ----------- |
|
||||
| [IT-Tools <img src='https://raw.githubusercontent.com/plcnk/charts/main/charts/it-tools/icon.svg' alt='it-tools icon' width='18px' align='right' loading='lazy'>](charts/it-tools/) | Collection of handy online tools for developers, with great UX. |
|
||||
| [# cloudflare-tunnel <img src='https://raw.githubusercontent.com/plcnk/charts/master/charts/cloudflare-tunnel/icon.svg' alt='cloudflare-tunnel icon' width='18px' align='right' loading='lazy'>](https://github.com/plcnk/charts/tree/master/charts/cloudflare-tunnel/) | Connect your resources to Cloudflare without a publicly routable IP address. |
|
||||
| [# it-tools <img src='https://raw.githubusercontent.com/plcnk/charts/master/charts/it-tools/icon.svg' alt='it-tools icon' width='18px' align='right' loading='lazy'>](https://github.com/plcnk/charts/tree/master/charts/it-tools/) | Collection of handy online tools for developers, with great UX. |
|
||||
| [# moodist <img src='https://raw.githubusercontent.com/plcnk/charts/master/charts/moodist/icon.svg' alt='moodist icon' width='18px' align='right' loading='lazy'>](https://github.com/plcnk/charts/tree/master/charts/moodist/) | Ambient sounds for focus and calm. |
|
||||
| [# wikijs <img src='https://raw.githubusercontent.com/plcnk/charts/master/charts/wikijs/icon.svg' alt='wikijs icon' width='18px' align='right' loading='lazy'>](https://github.com/plcnk/charts/tree/master/charts/wikijs/) | A modern, lightweight and powerful wiki app built on NodeJS. |
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the [MIT License](https://github.com/plcnk/charts/blob/master/LICENSE).
|
||||
This project is licensed under the [MIT License](./LICENSE).
|
||||
|
||||
23
charts/cloudflare-tunnel/.helmignore
Normal file
23
charts/cloudflare-tunnel/.helmignore
Normal file
@ -0,0 +1,23 @@
|
||||
# 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/
|
||||
6
charts/cloudflare-tunnel/Chart.lock
Normal file
6
charts/cloudflare-tunnel/Chart.lock
Normal file
@ -0,0 +1,6 @@
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://bjw-s.github.io/helm-charts
|
||||
version: 3.3.2
|
||||
digest: sha256:5a0f9f06aa383b7cc3070899b879401bcd4ae48b021d0a2b7f9ba39827019e24
|
||||
generated: "2024-08-20T23:20:57.06668901+02:00"
|
||||
30
charts/cloudflare-tunnel/Chart.yaml
Normal file
30
charts/cloudflare-tunnel/Chart.yaml
Normal file
@ -0,0 +1,30 @@
|
||||
apiVersion: v2
|
||||
name: cloudflare-tunnel
|
||||
description: Connect your resources to Cloudflare without a publicly routable IP address.
|
||||
home: https://github.com/plcnk/charts/tree/master/charts/cloudflare-tunnel
|
||||
icon: https://raw.githubusercontent.com/plcnk/charts/master/charts/cloudflare-tunnel/icon.svg
|
||||
type: application
|
||||
version: 0.7.1
|
||||
# renovate datasource=docker depName=cloudflare/cloudflared
|
||||
appVersion: "2025.2.1"
|
||||
kubeVersion: ">=1.22.0-0"
|
||||
keywords:
|
||||
- cloudflared
|
||||
- cloudflare
|
||||
- argo
|
||||
- tunnel
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://bjw-s.github.io/helm-charts
|
||||
version: 3.3.2
|
||||
sources:
|
||||
- https://github.com/cloudflare/cloudflared
|
||||
annotations:
|
||||
artifacthub.io/changes: |-
|
||||
- kind: changed
|
||||
description: Update cloudflare/cloudflared docker tag to v2025.2.1
|
||||
artifacthub.io/links: |-
|
||||
- name: App Source
|
||||
url: https://github.com/cloudflare/cloudflared
|
||||
- name: Chart Source
|
||||
url: https://github.com/plcnk/charts/tree/master/charts/cloudflare-tunnel
|
||||
109
charts/cloudflare-tunnel/README.md
Normal file
109
charts/cloudflare-tunnel/README.md
Normal file
@ -0,0 +1,109 @@
|
||||
# # cloudflare-tunnel
|
||||
|
||||
<img src="https://raw.githubusercontent.com/plcnk/charts/master/charts/cloudflare-tunnel/icon.svg" align="right" width="92" alt="cloudflare-tunnel logo">
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
Connect your resources to Cloudflare without a publicly routable IP address.
|
||||
|
||||
**Homepage:** <https://github.com/plcnk/charts/tree/master/charts/cloudflare-tunnel>
|
||||
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised
|
||||
[here](https://github.com/plcnk/charts/issues/new?assignees=plcnk&labels=bug&template=bug_report.yaml&name=cloudflare-tunnel&version=0.7.1)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/cloudflare/cloudflared>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.22.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| <https://bjw-s.github.io/helm-charts> | common | 3.3.2 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `cloudflare-tunnel`
|
||||
|
||||
### OCI (Recommended)
|
||||
|
||||
```console
|
||||
helm install cloudflare-tunnel oci://ghcr.io/plcnk/charts/cloudflare-tunnel
|
||||
```
|
||||
|
||||
### Traditional
|
||||
|
||||
```console
|
||||
helm repo add plcnk https://charts.plcnk.net
|
||||
helm repo update
|
||||
helm install cloudflare-tunnel plcnk/cloudflare-tunnel
|
||||
```
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `cloudflare-tunnel` deployment
|
||||
|
||||
```console
|
||||
helm uninstall cloudflare-tunnel
|
||||
```
|
||||
|
||||
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 cloudflare-tunnel \
|
||||
--set env.TZ="America/New York" \
|
||||
plcnk/cloudflare-tunnel
|
||||
```
|
||||
|
||||
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||
|
||||
```console
|
||||
helm install cloudflare-tunnel plcnk/cloudflare-tunnel -f values.yaml
|
||||
```
|
||||
|
||||
## Custom configuration
|
||||
|
||||
> [!NOTE]
|
||||
> This chart only supports the **remotely-managed** (dashboard) version of Cloudflare Tunnel.
|
||||
> The **locally-managed** (CLI) version is currently **not supported**.
|
||||
|
||||
## 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 |
|
||||
|-----|------|---------|-------------|
|
||||
| controllers.main.containers.app.env | object | See [values.yaml](./values.yaml) | Environment variables |
|
||||
| controllers.main.containers.app.image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
|
||||
| controllers.main.containers.app.image.repository | string | `"cloudflare/cloudflared"` | Image repository |
|
||||
| controllers.main.containers.app.image.tag | string | `"2025.2.1"` | Image tag |
|
||||
| controllers.main.containers.app.securityContext.allowPrivilegeEscalation | bool | `false` | Disable privilege escalations |
|
||||
| controllers.main.containers.app.securityContext.capabilities | object | `{"drop":["ALL"]}` | Drop all capabilities |
|
||||
| controllers.main.containers.app.securityContext.readOnlyRootFilesystem | bool | `true` | Mount the container's root filesystem as read-only |
|
||||
| controllers.main.pod.securityContext.fsGroup | int | `65534` | Volume binds will be granted to `nobody` group |
|
||||
| controllers.main.pod.securityContext.runAsGroup | int | `65534` | Run as `nobody` group |
|
||||
| controllers.main.pod.securityContext.runAsNonRoot | bool | `true` | Run container as a non-root user |
|
||||
| controllers.main.pod.securityContext.runAsUser | int | `65534` | Run as `nobody` user |
|
||||
| controllers.main.replicas | int | `1` | Number of desired pods |
|
||||
| controllers.main.resources | object | `{}` | Set the resource requests / limits for the container. |
|
||||
| controllers.main.type | string | `"deployment"` | Controller type |
|
||||
| logLevel | string | `"info"` | Set the container log level. Accepted values: `debug`, `info`, `warn`, `error`, `fatal` |
|
||||
| metrics | object | `{"enabled":false,"port":""}` | Enable Metrics Monitor under this key. |
|
||||
| tunnel.existingSecret | object | `{"enabled":false,"key":"","name":""}` | You can set the token as an existing secret here. Cannot coexist with `tunnel.token` |
|
||||
| tunnel.token | string | `"your-token-here"` | Set the Cloudflare Tunnel token here. Cannot coexist with `tunnel.existingSecret.enabled` set to `true`. |
|
||||
|
||||
---
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
||||
15
charts/cloudflare-tunnel/README_CONFIG.md.gotmpl
Normal file
15
charts/cloudflare-tunnel/README_CONFIG.md.gotmpl
Normal file
@ -0,0 +1,15 @@
|
||||
{{- define "custom.chart.name" -}}
|
||||
# {{ .Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration.header" -}}
|
||||
## Custom configuration
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration" -}}
|
||||
{{ template "custom.custom.configuration.header" . }}
|
||||
|
||||
> [!NOTE]
|
||||
> This chart only supports the **remotely-managed** (dashboard) version of Cloudflare Tunnel.
|
||||
> The **locally-managed** (CLI) version is currently **not supported**.
|
||||
{{- end -}}
|
||||
7
charts/cloudflare-tunnel/icon.svg
Normal file
7
charts/cloudflare-tunnel/icon.svg
Normal file
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generator: visioncortex VTracer 0.6.3 -->
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1368" height="1368">
|
||||
<path d="M0 0 C0.9 0.3 1.81 0.59 2.74 0.9 C30.37 10.09 57.26 23.05 81 40 C82.05 40.75 82.05 40.75 83.12 41.51 C93.85 49.19 104.2 57.16 114 66 C114.9 66.8 114.9 66.8 115.81 67.62 C130.2 80.59 143.43 94.46 155 110 C155.5 110.67 156 111.33 156.52 112.02 C183.24 147.62 203.61 188.25 213.24 231.92 C214.71 238.18 217.19 243.88 222.43 247.84 C223.24 248.2 224.04 248.56 224.88 248.94 C225.68 249.32 226.48 249.7 227.3 250.09 C233.49 252.18 239.84 252.15 246.29 252.18 C248.12 252.2 249.95 252.22 251.79 252.24 C253.22 252.26 253.22 252.26 254.67 252.27 C315.14 253.09 372.77 269.58 421 307 C421.92 307.71 422.84 308.42 423.79 309.15 C428.88 313.14 433.73 317.36 438.51 321.73 C440.13 323.21 441.77 324.67 443.43 326.11 C454.99 336.21 464.81 347.74 474 360 C474.43 360.57 474.86 361.15 475.3 361.74 C481.81 370.47 487.66 379.51 493 389 C493.43 389.77 493.87 390.54 494.32 391.34 C501.8 404.78 507.75 418.55 513 433 C513.26 433.7 513.52 434.41 513.79 435.13 C532.45 485.92 532.08 543.7 518.19 595.53 C516.6 598.84 515.13 600.04 512 602 C508.93 602.58 505.9 602.54 502.78 602.5 C501.84 602.51 500.9 602.51 499.94 602.52 C496.77 602.53 493.61 602.52 490.44 602.5 C488.15 602.51 485.85 602.51 483.56 602.52 C477.22 602.54 470.87 602.53 464.53 602.51 C458.36 602.5 452.18 602.51 446 602.52 C433.21 602.54 420.42 602.54 407.63 602.53 C394.67 602.52 381.7 602.52 368.74 602.53 C367.92 602.53 367.1 602.53 366.26 602.53 C362.92 602.53 359.59 602.53 356.26 602.53 C325.2 602.55 294.15 602.56 263.09 602.55 C262.17 602.54 261.25 602.54 260.3 602.54 C258.92 602.54 258.92 602.54 257.51 602.54 C229.43 602.53 201.36 602.53 173.29 602.54 C171.41 602.54 169.54 602.54 167.66 602.54 C160.11 602.54 152.56 602.54 145.02 602.54 C123.92 602.54 102.82 602.55 81.72 602.55 C80.76 602.55 79.8 602.55 78.81 602.55 C48.18 602.55 17.55 602.54 -13.08 602.54 C-14.07 602.54 -15.06 602.54 -16.09 602.53 C-32.23 602.53 -48.36 602.53 -64.5 602.52 C-128.51 602.5 -192.52 602.5 -256.53 602.52 C-272.66 602.53 -288.79 602.53 -304.92 602.54 C-305.92 602.54 -306.91 602.54 -307.93 602.54 C-338.53 602.55 -369.12 602.55 -399.72 602.55 C-400.68 602.55 -401.64 602.55 -402.63 602.55 C-423.7 602.55 -444.78 602.54 -465.85 602.54 C-473.4 602.54 -480.94 602.54 -488.48 602.54 C-490.35 602.54 -492.23 602.54 -494.1 602.53 C-522.17 602.53 -550.24 602.53 -578.3 602.54 C-579.22 602.54 -580.14 602.54 -581.09 602.55 C-582.47 602.55 -582.47 602.55 -583.88 602.55 C-614.84 602.56 -645.81 602.55 -676.77 602.53 C-680.09 602.53 -683.41 602.53 -686.74 602.53 C-687.96 602.52 -687.96 602.52 -689.21 602.52 C-702.14 602.52 -715.07 602.52 -728.01 602.53 C-740.71 602.54 -753.41 602.54 -766.12 602.52 C-772.92 602.51 -779.72 602.51 -786.52 602.52 C-792.7 602.54 -798.88 602.53 -805.05 602.51 C-807.28 602.51 -809.51 602.51 -811.74 602.52 C-814.76 602.53 -817.77 602.52 -820.78 602.5 C-821.65 602.51 -822.52 602.52 -823.42 602.53 C-827.48 602.48 -829.5 602.31 -833.02 600.09 C-842.45 590.12 -838.42 564.68 -838.14 551.88 C-836.42 503 -815.12 455.7 -781.49 420.57 C-780.48 419.5 -779.47 418.43 -778.47 417.36 C-763.65 401.45 -746.18 389.13 -727 379 C-726.33 378.64 -725.65 378.28 -724.95 377.9 C-699.01 364.22 -667.52 355.44 -638 356 C-638.2 355.03 -638.41 354.06 -638.62 353.05 C-646.55 313.4 -639.86 273.21 -617.59 239.23 C-612.09 231.17 -605.76 224.02 -599 217 C-598.36 216.29 -597.72 215.59 -597.05 214.86 C-579.7 196.35 -554.31 184.24 -530 178 C-529.36 177.83 -528.72 177.67 -528.06 177.5 C-491.52 168.63 -451.22 176.44 -419.45 195.73 C-415.6 198.11 -411.79 200.54 -408 203 C-407.76 201.72 -407.51 200.45 -407.26 199.13 C-406.06 193.78 -404.08 188.94 -401.88 183.94 C-401.48 183.02 -401.08 182.11 -400.67 181.16 C-397.33 173.59 -393.77 166.17 -389.95 158.84 C-389.04 157.08 -388.16 155.3 -387.29 153.52 C-378.55 136.27 -367.25 119.95 -355 105 C-354.59 104.49 -354.17 103.98 -353.74 103.46 C-338.92 85.31 -322.53 68.39 -304 54 C-303.42 53.55 -302.84 53.1 -302.25 52.63 C-282.6 37.39 -261.49 24.6 -239 14 C-237.77 13.42 -237.77 13.42 -236.51 12.82 C-163.01 -21.39 -76.82 -25.29 0 0 Z " fill="#F38020" transform="translate(838,335)"/>
|
||||
<path d="M0 0 C0.84 1.08 0.84 1.08 1.69 2.19 C7.89 9.74 13.22 12.9 23 14 C26.1 14.14 29.19 14.16 32.29 14.18 C34.12 14.2 35.95 14.22 37.79 14.24 C38.74 14.25 39.69 14.26 40.67 14.27 C101.14 15.09 158.77 31.58 207 69 C207.92 69.71 208.84 70.42 209.79 71.15 C214.88 75.14 219.73 79.36 224.51 83.73 C226.13 85.21 227.77 86.67 229.43 88.11 C240.99 98.21 250.81 109.74 260 122 C260.43 122.57 260.86 123.15 261.3 123.74 C267.81 132.47 273.66 141.51 279 151 C279.43 151.77 279.87 152.54 280.32 153.34 C287.8 166.78 293.75 180.55 299 195 C299.26 195.7 299.52 196.41 299.79 197.13 C318.45 247.92 318.08 305.7 304.19 357.53 C302.63 360.78 301.02 362.03 298 364 C294.64 364.5 294.64 364.5 290.72 364.49 C289.99 364.5 289.26 364.5 288.51 364.51 C286.07 364.52 283.63 364.5 281.19 364.48 C279.42 364.48 277.66 364.49 275.89 364.49 C271.03 364.5 266.18 364.48 261.32 364.46 C256.08 364.45 250.85 364.45 245.61 364.46 C236.54 364.46 227.47 364.45 218.39 364.42 C205.27 364.39 192.16 364.38 179.04 364.37 C157.75 364.37 136.47 364.34 115.19 364.3 C94.51 364.27 73.84 364.24 53.16 364.22 C51.89 364.22 50.61 364.22 49.3 364.22 C42.91 364.21 36.51 364.21 30.12 364.2 C-22.92 364.16 -75.96 364.09 -129 364 C-128.01 363.34 -127.02 362.68 -126 362 C-120.61 357.69 -119.63 353.41 -118 347 C-117.61 345.61 -117.21 344.23 -116.81 342.84 C-114.17 333.62 -111.86 324.41 -110 315 C-109.72 313.82 -109.72 313.82 -109.43 312.61 C-106.41 294.38 -110.32 273.87 -120.28 258.37 C-132.86 241.05 -149.39 232.36 -170 228 C-178.01 226.9 -186.02 226.68 -194.09 226.47 C-195.23 226.44 -195.23 226.44 -196.4 226.41 C-218.58 225.82 -240.77 225.71 -262.95 225.55 C-275.83 225.46 -288.7 225.36 -301.57 225.25 C-303.48 225.23 -303.48 225.23 -305.43 225.22 C-327.33 225.04 -349.22 224.82 -371.12 224.53 C-373.3 224.5 -375.49 224.47 -377.68 224.45 C-390.92 224.28 -404.16 224.07 -417.4 223.76 C-444.96 223.12 -472.5 222.76 -500.06 222.55 C-512.32 222.46 -524.58 222.36 -536.84 222.25 C-538.06 222.24 -539.27 222.23 -540.52 222.22 C-561.99 222.04 -583.45 221.81 -604.91 221.53 C-607.13 221.5 -609.34 221.47 -611.56 221.45 C-619.62 221.34 -627.67 221.22 -635.73 221.07 C-639.64 221 -643.55 220.97 -647.46 220.94 C-650.87 220.92 -654.28 220.87 -657.68 220.81 C-659.33 220.79 -660.97 220.78 -662.62 220.78 C-664.9 220.77 -667.19 220.73 -669.47 220.69 C-670.78 220.68 -672.09 220.66 -673.44 220.65 C-678.09 219.8 -679.71 218.33 -683 215 C-684.17 211.54 -683.96 208.51 -683 205 C-680.53 201.83 -677.57 199.79 -674 198 C-671.12 197.85 -668.25 197.76 -665.37 197.72 C-664.44 197.7 -663.51 197.68 -662.55 197.66 C-659.32 197.6 -656.1 197.55 -652.88 197.5 C-651.71 197.48 -650.55 197.46 -649.36 197.44 C-632.73 197.15 -616.1 196.95 -599.48 196.79 C-598.57 196.78 -597.67 196.77 -596.73 196.76 C-588.98 196.68 -581.23 196.61 -573.48 196.53 C-535.6 196.17 -497.73 195.6 -459.86 194.97 C-421.84 194.33 -383.82 193.82 -345.79 193.53 C-307.76 193.23 -269.73 192.83 -231.71 192.24 C-226.54 192.16 -221.38 192.09 -216.21 192.02 C-210.16 191.94 -204.11 191.85 -198.06 191.75 C-195.85 191.71 -193.65 191.68 -191.44 191.66 C-174.41 191.45 -156.89 190.8 -140.69 185 C-139.84 184.7 -138.99 184.41 -138.11 184.1 C-115.96 176.11 -95.68 164.59 -78 149 C-77.02 148.14 -76.03 147.28 -75.02 146.39 C-56.31 129.75 -41.75 109.77 -31.9 86.73 C-31.51 85.82 -31.13 84.92 -30.73 83.99 C-25.73 72.17 -21.29 60.14 -16.81 48.12 C-15.09 43.52 -13.37 38.92 -11.64 34.32 C-11.03 32.69 -11.03 32.69 -10.41 31.02 C-7.77 23.97 -5.01 16.98 -2.07 10.05 C-0.89 6.7 -0.39 3.52 0 0 Z " fill="#FAAE40" transform="translate(1052,573)"/>
|
||||
<path d="M0 0 C0.84 1.08 0.84 1.08 1.69 2.19 C9.73 11.97 16.8 13.44 29 15 C28.23 15.65 27.47 16.3 26.68 16.97 C23.33 20.33 22.36 24.04 21.13 28.54 C20.77 29.79 20.77 29.79 20.4 31.07 C19.63 33.77 18.88 36.48 18.12 39.19 C17.59 41.05 17.06 42.92 16.53 44.78 C15 50.18 13.49 55.59 12 61 C11.8 61.73 11.6 62.45 11.39 63.2 C9.69 69.38 8.01 75.56 6.4 81.77 C5.59 84.86 4.73 87.9 3.69 90.92 C-2.9 111.07 -0.18 134.74 8 154 C16.68 170.94 32.09 182.19 50 188 C60.83 191.22 71.67 191.85 82.88 192.5 C84.82 192.62 86.77 192.74 88.71 192.87 C99.98 193.57 111.25 194.18 122.52 194.79 C123.73 194.85 124.95 194.92 126.2 194.98 C132.15 195.3 138.1 195.61 144.05 195.91 C150.37 196.23 156.69 196.6 163 197 C164.43 197.09 164.43 197.09 165.88 197.18 C168.53 197.35 171.16 197.56 173.8 197.78 C174.57 197.83 175.33 197.87 176.12 197.92 C179.95 198.28 181.92 198.93 184.97 201.33 C187.19 204.25 187.79 206.25 187.56 209.93 C186.52 213.75 183.99 216.49 181 219 C177.19 220.27 173.46 220.4 169.48 220.65 C168.61 220.71 167.74 220.76 166.84 220.82 C163.96 221.01 161.07 221.19 158.19 221.38 C156.17 221.51 154.15 221.64 152.14 221.77 C147.91 222.04 143.68 222.31 139.45 222.58 C133.14 222.99 126.83 223.41 120.52 223.83 C117.49 224.03 114.46 224.23 111.42 224.43 C109.51 224.56 107.59 224.69 105.68 224.81 C94.84 225.54 84.01 226.18 73.16 226.65 C37.79 228.22 6.1 240.52 -22 262 C-22.89 262.67 -23.79 263.34 -24.71 264.03 C-44.5 279.48 -60.57 298.7 -72 321 C-72.59 322.13 -72.59 322.13 -73.19 323.28 C-76.43 329.62 -79.2 336.07 -81.81 342.69 C-82.22 343.68 -82.63 344.67 -83.04 345.7 C-85.14 351 -86.74 355.29 -86 361 C-85.34 361.99 -84.68 362.98 -84 364 C-98.85 364 -113.7 364 -129 364 C-128.01 363.34 -127.02 362.68 -126 362 C-120.61 357.69 -119.63 353.41 -118 347 C-117.61 345.61 -117.21 344.23 -116.81 342.84 C-114.17 333.62 -111.86 324.41 -110 315 C-109.72 313.82 -109.72 313.82 -109.43 312.61 C-106.41 294.38 -110.32 273.87 -120.28 258.37 C-132.86 241.05 -149.39 232.36 -170 228 C-178.01 226.9 -186.02 226.68 -194.09 226.47 C-195.23 226.44 -195.23 226.44 -196.4 226.41 C-218.58 225.82 -240.77 225.71 -262.95 225.55 C-275.83 225.46 -288.7 225.36 -301.57 225.25 C-303.48 225.23 -303.48 225.23 -305.43 225.22 C-327.33 225.04 -349.22 224.82 -371.12 224.53 C-373.3 224.5 -375.49 224.47 -377.68 224.45 C-390.92 224.28 -404.16 224.07 -417.4 223.76 C-444.96 223.12 -472.5 222.76 -500.06 222.55 C-512.32 222.46 -524.58 222.36 -536.84 222.25 C-538.06 222.24 -539.27 222.23 -540.52 222.22 C-561.99 222.04 -583.45 221.81 -604.91 221.53 C-607.13 221.5 -609.34 221.47 -611.56 221.45 C-619.62 221.34 -627.67 221.22 -635.73 221.07 C-639.64 221 -643.55 220.97 -647.46 220.94 C-650.87 220.92 -654.28 220.87 -657.68 220.81 C-659.33 220.79 -660.97 220.78 -662.62 220.78 C-664.9 220.77 -667.19 220.73 -669.47 220.69 C-670.78 220.68 -672.09 220.66 -673.44 220.65 C-678.09 219.8 -679.71 218.33 -683 215 C-684.17 211.54 -683.96 208.51 -683 205 C-680.53 201.83 -677.57 199.79 -674 198 C-671.12 197.85 -668.25 197.76 -665.37 197.72 C-664.44 197.7 -663.51 197.68 -662.55 197.66 C-659.32 197.6 -656.1 197.55 -652.88 197.5 C-651.71 197.48 -650.55 197.46 -649.36 197.44 C-632.73 197.15 -616.1 196.95 -599.48 196.79 C-598.57 196.78 -597.67 196.77 -596.73 196.76 C-588.98 196.68 -581.23 196.61 -573.48 196.53 C-535.6 196.17 -497.73 195.6 -459.86 194.97 C-421.84 194.33 -383.82 193.82 -345.79 193.53 C-307.76 193.23 -269.73 192.83 -231.71 192.24 C-226.54 192.16 -221.38 192.09 -216.21 192.02 C-210.16 191.94 -204.11 191.85 -198.06 191.75 C-195.85 191.71 -193.65 191.68 -191.44 191.66 C-174.41 191.45 -156.89 190.8 -140.69 185 C-139.84 184.7 -138.99 184.41 -138.11 184.1 C-115.96 176.11 -95.68 164.59 -78 149 C-77.02 148.14 -76.03 147.28 -75.02 146.39 C-56.31 129.75 -41.75 109.77 -31.9 86.73 C-31.51 85.82 -31.13 84.92 -30.73 83.99 C-25.73 72.17 -21.29 60.14 -16.81 48.12 C-15.09 43.52 -13.37 38.92 -11.64 34.32 C-11.03 32.69 -11.03 32.69 -10.41 31.02 C-7.77 23.97 -5.01 16.98 -2.07 10.05 C-0.89 6.7 -0.39 3.52 0 0 Z " fill="#FEFEFD" transform="translate(1052,573)"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 12 KiB |
64
charts/cloudflare-tunnel/templates/common.yaml
Normal file
64
charts/cloudflare-tunnel/templates/common.yaml
Normal file
@ -0,0 +1,64 @@
|
||||
{{/* Append the hardcoded settings */}}
|
||||
{{- define "cloudflare-tunnel.harcodedValues" -}}
|
||||
{{- if .Values.metrics.enabled }}
|
||||
service:
|
||||
main:
|
||||
controller: main
|
||||
ports:
|
||||
metrics:
|
||||
port: {{ .Values.metrics.port }}
|
||||
protocol: TCP
|
||||
serviceMonitor:
|
||||
main:
|
||||
enabled: true
|
||||
serviceName: {{ include "bjw-s.common.lib.chart.names.fullname" $ }}
|
||||
endpoints:
|
||||
- port: metrics
|
||||
path: /metrics
|
||||
{{- end }}
|
||||
|
||||
controllers:
|
||||
main:
|
||||
containers:
|
||||
app:
|
||||
{{- if .Values.metrics.enabled }}
|
||||
ports:
|
||||
- name: metrics
|
||||
containerPort: {{ .Values.metrics.port }}
|
||||
{{- end }}
|
||||
env:
|
||||
TUNNEL_TOKEN: {{ if not .Values.tunnel.existingSecret.enabled }}{{ .Values.tunnel.token }}{{ end }}
|
||||
{{- if .Values.tunnel.existingSecret.enabled }}
|
||||
secretKeyRef:
|
||||
name: {{ .Values.tunnel.existingSecret.name }}
|
||||
key: {{ .Values.tunnel.existingSecret.key }}
|
||||
{{- end }}
|
||||
args:
|
||||
{{- if ne .Values.tunnel.token "your-token-here" }}
|
||||
- tunnel
|
||||
- --no-autoupdate
|
||||
{{- if .Values.logLevel }}
|
||||
- --loglevel
|
||||
- {{ .Values.logLevel }}
|
||||
{{- end }}
|
||||
{{- if .Values.metrics.enabled }}
|
||||
- --metrics
|
||||
- "0.0.0.0:{{ .Values.metrics.port }}"
|
||||
{{- end }}
|
||||
- run
|
||||
- --token
|
||||
- $(TUNNEL_TOKEN)
|
||||
{{- else }}
|
||||
- --url
|
||||
- localhost:8080
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
|
||||
{{- $tmplVars := deepCopy . -}}
|
||||
{{ include "bjw-s.common.loader.init" $tmplVars }}
|
||||
{{- $defaultValues := include "cloudflare-tunnel.harcodedValues" $tmplVars | fromYaml -}}
|
||||
{{- $_ := mustMerge .Values $defaultValues -}}
|
||||
|
||||
{{/* Render the templates */}}
|
||||
{{ include "bjw-s.common.loader.init" . }}
|
||||
{{ include "bjw-s.common.loader.generate" . }}
|
||||
78
charts/cloudflare-tunnel/values.yaml
Normal file
78
charts/cloudflare-tunnel/values.yaml
Normal file
@ -0,0 +1,78 @@
|
||||
---
|
||||
#
|
||||
# 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
|
||||
#
|
||||
|
||||
controllers:
|
||||
main:
|
||||
# -- Controller type
|
||||
type: deployment
|
||||
# -- Number of desired pods
|
||||
replicas: 1
|
||||
containers:
|
||||
app:
|
||||
image:
|
||||
# -- Image repository
|
||||
repository: cloudflare/cloudflared
|
||||
# -- Image pull policy
|
||||
pullPolicy: IfNotPresent
|
||||
# -- Image tag
|
||||
tag: 2025.2.1
|
||||
|
||||
# -- Environment variables
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
env: {}
|
||||
# TZ: UTC
|
||||
|
||||
securityContext:
|
||||
# -- Mount the container's root filesystem as read-only
|
||||
readOnlyRootFilesystem: true
|
||||
# -- Disable privilege escalations
|
||||
allowPrivilegeEscalation: false
|
||||
# -- Drop all capabilities
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
|
||||
pod:
|
||||
securityContext:
|
||||
# -- Run container as a non-root user
|
||||
runAsNonRoot: true
|
||||
# -- Run as `nobody` user
|
||||
runAsUser: 65534
|
||||
# -- Run as `nobody` group
|
||||
runAsGroup: 65534
|
||||
# -- Volume binds will be granted to `nobody` group
|
||||
fsGroup: 65534
|
||||
|
||||
# -- Set the resource requests / limits for the container.
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
tunnel:
|
||||
# -- Set the Cloudflare Tunnel token here.
|
||||
# Cannot coexist with `tunnel.existingSecret.enabled` set to `true`.
|
||||
token: "your-token-here"
|
||||
# -- You can set the token as an existing secret here.
|
||||
# Cannot coexist with `tunnel.token`
|
||||
existingSecret:
|
||||
enabled: false
|
||||
name: ""
|
||||
key: ""
|
||||
|
||||
# -- Set the container log level.
|
||||
# Accepted values: `debug`, `info`, `warn`, `error`, `fatal`
|
||||
logLevel: info
|
||||
|
||||
# -- Enable Metrics Monitor under this key.
|
||||
metrics:
|
||||
enabled: false
|
||||
port: ""
|
||||
6
charts/it-tools/Chart.lock
Normal file
6
charts/it-tools/Chart.lock
Normal file
@ -0,0 +1,6 @@
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://bjw-s.github.io/helm-charts
|
||||
version: 3.3.2
|
||||
digest: sha256:5a0f9f06aa383b7cc3070899b879401bcd4ae48b021d0a2b7f9ba39827019e24
|
||||
generated: "2024-08-15T17:47:53.312594+02:00"
|
||||
@ -2,22 +2,26 @@ apiVersion: v2
|
||||
name: it-tools
|
||||
description: Collection of handy online tools for developers, with great UX.
|
||||
home: https://github.com/plcnk/charts/tree/master/charts/it-tools
|
||||
icon: https://raw.githubusercontent.com/plcnk/charts/main/charts/it-tools/icon.svg
|
||||
icon: https://raw.githubusercontent.com/plcnk/charts/master/charts/it-tools/icon.svg
|
||||
type: application
|
||||
version: 1.0.1
|
||||
version: 2.1.2
|
||||
# renovate datasource=docker depName=ghcr.io/corentinth/it-tools
|
||||
appVersion: "2024.5.13-a0bc346"
|
||||
appVersion: "2024.10.22-7ca5933"
|
||||
kubeVersion: ">=1.22.0-0"
|
||||
keywords:
|
||||
- it-tools
|
||||
- it
|
||||
- tools
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://bjw-s.github.io/helm-charts
|
||||
version: 3.3.2
|
||||
sources:
|
||||
- https://github.com/CorentinTh/it-tools
|
||||
annotations:
|
||||
artifacthub.io/changes: |
|
||||
- kind: changed
|
||||
description: Changed chart metadata
|
||||
artifacthub.io/changes: |-
|
||||
- kind: added
|
||||
description: Update ghcr.io/corentinth/it-tools docker tag to 2024.10.22-7ca5933
|
||||
artifacthub.io/links: |-
|
||||
- name: App Source
|
||||
url: https://github.com/CorentinTh/it-tools
|
||||
|
||||
@ -1,109 +1,106 @@
|
||||
# it-tools
|
||||
# # it-tools
|
||||
|
||||
Helm chart for deploying [it-tools](https://it-tools.tech/).
|
||||
<img src="https://raw.githubusercontent.com/plcnk/charts/master/charts/it-tools/icon.svg" align="right" width="92" alt="it-tools logo">
|
||||
|
||||
it-tools is a collection of handy online tools for developers, with great UX.
|
||||

|
||||

|
||||

|
||||
|
||||
> [!NOTE]
|
||||
> This chart is not maintained by the original author of it-tools and any problems with this chart should be submitted [here](https://github.com/plcnk/charts/issues/new).
|
||||
Collection of handy online tools for developers, with great UX.
|
||||
|
||||
## Source code
|
||||
**Homepage:** <https://github.com/plcnk/charts/tree/master/charts/it-tools>
|
||||
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised
|
||||
[here](https://github.com/plcnk/charts/issues/new?assignees=plcnk&labels=bug&template=bug_report.yaml&name=it-tools&version=2.1.2)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/CorentinTh/it-tools>
|
||||
|
||||
## Get repo
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.22.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| <https://bjw-s.github.io/helm-charts> | common | 3.3.2 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `it-tools`
|
||||
|
||||
### OCI (Recommended)
|
||||
|
||||
```console
|
||||
helm install it-tools oci://ghcr.io/plcnk/charts/it-tools
|
||||
```
|
||||
|
||||
### Traditional
|
||||
|
||||
```console
|
||||
helm repo add plcnk https://charts.plcnk.net
|
||||
helm repo update
|
||||
helm install it-tools plcnk/it-tools
|
||||
```
|
||||
|
||||
## Install chart
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `it-tools` deployment
|
||||
|
||||
```console
|
||||
helm install [RELEASE_NAME] plcnk/it-tools
|
||||
helm uninstall it-tools
|
||||
```
|
||||
|
||||
## Uninstall chart
|
||||
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 uninstall [RELEASE_NAME]
|
||||
helm install it-tools \
|
||||
--set env.TZ="America/New York" \
|
||||
plcnk/it-tools
|
||||
```
|
||||
|
||||
## Parameters
|
||||
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||
|
||||
### Global parameters
|
||||
```console
|
||||
helm install it-tools plcnk/it-tools -f values.yaml
|
||||
```
|
||||
|
||||
| Name | Description | Value |
|
||||
| ------------------ | ---------------------------------------------- | ----- |
|
||||
| `replicaCount` | Number of replicas for the it-tools Deployment | `1` |
|
||||
| `imagePullSecrets` | Docker registry pull secrets | `[]` |
|
||||
| `nameOverride` | Name override | `""` |
|
||||
| `fullnameOverride` | Full name override | `""` |
|
||||
| `podAnnotations` | Additional annotations for the Pod resource | `{}` |
|
||||
| `podLabels` | Additional labels for the Pod resource | `{}` |
|
||||
| `nodeSelector` | Node labels for pod assignment | `{}` |
|
||||
| `tolerations` | Tolerations for pod assignment | `[]` |
|
||||
| `affinity` | Affinity for pod assignment | `{}` |
|
||||
## Custom configuration
|
||||
|
||||
### Image parameters
|
||||
N/A
|
||||
|
||||
| Name | Description | Value |
|
||||
| ------------------ | ------------------------------------------------------------- | ----------------------------- |
|
||||
| `image.repository` | Docker image repository | `ghcr.io/corentinth/it-tools` |
|
||||
| `image.pullPolicy` | Docker image pull policy | `IfNotPresent` |
|
||||
| `image.tag` | Overrides the image tag whose default is the chart appVersion | `""` |
|
||||
## Values
|
||||
|
||||
### Service account parameters
|
||||
**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)
|
||||
|
||||
| Name | Description | Value |
|
||||
| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ------- |
|
||||
| `serviceAccount.create` | Specifies whether a service account should be created | `false` |
|
||||
| `serviceAccount.automount` | Automatically mount a ServiceAccount's API credentials? | `true` |
|
||||
| `serviceAccount.annotations` | Additional annotations for the ServiceAccount resource | `{}` |
|
||||
| `serviceAccount.name` | The name of the service account to use. If not set and create is true, a name is generated using the fullname template | `""` |
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| controllers.main.containers.app.env | object | See [values.yaml](./values.yaml) | Environment variables |
|
||||
| controllers.main.containers.app.image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
|
||||
| controllers.main.containers.app.image.repository | string | `"ghcr.io/corentinth/it-tools"` | Image repository |
|
||||
| controllers.main.containers.app.image.tag | string | `"2024.10.22-7ca5933"` | Image tag |
|
||||
| controllers.main.containers.app.securityContext.allowPrivilegeEscalation | bool | `false` | Disable privilege escalations |
|
||||
| controllers.main.containers.app.securityContext.capabilities | object | `{"drop":["ALL"]}` | Drop all capabilities |
|
||||
| controllers.main.containers.app.securityContext.readOnlyRootFilesystem | bool | `true` | Mount the container's root filesystem as read-only |
|
||||
| controllers.main.pod.securityContext.fsGroup | int | `65534` | Volume binds will be granted to `nobody` group |
|
||||
| controllers.main.pod.securityContext.runAsGroup | int | `65534` | Run as `nobody` group |
|
||||
| controllers.main.pod.securityContext.runAsNonRoot | bool | `true` | Run container as a non-root user |
|
||||
| controllers.main.pod.securityContext.runAsUser | int | `65534` | Run as `nobody` user |
|
||||
| controllers.main.replicas | int | `1` | Number of desired pods |
|
||||
| controllers.main.resources | object | `{}` | Set the resource requests / limits for the container. |
|
||||
| controllers.main.type | string | `"deployment"` | Controller type |
|
||||
| ingress.main | object | See [values.yaml](./values.yaml) | Enable and configure ingress settings for the chart under this key. |
|
||||
| persistence | object | See [values.yaml](./values.yaml) | Configure persistence for the chart under this key. |
|
||||
| service | object | See [values.yaml](./values.yaml) | Configure the services for the chart here. |
|
||||
|
||||
### Security context parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| ------------------------------------------ | ----------------------------------------- | ---------------- |
|
||||
| `securityContext.capabilities.drop` | Capabilities to drop | `["ALL"]` |
|
||||
| `securityContext.readOnlyRootFilesystem` | If root filesystem should be read-only | `true` |
|
||||
| `securityContext.runAsNonRoot` | If pod should be run as non-root | `true` |
|
||||
| `securityContext.runAsUser` | User to run pod as | `10099` |
|
||||
| `securityContext.runAsGroup` | Group to run pod as | `10099` |
|
||||
| `securityContext.allowPrivilegeEscalation` | If privilege escalation should be allowed | `false` |
|
||||
| `securityContext.seccompProfile.type` | seccomp profile type | `RuntimeDefault` |
|
||||
|
||||
### Service parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| -------------- | ---------------------- | ----------- |
|
||||
| `service.type` | Service type to create | `ClusterIP` |
|
||||
| `service.port` | Service port to use | `80` |
|
||||
|
||||
### Ingress parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| --------------------- | ------------------------------------------------------------------------ | ------- |
|
||||
| `ingress.enabled` | Enable ingress record generation | `false` |
|
||||
| `ingress.className` | IngressClass that will be be used to implement the Ingress | `""` |
|
||||
| `ingress.annotations` | Additional annotations for the Ingress resource | `{}` |
|
||||
| `ingress.hosts` | An array with hostname(s) to be covered with the ingress record | `[]` |
|
||||
| `ingress.tls` | TLS configuration for hostname(s) to be covered with this ingress record | `[]` |
|
||||
|
||||
### Resources parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| ----------- | -------------------- | ----- |
|
||||
| `resources` | Kubernetes resources | `{}` |
|
||||
|
||||
### Autoscaling parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| ----------------------------------------------- | ------------------------------------ | ------- |
|
||||
| `autoscaling.enabled` | Enable Horizontal POD autoscaling | `false` |
|
||||
| `autoscaling.minReplicas` | Minimum number of replicas | `1` |
|
||||
| `autoscaling.maxReplicas` | Maximum number of replicas | `100` |
|
||||
| `autoscaling.targetCPUUtilizationPercentage` | Target CPU utilization percentage | `80` |
|
||||
| `autoscaling.targetMemoryUtilizationPercentage` | Target Memory utilization percentage | `80` |
|
||||
---
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
||||
|
||||
13
charts/it-tools/README_CONFIG.md.gotmpl
Normal file
13
charts/it-tools/README_CONFIG.md.gotmpl
Normal file
@ -0,0 +1,13 @@
|
||||
{{- define "custom.chart.name" -}}
|
||||
# {{ .Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration.header" -}}
|
||||
## Custom configuration
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration" -}}
|
||||
{{ template "custom.custom.configuration.header" . }}
|
||||
|
||||
N/A
|
||||
{{- end -}}
|
||||
@ -1,62 +0,0 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "it-tools.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "it-tools.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "it-tools.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "it-tools.labels" -}}
|
||||
helm.sh/chart: {{ include "it-tools.chart" . }}
|
||||
{{ include "it-tools.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "it-tools.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "it-tools.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "it-tools.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "it-tools.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
93
charts/it-tools/templates/common.yaml
Normal file
93
charts/it-tools/templates/common.yaml
Normal file
@ -0,0 +1,93 @@
|
||||
{{/* Append the hardcoded settings */}}
|
||||
{{- define "it-tools.harcodedValues" -}}
|
||||
configMaps:
|
||||
nginx-conf:
|
||||
enabled: true
|
||||
data:
|
||||
nginx.conf: |
|
||||
worker_processes auto;
|
||||
|
||||
error_log /tmp/nginx/error.log warn;
|
||||
pid /tmp/nginx/nginx.pid;
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
}
|
||||
|
||||
http {
|
||||
include /etc/nginx/mime.types;
|
||||
|
||||
server {
|
||||
listen 8080;
|
||||
server_name _;
|
||||
root /usr/share/nginx/html;
|
||||
index index.html;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
persistence:
|
||||
cache:
|
||||
enabled: true
|
||||
type: emptyDir
|
||||
advancedMounts:
|
||||
main:
|
||||
app:
|
||||
- path: /var/cache/nginx
|
||||
tmp:
|
||||
enabled: true
|
||||
type: emptyDir
|
||||
advancedMounts:
|
||||
main:
|
||||
app:
|
||||
- path: /tmp/nginx
|
||||
nginx-conf:
|
||||
enabled: true
|
||||
type: configMap
|
||||
name: {{ include "bjw-s.common.lib.chart.names.fullname" . }}-nginx-conf
|
||||
advancedMounts:
|
||||
main:
|
||||
app:
|
||||
- path: /etc/nginx/nginx.conf
|
||||
subPath: nginx.conf
|
||||
|
||||
controllers:
|
||||
main:
|
||||
containers:
|
||||
app:
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
name: http
|
||||
protocol: TCP
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
custom: true
|
||||
spec:
|
||||
httpGet:
|
||||
path: /
|
||||
port: http
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 30
|
||||
readiness:
|
||||
enabled: true
|
||||
custom: true
|
||||
spec:
|
||||
httpGet:
|
||||
path: /
|
||||
port: http
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 30
|
||||
{{- end -}}
|
||||
|
||||
{{- $tmplVars := deepCopy . -}}
|
||||
{{ include "bjw-s.common.loader.init" $tmplVars }}
|
||||
{{- $defaultValues := include "it-tools.harcodedValues" $tmplVars | fromYaml -}}
|
||||
{{- $_ := mustMerge .Values $defaultValues -}}
|
||||
|
||||
{{/* Render the templates */}}
|
||||
{{ include "bjw-s.common.loader.init" . }}
|
||||
{{ include "bjw-s.common.loader.generate" . }}
|
||||
@ -1,29 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: nginx-conf
|
||||
data:
|
||||
nginx.conf: |
|
||||
worker_processes auto;
|
||||
|
||||
error_log /tmp/nginx/error.log warn;
|
||||
pid /tmp/nginx/nginx.pid;
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
}
|
||||
|
||||
http {
|
||||
include /etc/nginx/mime.types;
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name _;
|
||||
root /usr/share/nginx/html;
|
||||
index index.html;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,82 +0,0 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "it-tools.fullname" . }}
|
||||
labels:
|
||||
{{- include "it-tools.labels" . | nindent 4 }}
|
||||
spec:
|
||||
{{- if not .Values.autoscaling.enabled }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "it-tools.selectorLabels" . | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
{{- with .Values.podAnnotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "it-tools.labels" . | nindent 8 }}
|
||||
{{- with .Values.podLabels }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "it-tools.serviceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.service.port }}
|
||||
protocol: TCP
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: http
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 30
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: http
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 30
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
volumeMounts:
|
||||
- name: cache
|
||||
mountPath: "/var/cache/nginx"
|
||||
- name: tmp
|
||||
mountPath: "/tmp/nginx"
|
||||
- name: conf
|
||||
mountPath: /etc/nginx/nginx.conf
|
||||
subPath: nginx.conf
|
||||
volumes:
|
||||
- name: cache
|
||||
emptyDir: {}
|
||||
- name: tmp
|
||||
emptyDir: {}
|
||||
- name: conf
|
||||
configMap:
|
||||
name: nginx-conf
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
@ -1,32 +0,0 @@
|
||||
{{- if .Values.autoscaling.enabled }}
|
||||
apiVersion: autoscaling/v2
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ include "it-tools.fullname" . }}
|
||||
labels:
|
||||
{{- include "it-tools.labels" . | nindent 4 }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ include "it-tools.fullname" . }}
|
||||
minReplicas: {{ .Values.autoscaling.minReplicas }}
|
||||
maxReplicas: {{ .Values.autoscaling.maxReplicas }}
|
||||
metrics:
|
||||
{{- if .Values.autoscaling.targetCPUUtilizationPercentage }}
|
||||
- type: Resource
|
||||
resource:
|
||||
name: cpu
|
||||
target:
|
||||
type: Utilization
|
||||
averageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }}
|
||||
{{- end }}
|
||||
{{- if .Values.autoscaling.targetMemoryUtilizationPercentage }}
|
||||
- type: Resource
|
||||
resource:
|
||||
name: memory
|
||||
target:
|
||||
type: Utilization
|
||||
averageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@ -1,61 +0,0 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "it-tools.fullname" . -}}
|
||||
{{- $svcPort := .Values.service.port -}}
|
||||
{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }}
|
||||
{{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }}
|
||||
{{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
|
||||
apiVersion: networking.k8s.io/v1beta1
|
||||
{{- else -}}
|
||||
apiVersion: extensions/v1beta1
|
||||
{{- end }}
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
{{- include "it-tools.labels" . | nindent 4 }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }}
|
||||
ingressClassName: {{ .Values.ingress.className }}
|
||||
{{- end }}
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . | quote }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ .host | quote }}
|
||||
http:
|
||||
paths:
|
||||
{{- range .paths }}
|
||||
- path: {{ .path }}
|
||||
{{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }}
|
||||
pathType: {{ .pathType }}
|
||||
{{- end }}
|
||||
backend:
|
||||
{{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }}
|
||||
service:
|
||||
name: {{ $fullName }}
|
||||
port:
|
||||
number: {{ $svcPort }}
|
||||
{{- else }}
|
||||
serviceName: {{ $fullName }}
|
||||
servicePort: {{ $svcPort }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@ -1,15 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "it-tools.fullname" . }}
|
||||
labels:
|
||||
{{- include "it-tools.labels" . | nindent 4 }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
name: http
|
||||
selector:
|
||||
{{- include "it-tools.selectorLabels" . | nindent 4 }}
|
||||
@ -1,13 +0,0 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "it-tools.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "it-tools.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.automount }}
|
||||
{{- end }}
|
||||
@ -1,15 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: "{{ include "it-tools.fullname" . }}-test-connection"
|
||||
labels:
|
||||
{{- include "it-tools.labels" . | nindent 4 }}
|
||||
annotations:
|
||||
"helm.sh/hook": test
|
||||
spec:
|
||||
containers:
|
||||
- name: wget
|
||||
image: busybox
|
||||
command: ['wget']
|
||||
args: ['{{ include "it-tools.fullname" . }}:{{ .Values.service.port }}']
|
||||
restartPolicy: Never
|
||||
@ -1,128 +1,97 @@
|
||||
# Default values for it-tools.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
---
|
||||
#
|
||||
# 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
|
||||
#
|
||||
|
||||
## @section Global parameters
|
||||
## @param replicaCount Number of replicas for the it-tools Deployment
|
||||
replicaCount: 1
|
||||
controllers:
|
||||
main:
|
||||
# -- Controller type
|
||||
type: deployment
|
||||
# -- Number of desired pods
|
||||
replicas: 1
|
||||
containers:
|
||||
app:
|
||||
image:
|
||||
# -- Image repository
|
||||
repository: ghcr.io/corentinth/it-tools
|
||||
# -- Image pull policy
|
||||
pullPolicy: IfNotPresent
|
||||
# -- Image tag
|
||||
tag: 2024.10.22-7ca5933
|
||||
|
||||
## @param imagePullSecrets Docker registry pull secrets
|
||||
## @param nameOverride Name override
|
||||
## @param fullnameOverride Full name override
|
||||
imagePullSecrets: []
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
# -- Environment variables
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
env: {}
|
||||
# TZ: UTC
|
||||
|
||||
## @param podAnnotations Additional annotations for the Pod resource
|
||||
## @param podLabels Additional labels for the Pod resource
|
||||
podAnnotations: {}
|
||||
podLabels: {}
|
||||
securityContext:
|
||||
# -- Mount the container's root filesystem as read-only
|
||||
readOnlyRootFilesystem: true
|
||||
# -- Disable privilege escalations
|
||||
allowPrivilegeEscalation: false
|
||||
# -- Drop all capabilities
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
|
||||
## @param nodeSelector Node labels for pod assignment
|
||||
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
|
||||
nodeSelector: {}
|
||||
pod:
|
||||
securityContext:
|
||||
# -- Run container as a non-root user
|
||||
runAsNonRoot: true
|
||||
# -- Run as `nobody` user
|
||||
runAsUser: 65534
|
||||
# -- Run as `nobody` group
|
||||
runAsGroup: 65534
|
||||
# -- Volume binds will be granted to `nobody` group
|
||||
fsGroup: 65534
|
||||
|
||||
## @param tolerations Tolerations for pod assignment
|
||||
## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
||||
tolerations: []
|
||||
# -- Set the resource requests / limits for the container.
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
## @param affinity Affinity for pod assignment
|
||||
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
||||
affinity: {}
|
||||
|
||||
## @section Image parameters
|
||||
## @param image.repository Docker image repository
|
||||
## @param image.pullPolicy Docker image pull policy
|
||||
## @param image.tag Overrides the image tag whose default is the chart appVersion
|
||||
image:
|
||||
repository: ghcr.io/corentinth/it-tools
|
||||
pullPolicy: IfNotPresent
|
||||
tag: ""
|
||||
|
||||
## @section Service account parameters
|
||||
## @param serviceAccount.create Specifies whether a service account should be created
|
||||
## @param serviceAccount.automount Automatically mount a ServiceAccount's API credentials?
|
||||
## @param serviceAccount.annotations Additional annotations for the ServiceAccount resource
|
||||
## @param serviceAccount.name The name of the service account to use. If not set and create is true, a name is generated using the fullname template
|
||||
serviceAccount:
|
||||
create: false
|
||||
automount: true
|
||||
annotations: {}
|
||||
name: ""
|
||||
|
||||
## @section Security context parameters
|
||||
## @param securityContext.capabilities.drop Capabilities to drop
|
||||
## @param securityContext.readOnlyRootFilesystem If root filesystem should be read-only
|
||||
## @param securityContext.runAsNonRoot If pod should be run as non-root
|
||||
## @param securityContext.runAsUser User to run pod as
|
||||
## @param securityContext.runAsGroup Group to run pod as
|
||||
## @param securityContext.allowPrivilegeEscalation If privilege escalation should be allowed
|
||||
## @param securityContext.seccompProfile.type seccomp profile type
|
||||
securityContext:
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
runAsUser: 10099
|
||||
runAsGroup: 10099
|
||||
allowPrivilegeEscalation: false
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
|
||||
## @section Service parameters
|
||||
## @param service.type Service type to create
|
||||
## @param service.port Service port to use
|
||||
# -- Configure the services for the chart here.
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 80
|
||||
main:
|
||||
controller: main
|
||||
ports:
|
||||
http:
|
||||
port: 8080
|
||||
|
||||
# -- Configure persistence for the chart under this key.
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
persistence:
|
||||
data:
|
||||
enabled: false
|
||||
retain: true
|
||||
# storageClass: ""
|
||||
# accessMode: ReadWriteOnce
|
||||
# size: 1Gi
|
||||
|
||||
## @section Ingress parameters
|
||||
## Configure the ingress resource that allows you to access the installation
|
||||
## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/
|
||||
##
|
||||
## @param ingress.enabled Enable ingress record generation
|
||||
## @param ingress.className IngressClass that will be be used to implement the Ingress
|
||||
## @param ingress.annotations Additional annotations for the Ingress resource
|
||||
## @param ingress.hosts An array with hostname(s) to be covered with the ingress record
|
||||
## @param ingress.tls TLS configuration for hostname(s) to be covered with this ingress record
|
||||
ingress:
|
||||
enabled: false
|
||||
className: ""
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
hosts: []
|
||||
# - host: it-tools.example.local
|
||||
# paths:
|
||||
# - path: /
|
||||
# pathType: Prefix
|
||||
tls: []
|
||||
# - secretName: it-tools-tls
|
||||
# hosts:
|
||||
# - it-tools.example.local
|
||||
|
||||
## @section Resources parameters
|
||||
## @param resources Kubernetes resources
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
## @section Autoscaling parameters
|
||||
## Autoscaling parameters
|
||||
## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/
|
||||
## @param autoscaling.enabled Enable Horizontal POD autoscaling
|
||||
## @param autoscaling.minReplicas Minimum number of replicas
|
||||
## @param autoscaling.maxReplicas Maximum number of replicas
|
||||
## @param autoscaling.targetCPUUtilizationPercentage Target CPU utilization percentage
|
||||
## @param autoscaling.targetMemoryUtilizationPercentage Target Memory utilization percentage
|
||||
autoscaling:
|
||||
enabled: false
|
||||
minReplicas: 1
|
||||
maxReplicas: 100
|
||||
targetCPUUtilizationPercentage: 80
|
||||
targetMemoryUtilizationPercentage: 80
|
||||
# -- Enable and configure ingress settings for the chart under this key.
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
main:
|
||||
enabled: false
|
||||
# className: ""
|
||||
# annotations: {}
|
||||
# hosts:
|
||||
# - host: &host-main "chart-example.local"
|
||||
# paths:
|
||||
# - path: /
|
||||
# pathType: Prefix
|
||||
# service:
|
||||
# identifier: main
|
||||
# port: http
|
||||
# tls:
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - *host-main
|
||||
|
||||
23
charts/moodist/.helmignore
Normal file
23
charts/moodist/.helmignore
Normal file
@ -0,0 +1,23 @@
|
||||
# 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/
|
||||
6
charts/moodist/Chart.lock
Normal file
6
charts/moodist/Chart.lock
Normal file
@ -0,0 +1,6 @@
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://bjw-s.github.io/helm-charts
|
||||
version: 3.3.2
|
||||
digest: sha256:5a0f9f06aa383b7cc3070899b879401bcd4ae48b021d0a2b7f9ba39827019e24
|
||||
generated: "2024-08-17T11:26:39.224544+02:00"
|
||||
31
charts/moodist/Chart.yaml
Normal file
31
charts/moodist/Chart.yaml
Normal file
@ -0,0 +1,31 @@
|
||||
apiVersion: v2
|
||||
name: moodist
|
||||
description: Ambient sounds for focus and calm.
|
||||
home: https://github.com/plcnk/charts/tree/master/charts/moodist
|
||||
icon: https://raw.githubusercontent.com/plcnk/charts/master/charts/moodist/icon.svg
|
||||
type: application
|
||||
version: 0.1.1
|
||||
# renovate datasource=docker depName=ghcr.io/remvze/moodist
|
||||
appVersion: "v1.5.1"
|
||||
kubeVersion: ">=1.22.0-0"
|
||||
keywords:
|
||||
- ambient
|
||||
- ambient-sounds
|
||||
- calm
|
||||
- white-noise
|
||||
- focus
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://bjw-s.github.io/helm-charts
|
||||
version: 3.3.2
|
||||
sources:
|
||||
- https://github.com/remvze/moodist
|
||||
annotations:
|
||||
artifacthub.io/changes: |-
|
||||
- kind: changed
|
||||
description: Update ghcr.io/remvze/moodist docker tag to v1.5.1
|
||||
artifacthub.io/links: |-
|
||||
- name: App Source
|
||||
url: https://github.com/remvze/moodist
|
||||
- name: Chart Source
|
||||
url: https://github.com/plcnk/charts/tree/master/charts/moodist
|
||||
106
charts/moodist/README.md
Normal file
106
charts/moodist/README.md
Normal file
@ -0,0 +1,106 @@
|
||||
# # moodist
|
||||
|
||||
<img src="https://raw.githubusercontent.com/plcnk/charts/master/charts/moodist/icon.svg" align="right" width="92" alt="moodist logo">
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
Ambient sounds for focus and calm.
|
||||
|
||||
**Homepage:** <https://github.com/plcnk/charts/tree/master/charts/moodist>
|
||||
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised
|
||||
[here](https://github.com/plcnk/charts/issues/new?assignees=plcnk&labels=bug&template=bug_report.yaml&name=moodist&version=0.1.1)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/remvze/moodist>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.22.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| <https://bjw-s.github.io/helm-charts> | common | 3.3.2 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `moodist`
|
||||
|
||||
### OCI (Recommended)
|
||||
|
||||
```console
|
||||
helm install moodist oci://ghcr.io/plcnk/charts/moodist
|
||||
```
|
||||
|
||||
### Traditional
|
||||
|
||||
```console
|
||||
helm repo add plcnk https://charts.plcnk.net
|
||||
helm repo update
|
||||
helm install moodist plcnk/moodist
|
||||
```
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `moodist` deployment
|
||||
|
||||
```console
|
||||
helm uninstall moodist
|
||||
```
|
||||
|
||||
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 moodist \
|
||||
--set env.TZ="America/New York" \
|
||||
plcnk/moodist
|
||||
```
|
||||
|
||||
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||
|
||||
```console
|
||||
helm install moodist plcnk/moodist -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 |
|
||||
|-----|------|---------|-------------|
|
||||
| controllers.main.containers.app.env | object | See [values.yaml](./values.yaml) | Environment variables |
|
||||
| controllers.main.containers.app.image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
|
||||
| controllers.main.containers.app.image.repository | string | `"ghcr.io/remvze/moodist"` | Image repository |
|
||||
| controllers.main.containers.app.image.tag | string | `"v1.5.1"` | Image tag |
|
||||
| controllers.main.containers.app.securityContext.allowPrivilegeEscalation | bool | `false` | Disable privilege escalations |
|
||||
| controllers.main.containers.app.securityContext.capabilities | object | `{"drop":["ALL"]}` | Drop all capabilities |
|
||||
| controllers.main.containers.app.securityContext.readOnlyRootFilesystem | bool | `true` | Mount the container's root filesystem as read-only |
|
||||
| controllers.main.pod.securityContext.fsGroup | int | `65534` | Volume binds will be granted to `nobody` group |
|
||||
| controllers.main.pod.securityContext.runAsGroup | int | `65534` | Run as `nobody` group |
|
||||
| controllers.main.pod.securityContext.runAsNonRoot | bool | `true` | Run container as a non-root user |
|
||||
| controllers.main.pod.securityContext.runAsUser | int | `65534` | Run as `nobody` user |
|
||||
| controllers.main.replicas | int | `1` | Number of desired pods |
|
||||
| controllers.main.resources | object | `{}` | Set the resource requests / limits for the container. |
|
||||
| controllers.main.type | string | `"deployment"` | Controller type |
|
||||
| ingress.main | object | See [values.yaml](./values.yaml) | Enable and configure ingress settings for the chart under this key. |
|
||||
| persistence | object | See [values.yaml](./values.yaml) | Configure persistence for the chart under this key. |
|
||||
| service | object | See [values.yaml](./values.yaml) | Configure the services for the chart here. |
|
||||
|
||||
---
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
||||
13
charts/moodist/README_CONFIG.md.gotmpl
Normal file
13
charts/moodist/README_CONFIG.md.gotmpl
Normal file
@ -0,0 +1,13 @@
|
||||
{{- define "custom.chart.name" -}}
|
||||
# {{ .Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration.header" -}}
|
||||
## Custom configuration
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration" -}}
|
||||
{{ template "custom.custom.configuration.header" . }}
|
||||
|
||||
N/A
|
||||
{{- end -}}
|
||||
11
charts/moodist/icon.svg
Normal file
11
charts/moodist/icon.svg
Normal file
@ -0,0 +1,11 @@
|
||||
<svg width="200" height="200" viewBox="0 0 200 200" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M100 150C127.614 150 150 127.614 150 100C150 72.3858 127.614 50 100 50C72.3858 50 50 72.3858 50 100C50 127.614 72.3858 150 100 150ZM100 125C113.807 125 125 113.807 125 100C125 86.1929 113.807 75 100 75C86.1929 75 75 86.1929 75 100C75 113.807 86.1929 125 100 125Z" fill="#FAFAFA"/>
|
||||
<path d="M50 50C22.3858 50 2.00172e-06 72.3857 7.94663e-07 100C-4.12393e-07 127.614 22.3858 150 50 150V125C36.1929 125 25 113.807 25 100C25 86.1929 36.1929 75 50 75V50Z" fill="#D4D4D8"/>
|
||||
<path d="M150 50C150 22.3858 127.614 2.41411e-06 100 0C72.3858 -2.41411e-06 50 22.3858 50 50L75 50C75 36.1929 86.1929 25 100 25C113.807 25 125 36.1929 125 50H150Z" fill="#D4D4D8"/>
|
||||
<path d="M150 150C177.614 150 200 127.614 200 100C200 72.3858 177.614 50 150 50V75C163.807 75 175 86.1929 175 100C175 113.807 163.807 125 150 125V150Z" fill="#D4D4D8"/>
|
||||
<path d="M50 150C50 177.614 72.3857 200 100 200C127.614 200 150 177.614 150 150H125C125 163.807 113.807 175 100 175C86.1929 175 75 163.807 75 150H50Z" fill="#D4D4D8"/>
|
||||
<path d="M25 50C25 36.1929 36.1929 25 50 25V1.39091e-06C22.3858 1.83851e-07 2.00172e-06 22.3857 7.94663e-07 50H25Z" fill="#A1A1AA"/>
|
||||
<path d="M150 25C163.807 25 175 36.1929 175 50H200C200 22.3858 177.614 3.24858e-06 150 8.34465e-07L150 25Z" fill="#A1A1AA"/>
|
||||
<path d="M175 150C175 163.807 163.807 175 150 175V200C177.614 200 200 177.614 200 150H175Z" fill="#A1A1AA"/>
|
||||
<path d="M50 175C36.1929 175 25 163.807 25 150H0C0 177.614 22.3857 200 50 200V175Z" fill="#A1A1AA"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.6 KiB |
104
charts/moodist/templates/common.yaml
Normal file
104
charts/moodist/templates/common.yaml
Normal file
@ -0,0 +1,104 @@
|
||||
{{/* Append the hardcoded settings */}}
|
||||
{{- define "moodist.harcodedValues" -}}
|
||||
configMaps:
|
||||
nginx-conf:
|
||||
enabled: true
|
||||
data:
|
||||
nginx.conf: |
|
||||
worker_processes 1;
|
||||
|
||||
error_log /tmp/nginx/error.log warn;
|
||||
pid /tmp/nginx/nginx.pid;
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
}
|
||||
|
||||
http {
|
||||
server {
|
||||
listen 8080;
|
||||
server_name _;
|
||||
|
||||
root /usr/share/nginx/html;
|
||||
index index.html index.htm;
|
||||
include /etc/nginx/mime.types;
|
||||
|
||||
gzip on;
|
||||
gzip_min_length 1000;
|
||||
gzip_proxied expired no-cache no-store private auth;
|
||||
gzip_types text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript;
|
||||
|
||||
error_page 404 /404.html;
|
||||
location = /404.html {
|
||||
root /usr/share/nginx/html;
|
||||
internal;
|
||||
}
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/index.html =404;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
persistence:
|
||||
cache:
|
||||
enabled: true
|
||||
type: emptyDir
|
||||
advancedMounts:
|
||||
main:
|
||||
app:
|
||||
- path: /var/cache/nginx
|
||||
tmp:
|
||||
enabled: true
|
||||
type: emptyDir
|
||||
advancedMounts:
|
||||
main:
|
||||
app:
|
||||
- path: /tmp/nginx
|
||||
nginx-conf:
|
||||
enabled: true
|
||||
type: configMap
|
||||
name: {{ include "bjw-s.common.lib.chart.names.fullname" . }}-nginx-conf
|
||||
advancedMounts:
|
||||
main:
|
||||
app:
|
||||
- path: /etc/nginx/nginx.conf
|
||||
subPath: nginx.conf
|
||||
|
||||
controllers:
|
||||
main:
|
||||
containers:
|
||||
app:
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
name: http
|
||||
protocol: TCP
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
custom: true
|
||||
spec:
|
||||
httpGet:
|
||||
path: /
|
||||
port: http
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 30
|
||||
readiness:
|
||||
enabled: true
|
||||
custom: true
|
||||
spec:
|
||||
httpGet:
|
||||
path: /
|
||||
port: http
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 30
|
||||
{{- end -}}
|
||||
|
||||
{{- $tmplVars := deepCopy . -}}
|
||||
{{ include "bjw-s.common.loader.init" $tmplVars }}
|
||||
{{- $defaultValues := include "moodist.harcodedValues" $tmplVars | fromYaml -}}
|
||||
{{- $_ := mustMerge .Values $defaultValues -}}
|
||||
|
||||
{{/* Render the templates */}}
|
||||
{{ include "bjw-s.common.loader.init" . }}
|
||||
{{ include "bjw-s.common.loader.generate" . }}
|
||||
97
charts/moodist/values.yaml
Normal file
97
charts/moodist/values.yaml
Normal file
@ -0,0 +1,97 @@
|
||||
---
|
||||
#
|
||||
# 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
|
||||
#
|
||||
|
||||
controllers:
|
||||
main:
|
||||
# -- Controller type
|
||||
type: deployment
|
||||
# -- Number of desired pods
|
||||
replicas: 1
|
||||
containers:
|
||||
app:
|
||||
image:
|
||||
# -- Image repository
|
||||
repository: ghcr.io/remvze/moodist
|
||||
# -- Image pull policy
|
||||
pullPolicy: IfNotPresent
|
||||
# -- Image tag
|
||||
tag: v1.5.1
|
||||
|
||||
# -- Environment variables
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
env: {}
|
||||
# TZ: UTC
|
||||
|
||||
securityContext:
|
||||
# -- Mount the container's root filesystem as read-only
|
||||
readOnlyRootFilesystem: true
|
||||
# -- Disable privilege escalations
|
||||
allowPrivilegeEscalation: false
|
||||
# -- Drop all capabilities
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
|
||||
pod:
|
||||
securityContext:
|
||||
# -- Run container as a non-root user
|
||||
runAsNonRoot: true
|
||||
# -- Run as `nobody` user
|
||||
runAsUser: 65534
|
||||
# -- Run as `nobody` group
|
||||
runAsGroup: 65534
|
||||
# -- Volume binds will be granted to `nobody` group
|
||||
fsGroup: 65534
|
||||
|
||||
# -- Set the resource requests / limits for the container.
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
# -- Configure the services for the chart here.
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
service:
|
||||
main:
|
||||
controller: main
|
||||
ports:
|
||||
http:
|
||||
port: 8080
|
||||
|
||||
# -- Configure persistence for the chart under this key.
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
persistence:
|
||||
data:
|
||||
enabled: false
|
||||
retain: true
|
||||
# storageClass: ""
|
||||
# accessMode: ReadWriteOnce
|
||||
# size: 1Gi
|
||||
|
||||
ingress:
|
||||
# -- Enable and configure ingress settings for the chart under this key.
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
main:
|
||||
enabled: false
|
||||
# className: ""
|
||||
# annotations: {}
|
||||
# hosts:
|
||||
# - host: &host-main "chart-example.local"
|
||||
# paths:
|
||||
# - path: /
|
||||
# pathType: Prefix
|
||||
# service:
|
||||
# identifier: main
|
||||
# port: http
|
||||
# tls:
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - *host-main
|
||||
23
charts/wikijs/.helmignore
Normal file
23
charts/wikijs/.helmignore
Normal file
@ -0,0 +1,23 @@
|
||||
# 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/
|
||||
9
charts/wikijs/Chart.lock
Normal file
9
charts/wikijs/Chart.lock
Normal file
@ -0,0 +1,9 @@
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://bjw-s.github.io/helm-charts
|
||||
version: 3.3.2
|
||||
- name: postgresql
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 16.5.4
|
||||
digest: sha256:b06f96b3c6ab2d8cdea8b68ceed56a662139a20c77d361b4d29bf1fb4f05d090
|
||||
generated: "2025-03-20T16:38:29.601639368Z"
|
||||
33
charts/wikijs/Chart.yaml
Normal file
33
charts/wikijs/Chart.yaml
Normal file
@ -0,0 +1,33 @@
|
||||
apiVersion: v2
|
||||
name: wikijs
|
||||
description: A modern, lightweight and powerful wiki app built on NodeJS.
|
||||
home: https://github.com/plcnk/charts/tree/master/charts/wikijs
|
||||
icon: https://raw.githubusercontent.com/plcnk/charts/master/charts/wikijs/icon.svg
|
||||
type: application
|
||||
version: 0.7.2
|
||||
# renovate datasource=docker depName=ghcr.io/requarks/wiki
|
||||
appVersion: "2.5.306"
|
||||
kubeVersion: ">=1.22.0-0"
|
||||
keywords:
|
||||
- wikijs
|
||||
- wiki
|
||||
- documentation
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://bjw-s.github.io/helm-charts
|
||||
version: 3.3.2
|
||||
- name: postgresql
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 16.5.4
|
||||
condition: postgresql.enabled
|
||||
sources:
|
||||
- https://github.com/Requarks/wiki
|
||||
annotations:
|
||||
artifacthub.io/changes: |-
|
||||
- kind: changed
|
||||
description: Update postgresql helm release to v16.5.4
|
||||
artifacthub.io/links: |-
|
||||
- name: App Source
|
||||
url: https://github.com/Requarks/wiki
|
||||
- name: Chart Source
|
||||
url: https://github.com/plcnk/charts/tree/master/charts/wikijs
|
||||
119
charts/wikijs/README.md
Normal file
119
charts/wikijs/README.md
Normal file
@ -0,0 +1,119 @@
|
||||
# # wikijs
|
||||
|
||||
<img src="https://raw.githubusercontent.com/plcnk/charts/master/charts/wikijs/icon.svg" align="right" width="92" alt="wikijs logo">
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
A modern, lightweight and powerful wiki app built on NodeJS.
|
||||
|
||||
**Homepage:** <https://github.com/plcnk/charts/tree/master/charts/wikijs>
|
||||
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised
|
||||
[here](https://github.com/plcnk/charts/issues/new?assignees=plcnk&labels=bug&template=bug_report.yaml&name=wikijs&version=0.7.2)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/Requarks/wiki>
|
||||
|
||||
## Requirements
|
||||
|
||||
Kubernetes: `>=1.22.0-0`
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| <https://bjw-s.github.io/helm-charts> | common | 3.3.2 |
|
||||
| <https://charts.bitnami.com/bitnami> | postgresql | 16.5.4 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `wikijs`
|
||||
|
||||
### OCI (Recommended)
|
||||
|
||||
```console
|
||||
helm install wikijs oci://ghcr.io/plcnk/charts/wikijs
|
||||
```
|
||||
|
||||
### Traditional
|
||||
|
||||
```console
|
||||
helm repo add plcnk https://charts.plcnk.net
|
||||
helm repo update
|
||||
helm install wikijs plcnk/wikijs
|
||||
```
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `wikijs` deployment
|
||||
|
||||
```console
|
||||
helm uninstall wikijs
|
||||
```
|
||||
|
||||
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 wikijs \
|
||||
--set env.TZ="America/New York" \
|
||||
plcnk/wikijs
|
||||
```
|
||||
|
||||
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||
|
||||
```console
|
||||
helm install wikijs plcnk/wikijs -f values.yaml
|
||||
```
|
||||
|
||||
## Custom configuration
|
||||
|
||||
This chart includes a subchart for PostgreSQL, made by [Bitnami](https://github.com/bitnami/charts/tree/main/bitnami/postgresql).
|
||||
|
||||
This is fine for testing purposes but we strongly recommend you to use your own database for a production environment.
|
||||
|
||||
If you want to use your own database and disable the included PostgreSQL database, you can do so in the `values.yaml` file:
|
||||
|
||||
```yaml
|
||||
postgresql:
|
||||
enabled: false
|
||||
```
|
||||
|
||||
## 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 |
|
||||
|-----|------|---------|-------------|
|
||||
| controllers.main.containers.app.env | object | See [values.yaml](./values.yaml) | Environment variables. The database environment variables **need** to be set if `postgresql.enabled` is set to `false` |
|
||||
| controllers.main.containers.app.env.TZ | string | `"UTC"` | Set container timezone |
|
||||
| controllers.main.containers.app.image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
|
||||
| controllers.main.containers.app.image.repository | string | `"ghcr.io/requarks/wiki"` | Image repository |
|
||||
| controllers.main.containers.app.image.tag | string | `"2.5.306"` | Image tag |
|
||||
| controllers.main.containers.app.securityContext.allowPrivilegeEscalation | bool | `false` | Disable privilege escalations |
|
||||
| controllers.main.containers.app.securityContext.capabilities | object | `{"drop":["ALL"]}` | Drop all capabilities |
|
||||
| controllers.main.containers.app.securityContext.readOnlyRootFilesystem | bool | `true` | Mount the container's root filesystem as read-only |
|
||||
| controllers.main.pod.securityContext.fsGroup | int | `65534` | Volume binds will be granted to `nobody` group |
|
||||
| controllers.main.pod.securityContext.runAsGroup | int | `65534` | Run as `nobody` group |
|
||||
| controllers.main.pod.securityContext.runAsNonRoot | bool | `true` | Run container as a non-root user |
|
||||
| controllers.main.pod.securityContext.runAsUser | int | `65534` | Run as `nobody` user |
|
||||
| controllers.main.replicas | int | `1` | Number of desired pods **WARNING**: Set this to 1 when you first deploy Wiki.js. You can increase the number of replicas after the initial deployment. |
|
||||
| controllers.main.resources | object | `{}` | Set the resource requests / limits for the container. |
|
||||
| controllers.main.type | string | `"deployment"` | Controller type |
|
||||
| data | object | See [values.yaml](./values.yaml) | Configure persistent storage for Wiki.js data. |
|
||||
| ingress.main | object | See [values.yaml](./values.yaml) | Enable and configure ingress settings for the chart under this key. |
|
||||
| postgresql | object | See [values.yaml](./values.yaml) | Enable and configure postgresql database subchart under this key. For more options see [postgresql chart documentation](https://github.com/bitnami/charts/tree/main/bitnami/postgresql) |
|
||||
| postgresql.enabled | bool | `true` | Set this to `false` if you want to use your own database. |
|
||||
| service | object | See [values.yaml](./values.yaml) | Configure the services for the chart here. |
|
||||
|
||||
---
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
||||
22
charts/wikijs/README_CONFIG.md.gotmpl
Normal file
22
charts/wikijs/README_CONFIG.md.gotmpl
Normal file
@ -0,0 +1,22 @@
|
||||
{{- define "custom.chart.name" -}}
|
||||
# {{ .Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration.header" -}}
|
||||
## Custom configuration
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration" -}}
|
||||
{{ template "custom.custom.configuration.header" . }}
|
||||
|
||||
This chart includes a subchart for PostgreSQL, made by [Bitnami](https://github.com/bitnami/charts/tree/main/bitnami/postgresql).
|
||||
|
||||
This is fine for testing purposes but we strongly recommend you to use your own database for a production environment.
|
||||
|
||||
If you want to use your own database and disable the included PostgreSQL database, you can do so in the `values.yaml` file:
|
||||
|
||||
```yaml
|
||||
postgresql:
|
||||
enabled: false
|
||||
```
|
||||
{{- end -}}
|
||||
119
charts/wikijs/icon.svg
Normal file
119
charts/wikijs/icon.svg
Normal file
@ -0,0 +1,119 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg width="100%" height="100%" viewBox="0 0 128 128" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
||||
<path d="M63.692,64.781c0,0 20.812,0.75 30.375,9c9.562,8.25 16.125,24 13.312,37.688c-5.625,-1.313 -29.625,-5.438 -39.375,-17.438c-9.75,-12 -9.375,-20.437 -8.25,-25.5c1.125,-5.062 3.938,-3.75 3.938,-3.75" style="fill:#1c9cf3;fill-rule:nonzero;"/>
|
||||
<path d="M60.044,68.582c-0.475,2.139 -0.988,5.498 0.046,9.953c1.125,4.848 3.801,10.068 8.198,15.31c10.06,11.993 38.391,16.857 38.734,16.932c1.078,-6.234 0.351,-12.729 -2.174,-19.516c-2.494,-6.705 -6.5,-12.669 -11.279,-16.793c-9.415,-8.122 -30.26,-8.963 -30.469,-8.971l-0.215,-0.007l-0.155,-0.081c-0.002,0 -0.177,-0.068 -0.418,-0.068c-0.998,0 -1.803,1.151 -2.268,3.241Z" style="fill:url(#_Radial1);fill-rule:nonzero;"/>
|
||||
<path d="M58.254,64.781c0,0 2.625,5.438 -3.562,13.688c-6.188,8.25 -19.125,21.562 -51.375,18.75c1.125,-7.688 6.75,-15.563 12.937,-21.188c6.188,-5.625 20.063,-11.437 29.25,-11.625c9.188,-0.187 12.75,0.375 12.75,0.375" style="fill:#04bbf3;fill-rule:nonzero;"/>
|
||||
<path d="M45.667,65.135c-4.286,0.086 -10.037,1.469 -15.783,3.791c-5.597,2.263 -10.53,5.128 -13.534,7.859c-6.762,6.148 -11.116,13.417 -12.413,19.94c2.596,0.201 7.447,0.302 7.447,0.302c11.549,0 21.195,-2.117 29.11,-6.626c7.017,-3.996 11.231,-8.995 13.79,-12.407c4.909,-6.545 4.149,-11.122 3.717,-12.555c-1.08,-0.116 -3.81,-0.344 -8.669,-0.344c-1.165,0 -2.398,0.013 -3.665,0.04Z" style="fill:url(#_Linear2);fill-rule:nonzero;"/>
|
||||
<path d="M123.879,45.656c0,0 -3.75,10.875 -22.125,16.125c-18.375,5.25 -38.062,1.875 -38.062,1.875c0,0 4.687,-12.375 18.187,-18.187c13.5,-5.813 37.313,-0.563 42,0.187" style="fill:#02bef3;fill-rule:nonzero;"/>
|
||||
<path d="M81.544,46.68c-10.988,4.731 -16.174,13.887 -17.695,17.055c2.266,0.309 7.463,0.901 13.983,0.901c8.656,0 16.566,-1.005 23.51,-2.989c14.825,-4.235 20.235,-12.672 21.72,-15.505c-0.243,-0.043 -17.126,-3.378 -26.758,-3.378c-6.904,0 -10.593,2.121 -14.76,3.916Z" style="fill:url(#_Radial3);fill-rule:nonzero;"/>
|
||||
<path d="M57.921,65.406c0,0 -26.74,-1.259 -42.436,-12.71c-15.695,-11.451 -15.333,-15.226 -15.333,-15.226c0,0 17.598,-0.054 26.286,3.078c8.688,3.133 22.335,11.948 31.483,24.858" style="fill:#02bef3;fill-rule:nonzero;"/>
|
||||
<path d="M16.409,52.486c6.069,4.428 13.396,7.559 22.006,9.665c0.002,0.001 0.002,0.001 0.004,0.001c9.149,1.098 16.735,2.791 18.559,2.946c-4.016,-5.462 -9.015,-10.404 -14.381,-14.517c-5.193,-3.99 -10.674,-7.143 -15.228,-8.943c-0.845,-0.336 -1.74,-0.638 -2.662,-0.915c-8.018,-2.397 -21.465,-2.553 -23.533,-2.583c0.509,0.942 2.299,4.909 15.235,14.346Z" style="fill:url(#_Radial4);fill-rule:nonzero;"/>
|
||||
<path d="M58.113,67.998c2.377,0.304 3.66,5.62 2.862,11.865c-0.798,6.244 -3.376,11.067 -5.754,10.763c-2.377,-0.303 -3.66,-5.62 -2.862,-11.864c0.798,-6.245 3.376,-11.068 5.754,-10.764Z" style="fill:url(#_Radial5);"/>
|
||||
<g>
|
||||
<path d="M61.629,64.651c-7.957,1.497 3.291,37.119 15.337,42.529c23.156,10.401 35.993,-9.611 35.993,-16.859c0,-7.249 -31.885,-29.326 -51.33,-25.67Z" style="fill:url(#_Radial6);fill-rule:nonzero;"/>
|
||||
<path d="M50.386,74.833c-2.895,5.261 20.365,23.165 30.768,21.166c10.402,-2 24.271,-12.529 23.192,-18.252c-1.079,-5.724 -19.995,-21.583 -35.132,-15.913c-9.928,3.719 -15.933,7.738 -18.828,12.999Z" style="fill:url(#_Radial7);fill-rule:nonzero;"/>
|
||||
<path d="M60.31,77.16c-2.178,5.597 13.079,21.534 23.128,18.182c10.048,-3.352 22.409,-15.617 20.586,-21.148c-1.824,-5.532 -22.664,-18.761 -36.922,-11.146c-9.351,4.994 -4.615,8.515 -6.792,14.112Z" style="fill:url(#_Radial8);fill-rule:nonzero;"/>
|
||||
<path d="M58.727,74.603c-1.855,4.721 11.081,18.141 19.616,15.304c8.535,-2.837 19.043,-13.192 17.501,-17.853c-1.542,-4.662 -19.221,-15.793 -31.334,-9.357c-7.946,4.221 -3.928,7.185 -5.783,11.906Z" style="fill:url(#_Radial9);fill-rule:nonzero;"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M61.553,74.101c-1.577,4.793 -19.173,24.596 -31.313,27.374c-12.14,2.779 -24.092,-9.922 -25.211,-15.785c-1.119,-5.862 17.202,-22.572 35.975,-24.02c12.313,-0.95 23.195,4.394 20.549,12.431" style="fill:url(#_Radial10);fill-rule:nonzero;"/>
|
||||
<path d="M61.211,71.442c-1.214,5.581 -17.369,27.784 -29.357,30.15c-11.989,2.368 -24.988,-13.673 -26.567,-20.736c-1.579,-7.063 15.545,-25.529 34.304,-25.799c12.305,-0.176 23.657,7.026 21.62,16.385" style="fill:url(#_Radial11);fill-rule:nonzero;"/>
|
||||
<path d="M52.51,74.882c-1.717,3.102 -15.803,13.833 -23.882,13.516c-8.079,-0.316 -13.708,-11.577 -13.531,-15.946c0.177,-4.369 14.254,-12.769 26.319,-10.259c7.913,1.647 13.974,7.488 11.094,12.689" style="fill:url(#_Radial12);fill-rule:nonzero;"/>
|
||||
</g>
|
||||
<path d="M34.746,69.666c-3.518,0.435 -20.481,-4.645 -24.977,-11.365c-4.497,-6.719 1.299,-17.895 4.937,-20.322c3.637,-2.426 18.71,4.018 23.777,15.251c3.322,7.368 2.164,15.705 -3.737,16.436" style="fill:url(#_Radial13);fill-rule:nonzero;"/>
|
||||
<g>
|
||||
<path d="M96.436,40.499c15.231,-2.015 28.385,2.308 29.356,9.649c0.971,7.34 -10.605,14.936 -25.836,16.951c-15.231,2.015 -28.385,-2.308 -29.356,-9.648c-0.971,-7.341 10.606,-14.937 25.836,-16.952Z" style="fill:url(#_Radial14);"/>
|
||||
<path d="M99.526,41.492c13.736,1.417 24.292,8.341 23.559,15.452c-0.734,7.111 -12.482,11.734 -26.218,10.316c-13.737,-1.417 -24.293,-8.341 -23.559,-15.452c0.733,-7.111 12.481,-11.734 26.218,-10.316Z" style="fill:url(#_Radial15);"/>
|
||||
<path d="M89.733,43.795c11.582,-1.429 21.602,2.408 22.361,8.563c0.76,6.154 -8.027,12.311 -19.609,13.74c-11.581,1.429 -21.601,-2.407 -22.36,-8.562c-0.76,-6.154 8.027,-12.311 19.608,-13.741Z" style="fill:url(#_Radial16);"/>
|
||||
</g>
|
||||
<path d="M59.353,65.162c0.022,0.369 0.978,7.846 -5.49,10.654c-5.003,2.171 -11.154,3.242 -24.792,-2.947c-13.638,-6.189 -18.377,-15.18 -18.377,-15.18c0,0 7.628,2.802 12.367,3.153c4.739,0.351 16.99,2.102 20.11,2.685c3.121,0.585 8.669,0.117 10.749,-0.349c2.081,-0.468 5.202,-1.752 5.433,1.984" style="fill:#b3c3ce;fill-rule:nonzero;"/>
|
||||
<path d="M29.071,72.494c13.639,6.188 19.79,5.117 24.792,2.948c6.468,-2.809 5.512,-10.287 5.49,-10.655c-0.232,-3.736 -3.352,-2.452 -5.432,-1.984c-2.081,0.467 -7.49,0.137 -11.979,-0.178c-5.344,-0.375 -13.969,-1.5 -18.88,-2.158c-4.71,-0.631 -12.368,-3.153 -12.368,-3.153c0,0 4.74,8.991 18.377,15.18Z" style="fill:url(#_Linear17);fill-rule:nonzero;"/>
|
||||
<path d="M55.262,58.355c0,0 -4.342,-3.433 -7.875,-7.169c-3.534,-3.735 -14.943,-14.538 -17.77,-17.466c-2.826,-2.928 -10.5,-12.924 -11.51,-17.164c-2.322,5.149 -3.836,14.539 -1.009,23.626c2.826,9.087 9.39,15.648 18.072,19.284c8.683,3.634 16.255,3.432 18.375,3.432c2.121,0 5.049,-1.413 1.717,-4.543" style="fill:#f5f6f2;fill-rule:nonzero;"/>
|
||||
<path d="M17.473,40.182c2.827,9.086 9.39,15.649 18.073,19.283c8.682,3.635 16.254,3.687 18.375,3.687c1.197,0 4.989,-0.152 5.177,-0.715c0.403,-1.21 -1.926,-2.107 -3.375,-3.468c-3.848,-3.042 -3.776,-3.358 -7.961,-7.782c-3.534,-3.736 -14.943,-14.539 -17.769,-17.467c-2.827,-2.928 -10.502,-12.923 -11.511,-17.165c-2.322,5.15 -3.837,14.54 -1.009,23.627Z" style="fill:url(#_Linear18);fill-rule:nonzero;"/>
|
||||
<path d="M103.337,21.668c-3.75,3.375 -10.395,7.863 -16.77,11.988c-6.375,4.125 -10.5,11.063 -15.375,18.375c-4.875,7.313 -9.75,10.875 -9.75,10.875c0,0 7.687,1.125 15,1.125c11.256,0 24,-9.375 28.687,-14.437c4.688,-5.063 7.838,-13.311 7.875,-21.75c0.043,-9.861 -4.519,-11.792 -4.519,-11.792c0,0 -1.398,2.24 -5.148,5.615Z" style="fill:url(#_Linear19);fill-rule:nonzero;"/>
|
||||
<path d="M103.865,20.907c-3.751,3.375 -11.298,8.624 -17.673,12.749c-6.375,4.125 -10.5,11.063 -15.375,18.375c-3.751,5.625 -8.444,8.724 -10.41,10.329c-0.59,0.482 -0.934,1.765 -0.934,1.765c6.769,0.99 8.351,-0.094 16.594,-0.094c11.255,0 24,-9.375 28.687,-14.437c4.688,-5.063 7.688,-13.313 7.875,-21.75c0.188,-8.438 -4.125,-11.813 -4.125,-11.813c0,0 -0.89,1.501 -4.639,4.876Z" style="fill:url(#_Linear20);fill-rule:nonzero;"/>
|
||||
<g>
|
||||
<path d="M42.638,45.578c8.133,5.258 12.662,12.735 10.107,16.686c-2.555,3.952 -11.232,2.89 -19.365,-2.368c-8.132,-5.259 -12.661,-12.736 -10.106,-16.687c2.555,-3.951 11.232,-2.89 19.364,2.369Z" style="fill:url(#_Radial21);"/>
|
||||
<path d="M41.855,45.022c7.726,5.84 12.065,13.139 9.684,16.29c-2.382,3.151 -10.588,0.968 -18.314,-4.871c-7.726,-5.839 -12.065,-13.139 -9.684,-16.29c2.382,-3.151 10.588,-0.968 18.314,4.871Z" style="fill:url(#_Radial22);"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M76.747,50.134c8.038,-4.494 15.957,-5.649 17.674,-2.578c1.717,3.071 -3.415,9.213 -11.452,13.706c-8.038,4.494 -15.958,5.649 -17.674,2.578c-1.717,-3.071 3.414,-9.213 11.452,-13.706Z" style="fill:url(#_Radial23);"/>
|
||||
<path d="M79.138,46.315c7.951,-4.445 15.94,-5.31 17.83,-1.93c1.889,3.38 -3.032,9.733 -10.983,14.178c-7.951,4.445 -15.94,5.31 -17.83,1.93c-1.889,-3.38 3.032,-9.733 10.983,-14.178Z" style="fill:url(#_Radial24);"/>
|
||||
<path d="M78.132,49.395c7.5,-5.169 15.482,-6.621 17.812,-3.24c2.33,3.381 -1.867,10.323 -9.367,15.492c-7.5,5.17 -15.481,6.622 -17.812,3.241c-2.33,-3.381 1.867,-10.323 9.367,-15.493Z" style="fill:url(#_Radial25);"/>
|
||||
<path d="M87.314,42.046c2.878,-6.448 7.508,-10.659 10.332,-9.399c2.825,1.261 2.781,7.519 -0.098,13.967c-2.878,6.448 -7.508,10.659 -10.332,9.399c-2.824,-1.261 -2.78,-7.52 0.098,-13.967Z" style="fill:url(#_Radial26);"/>
|
||||
</g>
|
||||
<path d="M24.702,32.262c-0.805,5.902 0.586,11.977 3.363,15.977c2.778,4.001 10.763,11.808 18.631,12.917c5.111,0.72 10.596,0.69 10.596,0.69c0,0 -3.058,-2.97 -5.745,-8.561c-2.687,-5.591 -4.888,-10.846 -8.937,-14.358c-4.05,-3.511 -8.254,-7.303 -10.543,-10.031c-2.288,-2.729 -3.044,-4.431 -3.044,-4.431c0,0 -3.38,0.899 -4.321,7.797Z" style="fill:url(#_Linear27);fill-rule:nonzero;"/>
|
||||
<path d="M24.965,32.299c-0.7,5.916 0.585,11.978 3.363,15.978c2.778,3.999 10.762,11.808 18.63,12.915c5.762,0.813 6.31,1.128 11.139,1.102c0,0 -3.6,-3.381 -6.288,-8.972c-2.688,-5.591 -4.887,-10.847 -8.937,-14.358c-4.05,-3.51 -8.808,-7.923 -11.097,-10.651c-2.289,-2.728 -2.764,-3.865 -2.764,-3.865c0,0 -3.347,1.934 -4.046,7.851Z" style="fill:url(#_Linear28);fill-rule:nonzero;"/>
|
||||
<g>
|
||||
<path d="M55.714,66.066c1.06,3.068 -2.837,7.203 -8.698,9.227c-5.86,2.024 -11.478,1.176 -12.538,-1.892c-1.059,-3.069 2.838,-7.203 8.698,-9.227c5.86,-2.024 11.478,-1.176 12.538,1.892Z" style="fill:url(#_Radial29);"/>
|
||||
<path d="M53.204,68.127c0.12,2.902 -4.178,5.44 -9.591,5.663c-5.413,0.223 -9.905,-1.952 -10.024,-4.854c-0.12,-2.903 4.178,-5.44 9.591,-5.664c5.413,-0.223 9.905,1.953 10.024,4.855Z" style="fill:url(#_Radial30);"/>
|
||||
<path d="M58.03,66.776c0.851,2.014 -2.078,5.179 -6.538,7.064c-4.459,1.885 -8.771,1.78 -9.622,-0.233c-0.851,-2.014 2.078,-5.179 6.538,-7.064c4.46,-1.885 8.771,-1.78 9.622,0.233Z" style="fill:url(#_Radial31);"/>
|
||||
</g>
|
||||
<path d="M31.673,65.694c2.166,3.131 5.442,5.398 8.477,6.086c3.035,0.689 10.168,0.927 14.358,-1.942c2.722,-1.865 5.295,-4.244 5.295,-4.244c0,0 -2.723,-0.082 -6.401,-1.561c-3.679,-1.478 -6.984,-3.008 -10.407,-2.918c-3.425,0.09 -7.043,0.115 -9.299,-0.185c-2.257,-0.299 -3.348,-0.777 -3.348,-0.777c0,0 -1.205,1.882 1.325,5.541Z" style="fill:url(#_Linear32);fill-rule:nonzero;"/>
|
||||
<path d="M31.813,65.599c2.221,3.091 5.441,5.396 8.476,6.086c3.036,0.688 10.17,0.928 14.358,-1.942c3.068,-2.103 3.462,-2.19 5.729,-4.285c0,0 -3.155,-0.042 -6.835,-1.52c-3.679,-1.478 -6.982,-3.009 -10.407,-2.918c-3.424,0.091 -7.572,0.061 -9.828,-0.239c-2.256,-0.3 -2.97,-0.631 -2.97,-0.631c0,0 -0.745,2.356 1.477,5.449Z" style="fill:url(#_Linear33);fill-rule:nonzero;"/>
|
||||
<path d="M98.926,64.619c-3.373,1.42 -18.374,0.622 -23.876,0c-5.503,-0.621 -11.189,-0.526 -12.25,-0.621c-3.796,-0.342 -3.106,0.887 -3.373,4.703c-0.621,10.563 3.373,12.694 6.302,13.138c2.93,0.443 5.593,-0.976 5.593,-0.976c0,0 29.024,-13.137 31.687,-14.558c0.496,-2.725 0.376,-3.586 -0.232,-3.586c-0.7,0 -2.047,1.14 -3.851,1.9Z" style="fill:url(#_Radial34);fill-rule:nonzero;"/>
|
||||
<g>
|
||||
<path d="M71.826,68.086c4.948,3.511 7.617,8.26 5.957,10.598c-1.659,2.338 -7.023,1.386 -11.971,-2.126c-4.947,-3.511 -7.616,-8.261 -5.957,-10.599c1.66,-2.338 7.024,-1.385 11.971,2.127Z" style="fill:url(#_Radial35);"/>
|
||||
<path d="M70.546,68.086c3.798,2.696 5.535,6.783 3.875,9.121c-1.659,2.338 -6.09,2.047 -9.889,-0.649c-3.798,-2.696 -5.534,-6.783 -3.875,-9.121c1.66,-2.338 6.091,-2.047 9.889,0.649Z" style="fill:url(#_Radial36);"/>
|
||||
<path d="M74.322,68.379c3.799,2.696 5.535,6.783 3.876,9.121c-1.66,2.338 -6.091,2.047 -9.889,-0.649c-3.799,-2.695 -5.535,-6.783 -3.875,-9.121c1.659,-2.338 6.09,-2.047 9.888,0.649Z" style="fill:url(#_Radial37);"/>
|
||||
</g>
|
||||
<path d="M61.502,69.307c2.637,4.341 9.236,7.059 12.286,7.682c3.05,0.622 6.968,-0.097 10.231,-2.06c3.811,-2.292 3.487,-4.503 3.487,-4.503c0,0 -1.191,-0.014 -3.37,-0.669c-2.18,-0.656 -5.468,-2.167 -8.551,-3.659c-3.083,-1.492 -6.724,-1.457 -10.686,-1.624c-3.961,-0.167 -6.476,-1.212 -6.476,-1.212c0,0 1.366,3.228 3.079,6.045Z" style="fill:url(#_Linear38);fill-rule:nonzero;"/>
|
||||
<path d="M61.415,69.164c2.635,4.34 9.235,7.059 12.285,7.68c3.05,0.622 6.933,-0.154 10.23,-2.058c3.298,-1.903 3.588,-4.357 3.588,-4.357c0,0 -0.786,0.008 -2.965,-0.647c-2.18,-0.656 -5.972,-2.337 -9.056,-3.829c-3.083,-1.491 -6.724,-1.457 -10.686,-1.623c-3.961,-0.168 -6.854,-1.429 -6.854,-1.429c1.203,2.843 1.527,3.085 3.458,6.263Z" style="fill:url(#_Linear39);fill-rule:nonzero;"/>
|
||||
<path d="M102.035,66.75c0,0 1.219,-0.938 1.125,-2.813c-0.093,-1.874 0.375,-4.687 -9.562,-10.781c-3.281,5.907 -14.625,21.657 -19.594,25.219c-4.969,3.563 -5.765,3.442 -5.765,3.442c0,0 2.871,-0.343 5.39,-2.223c2.722,-2.032 28.406,-12.844 28.406,-12.844" style="fill:#cbd3dd;fill-rule:nonzero;"/>
|
||||
<path d="M74.379,78.563c-3.085,2.212 -4.026,2.655 -4.716,2.945c0.257,-0.077 2.189,-0.583 4.341,-1.726c3,-1.594 28.406,-12.844 28.406,-12.844c0,-0.001 1.219,-0.938 1.125,-2.813c-0.093,-1.875 0.375,-4.687 -9.562,-10.781c-3.281,5.906 -14.625,21.657 -19.594,25.219Z" style="fill:url(#_Linear40);fill-rule:nonzero;"/>
|
||||
<path d="M58.915,67.448c-0.618,-0.001 -6.022,9.818 -3.491,21.069c0,-0.001 3.615,-4.339 4.058,-15.247c0.183,-4.5 -0.133,-5.823 -0.567,-5.823Z" style="fill:url(#_Linear41);fill-rule:nonzero;"/>
|
||||
<path d="M44.829,36.179c1.272,-1.24 5.597,-0.248 6.615,1.116c0.995,1.333 6.118,6.458 5.875,14.213c0.788,0.033 1.832,0.17 3.031,0.17c1.035,0 1.994,-0.102 2.781,-0.152c-0.252,-7.765 4.878,-12.897 5.873,-14.231c1.017,-1.364 5.343,-2.356 6.615,-1.116c1.273,1.24 -2.036,1.116 -3.562,0.744c-4.941,1.094 -8.097,12.039 -8.77,14.594c1.153,-0.063 1.897,0.018 1.897,0.781c0,1.156 -1.619,3.021 -3.872,3.221c0.092,0.464 0.627,3.053 0.024,5.777c-0.245,1.107 -2.519,2.36 -2.519,2.36c-2.415,-7.912 -0.023,-8.682 0.01,-8.748c-1.978,-0.296 -3.058,-1.549 -3.058,-2.61c0,-0.676 0.518,-0.817 1.388,-0.796c-0.681,-2.582 -3.835,-13.487 -8.765,-14.579c-1.527,0.372 -4.835,0.496 -3.563,-0.744" style="fill:#00c6f9;fill-rule:nonzero;"/>
|
||||
<path d="M69.004,37.669c-0.995,1.335 -6.125,6.466 -5.873,14.232c-0.787,0.05 -1.746,0.152 -2.781,0.152c-1.199,0 -2.243,-0.137 -3.031,-0.17c0.243,-7.755 -4.88,-12.88 -5.874,-14.214c-1.018,-1.364 -5.344,-2.355 -6.616,-1.115c-1.272,1.24 2.036,1.115 3.563,0.743c4.93,1.093 8.084,11.998 8.765,14.58c-0.87,-0.02 -1.387,0.12 -1.387,0.796c0,1.061 0.786,2.39 2.763,2.684c-0.033,0.066 -1.658,1.242 0.284,8.674c0,0 3.102,-0.292 2.628,-6.64c-0.054,-0.732 -0.13,-1.318 -0.223,-1.782c2.252,-0.201 3.962,-1.781 3.962,-2.936c0,-0.763 -0.744,-0.844 -1.897,-0.781c0.674,-2.555 3.829,-13.5 8.77,-14.595c1.527,0.372 4.835,0.497 3.562,-0.743c-0.408,-0.398 -1.13,-0.566 -1.956,-0.566c-1.75,0 -3.968,0.755 -4.659,1.681Z" style="fill:url(#_Radial42);fill-rule:nonzero;"/>
|
||||
<path d="M48.011,24.197c-0.937,1.89 2.368,2.171 3.493,1.605c3.635,1.665 5.958,18.288 6.46,22.223c-0.641,-0.031 -1.022,0.183 -1.022,1.213c0,1.617 0.873,3.929 2.329,4.38c-0.024,0.1 -0.037,0.16 -0.037,0.16c0,0 -2.48,4.628 -0.417,14.753c0,0 2.307,-5.062 2.307,-12.099c0,-1.119 -0.096,-2.01 -0.165,-2.719c1.66,-0.305 2.92,-2.713 2.92,-4.475c0,-1.161 -0.547,-1.285 -1.397,-1.189c0.387,-4.644 1.969,-20.385 6.463,-22.247c1.125,0.566 4.286,0.354 3.348,-1.536c-0.937,-1.89 -4.255,-0.383 -5.571,1.387c-1.445,1.942 -4.932,10.629 -4.747,22.466c-0.579,0.076 -0.896,0.174 -1.658,0.174c-0.883,0 -1.653,-0.208 -2.234,-0.259c0.179,-11.822 -3.677,-19.606 -4.329,-21.666c-0.616,-1.949 -2.533,-3.101 -4.027,-3.101c-0.755,0 -1.401,0.295 -1.716,0.93Z" style="fill:url(#_Linear43);fill-rule:nonzero;"/>
|
||||
<path d="M48.011,24.565c-0.937,1.874 2.368,2.154 3.493,1.591c3.635,1.652 5.958,18.142 6.46,22.047c-0.641,-0.031 -1.022,0.181 -1.022,1.203c0,1.604 0.873,3.897 2.329,4.343c-0.024,0.1 -0.037,0.159 -0.037,0.159c0,0 -4.295,14.835 -1.471,24.549c0,0 3.709,-12.317 3.361,-21.915c-0.04,-1.109 -0.096,-1.994 -0.165,-2.697c1.66,-0.303 2.92,-2.691 2.92,-4.439c0,-1.153 -0.547,-1.276 -1.397,-1.181c0.387,-4.607 1.969,-20.222 6.463,-22.069c1.125,0.563 4.286,0.352 3.348,-1.523c-0.937,-1.875 -4.255,-0.38 -5.571,1.375c-1.445,1.927 -4.932,10.545 -4.747,22.287c-0.579,0.075 -0.896,0.174 -1.658,0.174c-0.883,0 -1.653,-0.207 -2.234,-0.258c0.179,-11.728 -3.677,-19.448 -4.329,-21.492c-0.616,-1.934 -2.533,-3.077 -4.027,-3.077c-0.754,0.001 -1.401,0.293 -1.716,0.923Z" style="fill:url(#_Linear44);fill-rule:nonzero;"/>
|
||||
<path d="M64.284,58.419c0,0 3.743,-2.96 6.791,-6.181c3.047,-3.222 12.885,-12.537 15.323,-15.063c2.438,-2.524 9.055,-11.144 9.926,-14.801c2.003,4.441 3.308,12.538 0.87,20.373c-2.437,7.836 -8.097,13.496 -15.584,16.63c-7.488,3.134 -14.018,2.96 -15.845,2.96c-1.829,0 -4.354,-1.219 -1.481,-3.918" style="fill:#f5f6f2;fill-rule:nonzero;"/>
|
||||
<path d="M86.075,37.175c-2.439,2.525 -12.276,11.84 -15.323,15.062c-3.609,3.816 -3.547,4.088 -6.865,6.711c-1.25,1.174 -3.205,2.508 -2.946,3.073c0.259,0.564 3.467,0.316 4.5,0.316c1.828,0 8.358,0.174 15.846,-2.96c7.487,-3.135 13.146,-8.794 15.584,-16.629c2.439,-7.836 1.132,-15.933 -0.871,-20.374c-0.87,3.658 -7.487,12.277 -9.925,14.801Z" style="fill:url(#_Linear45);fill-rule:nonzero;"/>
|
||||
<defs>
|
||||
<radialGradient id="_Radial1" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-66.1387,0,-0,66.1387,60.5806,63.95)"><stop offset="0" style="stop-color:#3d4ead;stop-opacity:1"/><stop offset="1" style="stop-color:#00c0f3;stop-opacity:1"/></radialGradient>
|
||||
<linearGradient id="_Linear2" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-54.7355,0,0,-32.1015,58.3206,81.1455)"><stop offset="0" style="stop-color:#3f51b4;stop-opacity:1"/><stop offset="1" style="stop-color:#00c0f3;stop-opacity:1"/></linearGradient>
|
||||
<radialGradient id="_Radial3" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-66.1374,0,-0,66.1374,60.5808,63.95)"><stop offset="0" style="stop-color:#3d4ead;stop-opacity:1"/><stop offset="1" style="stop-color:#00c0f3;stop-opacity:1"/></radialGradient>
|
||||
<radialGradient id="_Radial4" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-52.6361,-107.604,-12.8428,112.241,48.7863,138.585)"><stop offset="0" style="stop-color:#0072e9;stop-opacity:1"/><stop offset="1" style="stop-color:#00fdfe;stop-opacity:1"/></radialGradient>
|
||||
<radialGradient id="_Radial5" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(4.0052,0.526563,-1.46889,11.3112,56.6669,79.3122)"><stop offset="0" style="stop-color:#153e68;stop-opacity:0.34"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0.01"/></radialGradient>
|
||||
<radialGradient id="_Radial6" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-10.3568,10.999,26.0381,24.5177,74.5359,78.3911)"><stop offset="0" style="stop-color:#00336f;stop-opacity:1"/><stop offset="1" style="stop-color:#00336f;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-6.51962,11.4057,24.5674,14.4231,72.7521,72.772)"><stop offset="0" style="stop-color:#00336f;stop-opacity:0.5"/><stop offset="1" style="stop-color:#00336f;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial8" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-4.96046,12.1651,26.2531,11.0614,72.05,73.4244)"><stop offset="0" style="stop-color:#00336f;stop-opacity:0.5"/><stop offset="1" style="stop-color:#00336f;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial9" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-4.22491,10.2622,22.277,9.29717,68.699,71.4404)"><stop offset="0" style="stop-color:#00336f;stop-opacity:1"/><stop offset="1" style="stop-color:#00336f;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial10" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-9.78901,-10.0451,-28.1355,22.8978,42.6909,72.541)"><stop offset="0" style="stop-color:#002d68;stop-opacity:1"/><stop offset="1" style="stop-color:#002d68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial11" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-10.6184,-12.7117,-26.5102,25.0697,42.1289,68.125)"><stop offset="0" style="stop-color:#002d68;stop-opacity:1"/><stop offset="1" style="stop-color:#002d68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial12" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-4.66402,-8.96904,-21.2029,10.9396,40.8426,70.2218)"><stop offset="0" style="stop-color:#002d68;stop-opacity:1"/><stop offset="1" style="stop-color:#002d68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial13" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(4.51007,-9.04744,-21.3185,-10.7126,31.6527,57.4886)"><stop offset="0" style="stop-color:#002d68;stop-opacity:1"/><stop offset="1" style="stop-color:#002d68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial14" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(55.5618,-7.25333,2.08197,15.9483,70.5908,57.3802)"><stop offset="0" style="stop-color:#00326d;stop-opacity:1"/><stop offset="1" style="stop-color:#003b79;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial15" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(50.0892,5.26339,-1.61895,15.4438,73.3147,51.7397)"><stop offset="0" style="stop-color:#00326d;stop-opacity:1"/><stop offset="1" style="stop-color:#003b79;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial16" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(42.2509,-5.13094,1.62846,13.3715,70.1175,57.4772)"><stop offset="0" style="stop-color:#00326d;stop-opacity:1"/><stop offset="1" style="stop-color:#003b79;stop-opacity:0"/></radialGradient>
|
||||
<linearGradient id="_Linear17" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-48.7206,0,-0,48.7206,59.4148,67.2287)"><stop offset="0" style="stop-color:#f5f7fa;stop-opacity:1"/><stop offset="0.53" style="stop-color:#f1f4f2;stop-opacity:1"/><stop offset="1" style="stop-color:#bad7e9;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear18" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-43.2077,0,-0,43.2077,59.144,39.7308)"><stop offset="0" style="stop-color:#fafafa;stop-opacity:1"/><stop offset="0.26" style="stop-color:#f1f6f8;stop-opacity:1"/><stop offset="0.73" style="stop-color:#dce5eb;stop-opacity:1"/><stop offset="1" style="stop-color:#bbcfda;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear19" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-47.9791,-47.9791,-0,87.2229,64.0313)"><stop offset="0" style="stop-color:#fdfdff;stop-opacity:1"/><stop offset="0.26" style="stop-color:#f1f2f2;stop-opacity:1"/><stop offset="0.73" style="stop-color:#bfd2e0;stop-opacity:1"/><stop offset="1" style="stop-color:#afc0cc;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear20" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-48.0543,-48.0543,-0,86.4289,64.0856)"><stop offset="0" style="stop-color:#f1f6f6;stop-opacity:1"/><stop offset="0.41" style="stop-color:#fdfdfd;stop-opacity:1"/><stop offset="0.55" style="stop-color:#f5f8fa;stop-opacity:1"/><stop offset="0.89" style="stop-color:#d6e1e7;stop-opacity:1"/><stop offset="0.98" style="stop-color:#c3d3dd;stop-opacity:1"/><stop offset="1" style="stop-color:#c3d3dd;stop-opacity:1"/></linearGradient>
|
||||
<radialGradient id="_Radial21" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(14.7354,9.52776,-4.62893,7.15901,38.0093,52.7366)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial22" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(13.9988,10.5803,-4.31511,5.70934,37.54,50.7316)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial23" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(14.5634,-8.14176,3.11074,5.56427,79.858,55.6982)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial24" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(14.4062,-8.05386,3.42371,6.12408,82.5616,52.4391)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial25" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(13.5894,-9.36638,4.22241,6.1262,82.3546,55.5213)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#1a426b;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial26" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(5.21516,-11.6826,5.1171,2.2843,92.4313,44.33)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#1b436c;stop-opacity:0"/></radialGradient>
|
||||
<linearGradient id="_Linear27" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(4.72457,-33.536,33.536,4.72457,39.1596,60.0944)"><stop offset="0" style="stop-color:#fdfdff;stop-opacity:1"/><stop offset="0.26" style="stop-color:#f1f2f2;stop-opacity:1"/><stop offset="0.73" style="stop-color:#bfd2e0;stop-opacity:1"/><stop offset="1" style="stop-color:#afc0cc;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear28" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-33.3203,-0.000343575,0.000343575,-33.3203,58.0971,43.372)"><stop offset="0" style="stop-color:#fafafa;stop-opacity:1"/><stop offset="0.26" style="stop-color:#f1f6f8;stop-opacity:1"/><stop offset="0.73" style="stop-color:#dce5eb;stop-opacity:1"/><stop offset="1" style="stop-color:#bbcfda;stop-opacity:1"/></linearGradient>
|
||||
<radialGradient id="_Radial29" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.92018,5.55941,-10.6179,3.66735,45.0962,69.7332)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial30" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.21678,5.25887,-9.80783,0.404296,43.3965,68.5313)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial31" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.54211,3.64848,-8.0801,3.41524,49.9501,70.1915)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<linearGradient id="_Linear32" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-12.2342,-17.8556,17.8556,-12.2342,50.4952,72.5871)"><stop offset="0" style="stop-color:#fdfdff;stop-opacity:1"/><stop offset="0.26" style="stop-color:#f1f2f2;stop-opacity:1"/><stop offset="0.73" style="stop-color:#bfd2e0;stop-opacity:1"/><stop offset="1" style="stop-color:#afc0cc;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear33" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-15.7162,14.3692,-14.3692,-15.7162,52.2159,56.533)"><stop offset="0" style="stop-color:#fafafa;stop-opacity:1"/><stop offset="0.26" style="stop-color:#f1f6f8;stop-opacity:1"/><stop offset="0.73" style="stop-color:#dce5eb;stop-opacity:1"/><stop offset="1" style="stop-color:#bbcfda;stop-opacity:1"/></linearGradient>
|
||||
<radialGradient id="_Radial34" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-16.9591,0,-0,16.9591,81.3402,72.3216)"><stop offset="0" style="stop-color:#f9f9fa;stop-opacity:1"/><stop offset="1" style="stop-color:#f5f7f7;stop-opacity:1"/></radialGradient>
|
||||
<radialGradient id="_Radial35" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(8.96408,6.36252,-3.00685,4.23632,68.8193,72.3219)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial36" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(6.8821,4.88477,-3.00685,4.23632,67.5393,72.3219)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<radialGradient id="_Radial37" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(6.8821,4.88477,-3.00685,4.23632,71.3156,72.6152)"><stop offset="0" style="stop-color:#153e68;stop-opacity:1"/><stop offset="1" style="stop-color:#153e68;stop-opacity:0"/></radialGradient>
|
||||
<linearGradient id="_Linear38" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(18.4986,-11.2373,-11.2373,-18.4986,64.0277,73.4655)"><stop offset="0" style="stop-color:#fdfdff;stop-opacity:1"/><stop offset="0.26" style="stop-color:#f1f2f2;stop-opacity:1"/><stop offset="0.73" style="stop-color:#bfd2e0;stop-opacity:1"/><stop offset="1" style="stop-color:#afc0cc;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear39" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(8.40915,19.5646,19.5646,-8.40915,69.0669,58.1262)"><stop offset="0" style="stop-color:#fafafa;stop-opacity:1"/><stop offset="0.26" style="stop-color:#f1f6f8;stop-opacity:1"/><stop offset="0.73" style="stop-color:#dce5eb;stop-opacity:1"/><stop offset="1" style="stop-color:#bbcfda;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear40" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(6.46873,14.3437,14.3437,-6.46873,80.3566,59.6296)"><stop offset="0" style="stop-color:#aebcd0;stop-opacity:1"/><stop offset="0.22" style="stop-color:#859bb9;stop-opacity:1"/><stop offset="0.53" style="stop-color:#a1b1c9;stop-opacity:1"/><stop offset="1" style="stop-color:#97a9c3;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear41" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-21.0692,-21.0692,0,57.0961,88.5161)"><stop offset="0" style="stop-color:#c0cbda;stop-opacity:1"/><stop offset="0.02" style="stop-color:#c0cbda;stop-opacity:1"/><stop offset="0.11" style="stop-color:#d4dbe5;stop-opacity:1"/><stop offset="0.45" style="stop-color:#f5f6f9;stop-opacity:1"/><stop offset="0.59" style="stop-color:#fdfdfd;stop-opacity:1"/><stop offset="1" style="stop-color:#fcfdfd;stop-opacity:1"/></linearGradient>
|
||||
<radialGradient id="_Radial42" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-18.2184,0,-0,12.4951,60.2241,50.0098)"><stop offset="0" style="stop-color:#3f51b5;stop-opacity:1"/><stop offset="1" style="stop-color:#04bbf3;stop-opacity:1"/></radialGradient>
|
||||
<linearGradient id="_Linear43" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-45.2637,-45.2637,-0,60.1552,68.5313)"><stop offset="0" style="stop-color:#afc0cc;stop-opacity:1"/><stop offset="0.24" style="stop-color:#afc0cc;stop-opacity:1"/><stop offset="0.74" style="stop-color:#f1f2f2;stop-opacity:1"/><stop offset="1" style="stop-color:#fdfdff;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear44" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-46.5257,-46.5257,-0,60.1552,70.1682)"><stop offset="0" style="stop-color:#fafafa;stop-opacity:1"/><stop offset="0.26" style="stop-color:#f1f6f8;stop-opacity:1"/><stop offset="0.73" style="stop-color:#dce5eb;stop-opacity:1"/><stop offset="1" style="stop-color:#bbcfda;stop-opacity:1"/></linearGradient>
|
||||
<linearGradient id="_Linear45" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-39.9686,39.9686,-0,79.5662,62.3429)"><stop offset="0" style="stop-color:#f1f6f6;stop-opacity:1"/><stop offset="0.41" style="stop-color:#fdfdfd;stop-opacity:1"/><stop offset="0.55" style="stop-color:#f5f8fa;stop-opacity:1"/><stop offset="0.89" style="stop-color:#d6e1e7;stop-opacity:1"/><stop offset="0.98" style="stop-color:#c3d3dd;stop-opacity:1"/><stop offset="1" style="stop-color:#c3d3dd;stop-opacity:1"/></linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 33 KiB |
82
charts/wikijs/templates/common.yaml
Normal file
82
charts/wikijs/templates/common.yaml
Normal file
@ -0,0 +1,82 @@
|
||||
{{/* Append the hardcoded settings */}}
|
||||
{{- define "wikijs.harcodedValues" -}}
|
||||
persistence:
|
||||
data:
|
||||
enabled: true
|
||||
{{- with .Values.data }}
|
||||
storageClass: {{ .storageClass }}
|
||||
accessMode: {{ .accessMode }}
|
||||
size: {{ .size }}
|
||||
{{- end }}
|
||||
globalMounts:
|
||||
- path: /wiki/data
|
||||
readOnly: false
|
||||
|
||||
controllers:
|
||||
main:
|
||||
containers:
|
||||
app:
|
||||
{{- if .Values.postgresql.enabled }}
|
||||
{{- with .Values.postgresql }}
|
||||
env:
|
||||
DB_TYPE: postgres
|
||||
DB_HOST: {{ $.Release.Name }}-postgresql
|
||||
DB_PORT: 5432
|
||||
DB_NAME: {{ .auth.database }}
|
||||
DB_USER: {{ .auth.username }}
|
||||
{{ if .auth.password }}
|
||||
DB_PASS: {{ .auth.password }}
|
||||
{{ else if .auth.existingSecret }}
|
||||
DB_PASS:
|
||||
secretKeyRef:
|
||||
name: {{ .auth.existingSecret }}
|
||||
key: {{ .auth.secretKeys.userPasswordKey }}
|
||||
{{ end }}
|
||||
{{- end }}
|
||||
{{- end}}
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
name: http
|
||||
protocol: TCP
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
custom: true
|
||||
spec:
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: http
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 30
|
||||
readiness:
|
||||
enabled: true
|
||||
custom: true
|
||||
spec:
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: http
|
||||
periodSeconds: 30
|
||||
timeoutSeconds: 30
|
||||
startup:
|
||||
enabled: true
|
||||
custom: true
|
||||
spec:
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: http
|
||||
initialDelaySeconds: 15
|
||||
periodSeconds: 5
|
||||
timeoutSeconds: 5
|
||||
successThreshold: 1
|
||||
failureThreshold: 60
|
||||
|
||||
{{- end -}}
|
||||
|
||||
{{- $tmplVars := deepCopy . -}}
|
||||
{{ include "bjw-s.common.loader.init" $tmplVars }}
|
||||
{{- $defaultValues := include "wikijs.harcodedValues" $tmplVars | fromYaml -}}
|
||||
{{- $_ := mustMerge .Values $defaultValues -}}
|
||||
|
||||
{{/* Render the templates */}}
|
||||
{{ include "bjw-s.common.loader.init" . }}
|
||||
{{ include "bjw-s.common.loader.generate" . }}
|
||||
125
charts/wikijs/values.yaml
Normal file
125
charts/wikijs/values.yaml
Normal file
@ -0,0 +1,125 @@
|
||||
---
|
||||
#
|
||||
# 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
|
||||
#
|
||||
|
||||
controllers:
|
||||
main:
|
||||
# -- Controller type
|
||||
type: deployment
|
||||
# -- Number of desired pods
|
||||
# **WARNING**: Set this to 1 when you first deploy Wiki.js.
|
||||
# You can increase the number of replicas after the initial deployment.
|
||||
replicas: 1
|
||||
containers:
|
||||
app:
|
||||
image:
|
||||
# -- Image repository
|
||||
repository: ghcr.io/requarks/wiki
|
||||
# -- Image pull policy
|
||||
pullPolicy: IfNotPresent
|
||||
# -- Image tag
|
||||
tag: 2.5.306
|
||||
|
||||
# -- Environment variables.
|
||||
# The database environment variables **need** to be set if `postgresql.enabled` is set to `false`
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
env:
|
||||
# -- Set container timezone
|
||||
TZ: UTC
|
||||
# DB_TYPE: postgres
|
||||
# DB_HOST:
|
||||
# DB_PORT:
|
||||
# DB_NAME:
|
||||
# DB_USER:
|
||||
# DB_PASS:
|
||||
|
||||
securityContext:
|
||||
# -- Mount the container's root filesystem as read-only
|
||||
readOnlyRootFilesystem: true
|
||||
# -- Disable privilege escalations
|
||||
allowPrivilegeEscalation: false
|
||||
# -- Drop all capabilities
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
|
||||
pod:
|
||||
securityContext:
|
||||
# -- Run container as a non-root user
|
||||
runAsNonRoot: true
|
||||
# -- Run as `nobody` user
|
||||
runAsUser: 65534
|
||||
# -- Run as `nobody` group
|
||||
runAsGroup: 65534
|
||||
# -- Volume binds will be granted to `nobody` group
|
||||
fsGroup: 65534
|
||||
|
||||
# -- Set the resource requests / limits for the container.
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
# -- Configure the services for the chart here.
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
service:
|
||||
main:
|
||||
controller: main
|
||||
ports:
|
||||
http:
|
||||
port: 3000
|
||||
|
||||
# -- Configure persistent storage for Wiki.js data.
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
data:
|
||||
storageClass: ""
|
||||
accessMode: ReadWriteOnce
|
||||
size: 8Gi
|
||||
|
||||
ingress:
|
||||
# -- Enable and configure ingress settings for the chart under this key.
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
main:
|
||||
enabled: false
|
||||
# className: ""
|
||||
# annotations: {}
|
||||
# hosts:
|
||||
# - host: &host-main "chart-example.local"
|
||||
# paths:
|
||||
# - path: /
|
||||
# pathType: Prefix
|
||||
# service:
|
||||
# identifier: main
|
||||
# port: http
|
||||
# tls:
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - *host-main
|
||||
|
||||
# -- Enable and configure postgresql database subchart under this key.
|
||||
# For more options see [postgresql chart documentation](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)
|
||||
# @default -- See [values.yaml](./values.yaml)
|
||||
postgresql:
|
||||
# -- Set this to `false` if you want to use your own database.
|
||||
enabled: true
|
||||
architecture: standalone
|
||||
primary:
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: ""
|
||||
size: 8Gi
|
||||
auth:
|
||||
enablePostgresUser: false
|
||||
username: wikijs
|
||||
password: changeme
|
||||
database: wikijs
|
||||
existingSecret: ""
|
||||
secretKeys:
|
||||
userPasswordKey: ""
|
||||
39
hack/gen-chart-summary.sh
Executable file
39
hack/gen-chart-summary.sh
Executable file
@ -0,0 +1,39 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# require yq
|
||||
command -v yq >/dev/null 2>&1 || {
|
||||
echo >&2 'yq (https://github.com/mikefarah/yq) is not installed. Aborting.'
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Absolute path of repository
|
||||
repository="$(git rev-parse --show-toplevel)"
|
||||
charts_folder="$repository/charts"
|
||||
charts_summary_file="$repository/README.md"
|
||||
charts_header='## Chart Overview'
|
||||
|
||||
# Gather all charts
|
||||
stable_charts="$(find "$charts_folder" -name "Chart.yaml" | sort)"
|
||||
|
||||
sed -i '' '/^'"$charts_header"'$/,$d' "$charts_summary_file"
|
||||
|
||||
{
|
||||
echo "$charts_header"
|
||||
echo
|
||||
echo "| Chart | Description |"
|
||||
echo "| ----- | ----------- |"
|
||||
for chart_yaml in ${stable_charts[@]}; do
|
||||
if ! git ls-files --error-unmatch "$chart_yaml" &>/dev/null; then continue; fi
|
||||
IFS=$'\t' read -r chart_name chart_description chart_icon < <(yq eval -o=tsv '[.name, .description, .icon // ""]' "$chart_yaml")
|
||||
if [[ -n "$chart_icon" ]]; then
|
||||
width=18
|
||||
if [[ "$chart_name" == mnemonic-ninja ]]; then
|
||||
width=12
|
||||
fi
|
||||
chart_icon="<img src='$chart_icon' alt='$chart_name icon' width='${width}px' align='right' loading='lazy'>"
|
||||
fi
|
||||
pretty_name="$(head -n1 "$(dirname "$chart_yaml")/README.md" | sed 's/^# //')"
|
||||
echo "| [$pretty_name $chart_icon](https://github.com/plcnk/charts/tree/master/charts/$chart_name/) | $chart_description |"
|
||||
done
|
||||
} >> "$charts_summary_file"
|
||||
59
hack/gen-helm-docs.sh
Executable file
59
hack/gen-helm-docs.sh
Executable file
@ -0,0 +1,59 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# Generate helm-docs for Helm charts
|
||||
# Usage ./gen-helm-docs.sh [chart]
|
||||
|
||||
# require helm-docs
|
||||
command -v helm-docs >/dev/null 2>&1 || {
|
||||
echo >&2 'helm-docs (https://github.com/norwoodj/helm-docs) is not installed. Aborting.'
|
||||
exit 1
|
||||
}
|
||||
|
||||
# require yq
|
||||
command -v yq >/dev/null 2>&1 || {
|
||||
echo >&2 'yq (https://github.com/mikefarah/yq) is not installed. Aborting.'
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Absolute path of repository
|
||||
repository="$(git rev-parse --show-toplevel)"
|
||||
charts_folder="$repository/charts"
|
||||
|
||||
# Templates to copy into each chart directory
|
||||
template_dir="$repository/hack/templates"
|
||||
readme_config_template="$template_dir/README_CONFIG.md.gotmpl"
|
||||
icon_template=$(<"$template_dir/icon.gotmpl")
|
||||
|
||||
# Gather all charts using the common library, excluding common-test
|
||||
charts="$(find "$charts_folder" -name Chart.yaml)"
|
||||
|
||||
# Allow for a specific chart to be passed in as a argument
|
||||
if [ $# -ge 1 ] && [ -n "$1" ]; then
|
||||
root="$(find "$charts_folder" -name "$1")"
|
||||
charts="$root/Chart.yaml"
|
||||
if [ ! -f "$charts" ]; then
|
||||
echo "Chart $1 does not exist."
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
root="$charts_folder"
|
||||
fi
|
||||
|
||||
for chart in $charts; do (
|
||||
chart_directory="$(dirname "$chart")"
|
||||
icon="$(yq eval '.icon // ""' "$chart" 2>/dev/null)"
|
||||
|
||||
# Copy CONFIG template to each Chart directory, do not overwrite if exists
|
||||
cp -n "$readme_config_template" "$chart_directory" || true
|
||||
|
||||
# Run helm-docs for charts
|
||||
helm-docs \
|
||||
--log-level=warning \
|
||||
--template-files="$template_dir/README.md.gotmpl" \
|
||||
--template-files=<(echo "${icon_template/\$ICON/$icon}") \
|
||||
--template-files="$(basename "$readme_config_template")" \
|
||||
--badge-style=flat \
|
||||
--chart-search-root="$root" \
|
||||
--chart-to-generate="$chart_directory"
|
||||
) done
|
||||
170
hack/templates/README.md.gotmpl
Normal file
170
hack/templates/README.md.gotmpl
Normal file
@ -0,0 +1,170 @@
|
||||
{{- define "custom.repository.organization" -}}
|
||||
plcnk
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.repository.url" -}}
|
||||
https://github.com/plcnk/charts
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.helm.url" -}}
|
||||
https://charts.plcnk.net
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.helm.path" -}}
|
||||
{{ template "custom.repository.organization" . }}/{{ template "chart.name" . }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.helm.oci_url" -}}
|
||||
oci://ghcr.io/plcnk/charts
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.notes" -}}
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised
|
||||
[here]({{ template "custom.repository.url" . }}/issues/new?assignees=plcnk&labels=bug&template=bug_report.yaml&name={{ template "chart.name" . }}&version={{ template "chart.version" . }})**
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.requirements" -}}
|
||||
## Requirements
|
||||
|
||||
{{ template "chart.kubeVersionLine" . }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.dependencies" -}}
|
||||
## Dependencies
|
||||
|
||||
{{ if gt (len .Dependencies) 0 }}
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
{{- range .Dependencies }}
|
||||
{{- if .Alias }}
|
||||
| <{{ .Repository }}> | {{ .Alias }}({{ .Name }}) | {{ .Version }} |
|
||||
{{- else }}
|
||||
| <{{ .Repository }}> | {{ .Name }} | {{ .Version }} |
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{ else }}
|
||||
This chart has no dependencies.
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.install" -}}
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `{{ template "chart.name" . }}`
|
||||
|
||||
### OCI (Recommended)
|
||||
|
||||
```console
|
||||
helm install {{ template "chart.name" . }} {{ template "custom.helm.oci_url" . }}/{{ template "chart.name" . }}
|
||||
```
|
||||
|
||||
### Traditional
|
||||
|
||||
```console
|
||||
helm repo add {{ template "custom.repository.organization" . }} {{ template "custom.helm.url" . }}
|
||||
helm repo update
|
||||
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }}
|
||||
```
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.uninstall" -}}
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall the `{{ template "chart.name" . }}` deployment
|
||||
|
||||
```console
|
||||
helm uninstall {{ template "chart.name" . }}
|
||||
```
|
||||
|
||||
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.configuration.header" -}}
|
||||
## Configuration
|
||||
{{- end -}}
|
||||
|
||||
|
||||
{{- define "custom.bjwsRef" -}}
|
||||
{{- $ref := "" -}}
|
||||
{{- range .Dependencies -}}
|
||||
{{- if and (eq .Repository "https://bjw-s.github.io/helm-charts") (eq .Name "common") (semverCompare "^1.x" .Version) -}}
|
||||
{{- $ref = "a081de5" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- default "main" $ref -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.configuration.readValues" -}}
|
||||
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/{{ template "custom.bjwsRef" . }}/charts/library/common/values.yaml) from the [bjw-s common library](https://github.com/bjw-s/helm-charts/tree/{{ template "custom.bjwsRef" . }}/charts/library/common).
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.configuration.example.set" -}}
|
||||
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
|
||||
|
||||
```console
|
||||
helm install {{ template "chart.name" . }} \
|
||||
--set env.TZ="America/New York" \
|
||||
{{ template "custom.helm.path" . }}
|
||||
```
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.configuration.example.file" -}}
|
||||
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||
|
||||
```console
|
||||
helm install {{ template "chart.name" . }} {{ template "custom.helm.path" . }} -f values.yaml
|
||||
```
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.valuesSection" -}}
|
||||
## 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/{{ template "custom.bjwsRef" . }}/charts/library/common)
|
||||
|
||||
{{ template "chart.valuesTable" . }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.helm-docs.versionFooter" -}}
|
||||
---
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
||||
{{- end -}}
|
||||
|
||||
# {{ template "custom.chart.name" . }}
|
||||
|
||||
{{ template "custom.chart.icon" . }}
|
||||
|
||||
{{ template "chart.versionBadge" . }}
|
||||
{{ template "chart.typeBadge" . }}
|
||||
{{ template "chart.appVersionBadge" . }}
|
||||
|
||||
{{ template "chart.description" . }}
|
||||
|
||||
{{ template "chart.homepageLine" . }}
|
||||
|
||||
{{ template "custom.notes" . }}
|
||||
|
||||
{{ template "chart.sourcesSection" . }}
|
||||
|
||||
{{ template "custom.requirements" . }}
|
||||
|
||||
{{ template "custom.dependencies" . }}
|
||||
|
||||
{{ template "custom.install" . }}
|
||||
|
||||
{{ template "custom.uninstall" . }}
|
||||
|
||||
{{ template "custom.configuration.header" . }}
|
||||
|
||||
{{ template "custom.configuration.readValues" . }}
|
||||
|
||||
{{ template "custom.configuration.example.set" . }}
|
||||
|
||||
{{ template "custom.configuration.example.file" . }}
|
||||
|
||||
{{ template "custom.custom.configuration" . }}
|
||||
|
||||
{{ template "custom.valuesSection" . }}
|
||||
|
||||
{{ template "custom.helm-docs.versionFooter" . }}
|
||||
{{ "" }}
|
||||
13
hack/templates/README_CONFIG.md.gotmpl
Normal file
13
hack/templates/README_CONFIG.md.gotmpl
Normal file
@ -0,0 +1,13 @@
|
||||
{{- define "custom.chart.name" -}}
|
||||
# {{ .Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration.header" -}}
|
||||
## Custom configuration
|
||||
{{- end -}}
|
||||
|
||||
{{- define "custom.custom.configuration" -}}
|
||||
{{ template "custom.custom.configuration.header" . }}
|
||||
|
||||
N/A
|
||||
{{- end -}}
|
||||
5
hack/templates/icon.gotmpl
Normal file
5
hack/templates/icon.gotmpl
Normal file
@ -0,0 +1,5 @@
|
||||
{{- define "custom.chart.icon" -}}
|
||||
{{- with "$ICON" -}}
|
||||
<img src="{{ . }}" align="right" width="92" alt="{{ template "chart.name" $ }} logo">
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
56
hack/update-changelog.sh
Executable file
56
hack/update-changelog.sh
Executable file
@ -0,0 +1,56 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
IFS=$'\n\t'
|
||||
|
||||
# require yq
|
||||
command -v yq >/dev/null 2>&1 || {
|
||||
echo >&2 'yq (https://github.com/mikefarah/yq) is not installed. Aborting.'
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [ "$#" -lt 2 ]; then
|
||||
echo 'Usage: {append | replace} changelog [chart...]'
|
||||
exit
|
||||
fi
|
||||
|
||||
update_type="$1"
|
||||
shift
|
||||
|
||||
changelog="$(yq -P <<<"$1")"
|
||||
export changelog
|
||||
shift
|
||||
|
||||
CHARTS=()
|
||||
if [ "$#" -gt 0 ]; then
|
||||
# Get changed dirs from params
|
||||
for file in "$@"; do
|
||||
CHARTS+=( "$(dirname "$file")" )
|
||||
done
|
||||
else
|
||||
# Get changed dirs from uncommitted changes
|
||||
for file in $(git status --porcelain charts | grep '^M' | cut -c4-); do
|
||||
CHARTS+=( "$(dirname "$file")" )
|
||||
done
|
||||
fi
|
||||
CHARTS=( $(sort -u <<<"${CHARTS[*]}") )
|
||||
|
||||
case "$update_type" in
|
||||
append)
|
||||
expression='.annotations."artifacthub.io/changes" |= (@yamld + (strenv(changelog) | @yamld) | @yaml | trim)'
|
||||
;;
|
||||
replace)
|
||||
expression='.annotations."artifacthub.io/changes" = (env(changelog) | @yaml | trim)'
|
||||
;;
|
||||
*)
|
||||
echo "Invalid update type: $update_type" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
for chart in "${CHARTS[@]}"; do (
|
||||
meta_file="$chart/Chart.yaml"
|
||||
if [ ! -f "$meta_file" ]; then echo >&2 "Invalid file: $meta_file"; exit; fi
|
||||
|
||||
yq --inplace "$expression" "$meta_file"
|
||||
echo "Updated $(basename "$chart") changelog"
|
||||
) done
|
||||
53
hack/update-version.sh
Executable file
53
hack/update-version.sh
Executable file
@ -0,0 +1,53 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
IFS=$'\n\t'
|
||||
|
||||
# require yq
|
||||
command -v yq >/dev/null 2>&1 || {
|
||||
echo >&2 'yq (https://github.com/mikefarah/yq) is not installed. Aborting.'
|
||||
exit 1
|
||||
}
|
||||
|
||||
function _print_usage() {
|
||||
echo 'Usage: {major|minor|patch} [chart...]'
|
||||
exit "${1:-0}"
|
||||
}
|
||||
|
||||
if [ "$#" -eq 0 ]; then
|
||||
_print_usage
|
||||
fi
|
||||
|
||||
UPDATE_TYPE="$(tr '[:upper:]' '[:lower:]' <<<"$1")"
|
||||
shift
|
||||
case "$UPDATE_TYPE" in
|
||||
major) SCRIPT='[(.0 | @yamld | . + 1), 0, 0]' ;;
|
||||
minor) SCRIPT='[.0, (.1 | @yamld | . + 1), 0]' ;;
|
||||
patch) SCRIPT='[.0, .1, (.2 | @yamld | . + 1)]' ;;
|
||||
*) echo >&2 "Invalid update type: $UPDATE_TYPE"; _print_usage 1 ;;
|
||||
esac
|
||||
|
||||
echo "Performing $UPDATE_TYPE version bump"
|
||||
|
||||
CHARTS=()
|
||||
if [ "$#" -gt 0 ]; then
|
||||
# Get changed dirs from params
|
||||
for file in "$@"; do
|
||||
CHARTS+=( "$(dirname "$file")" )
|
||||
done
|
||||
else
|
||||
# Get changed dirs from uncommitted changes
|
||||
for file in $(git status --porcelain charts | grep '^M' | cut -c4-); do
|
||||
CHARTS+=( "$(dirname "$file")" )
|
||||
done
|
||||
fi
|
||||
CHARTS=( $(sort -u <<<"${CHARTS[*]}") )
|
||||
|
||||
for chart in "${CHARTS[@]}"; do (
|
||||
meta_file="$chart/Chart.yaml"
|
||||
if [ ! -f "$meta_file" ]; then echo >&2 "Invalid file: $meta_file"; exit; fi
|
||||
|
||||
current="$(yq '.version' "$meta_file")"
|
||||
yq -i '.version |= (split(".") | '"$SCRIPT"' | join("."))' "$meta_file"
|
||||
new="$(yq '.version' "$meta_file")"
|
||||
echo "Updated $(basename "$chart") from v$current to v$new"
|
||||
) done
|
||||
Reference in New Issue
Block a user