From 4d5a24b4d591ff8f9585546bc4b14d7e4a3cb85f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Skyler=20M=C3=A4ntysaari?= Date: Thu, 2 Mar 2023 02:54:42 +0200 Subject: [PATCH] Remove non-needed files. --- .ci/ct/chart_schema.yaml | 37 - .ci/ct/ct.yaml | 14 - .ci/ct/lintconf.yaml | 42 -- .ci/repo-config.yaml | 3 - .github/workflows/charts-release-ghpages.yaml | 75 -- .github/workflows/charts-release.yaml | 50 -- .taskfiles/charts.yaml | 32 - LICENSE | 661 ------------------ README.md | 6 - Taskfile.yml | 16 - charts/apps/piped/Chart.yaml | 24 - charts/apps/piped/README_CONFIG.md.gotmpl | 9 - .../piped/templates/backend/configmap.yaml | 56 -- .../piped/templates/backend/deployment.yaml | 49 -- .../apps/piped/templates/backend/ingress.yaml | 76 -- .../templates/backend/lib/_container.tpl | 58 -- .../piped/templates/backend/lib/_env_vars.tpl | 43 -- .../piped/templates/backend/lib/_names.tpl | 111 --- .../apps/piped/templates/backend/lib/_pod.tpl | 105 --- .../piped/templates/backend/lib/_ports.tpl | 36 - .../piped/templates/backend/lib/_probes.tpl | 33 - .../piped/templates/backend/lib/_service.tpl | 185 ----- .../templates/backend/lib/_volumemounts.tpl | 60 -- .../piped/templates/backend/lib/_volumes.tpl | 71 -- .../apps/piped/templates/backend/service.yaml | 1 - charts/apps/piped/templates/common.yaml | 13 - .../piped/templates/frontend/deployment.yaml | 49 -- .../piped/templates/frontend/ingress.yaml | 76 -- .../templates/frontend/lib/_container.tpl | 54 -- .../templates/frontend/lib/_env_vars.tpl | 43 -- .../piped/templates/frontend/lib/_names.tpl | 111 --- .../piped/templates/frontend/lib/_pod.tpl | 101 --- .../piped/templates/frontend/lib/_ports.tpl | 36 - .../piped/templates/frontend/lib/_probes.tpl | 33 - .../piped/templates/frontend/lib/_service.tpl | 186 ----- .../piped/templates/frontend/service.yaml | 1 - .../piped/templates/ytproxy/deployment.yaml | 49 -- .../apps/piped/templates/ytproxy/ingress.yaml | 76 -- .../templates/ytproxy/lib/_container.tpl | 54 -- .../piped/templates/ytproxy/lib/_env_vars.tpl | 43 -- .../piped/templates/ytproxy/lib/_ingress.tpl | 19 - .../piped/templates/ytproxy/lib/_names.tpl | 111 --- .../apps/piped/templates/ytproxy/lib/_pod.tpl | 105 --- .../piped/templates/ytproxy/lib/_ports.tpl | 36 - .../piped/templates/ytproxy/lib/_probes.tpl | 33 - .../piped/templates/ytproxy/lib/_service.tpl | 186 ----- .../piped/templates/ytproxy/lib/_volumes.tpl | 64 -- .../apps/piped/templates/ytproxy/service.yaml | 1 - charts/apps/piped/values.yaml | 244 ------- 49 files changed, 3577 deletions(-) delete mode 100644 .ci/ct/chart_schema.yaml delete mode 100644 .ci/ct/ct.yaml delete mode 100644 .ci/ct/lintconf.yaml delete mode 100644 .ci/repo-config.yaml delete mode 100644 .github/workflows/charts-release-ghpages.yaml delete mode 100644 .github/workflows/charts-release.yaml delete mode 100644 .taskfiles/charts.yaml delete mode 100644 LICENSE delete mode 100644 README.md delete mode 100644 Taskfile.yml delete mode 100644 charts/apps/piped/Chart.yaml delete mode 100644 charts/apps/piped/README_CONFIG.md.gotmpl delete mode 100644 charts/apps/piped/templates/backend/configmap.yaml delete mode 100644 charts/apps/piped/templates/backend/deployment.yaml delete mode 100644 charts/apps/piped/templates/backend/ingress.yaml delete mode 100644 charts/apps/piped/templates/backend/lib/_container.tpl delete mode 100644 charts/apps/piped/templates/backend/lib/_env_vars.tpl delete mode 100644 charts/apps/piped/templates/backend/lib/_names.tpl delete mode 100644 charts/apps/piped/templates/backend/lib/_pod.tpl delete mode 100644 charts/apps/piped/templates/backend/lib/_ports.tpl delete mode 100644 charts/apps/piped/templates/backend/lib/_probes.tpl delete mode 100644 charts/apps/piped/templates/backend/lib/_service.tpl delete mode 100644 charts/apps/piped/templates/backend/lib/_volumemounts.tpl delete mode 100644 charts/apps/piped/templates/backend/lib/_volumes.tpl delete mode 100644 charts/apps/piped/templates/backend/service.yaml delete mode 100644 charts/apps/piped/templates/common.yaml delete mode 100644 charts/apps/piped/templates/frontend/deployment.yaml delete mode 100644 charts/apps/piped/templates/frontend/ingress.yaml delete mode 100644 charts/apps/piped/templates/frontend/lib/_container.tpl delete mode 100644 charts/apps/piped/templates/frontend/lib/_env_vars.tpl delete mode 100644 charts/apps/piped/templates/frontend/lib/_names.tpl delete mode 100644 charts/apps/piped/templates/frontend/lib/_pod.tpl delete mode 100644 charts/apps/piped/templates/frontend/lib/_ports.tpl delete mode 100644 charts/apps/piped/templates/frontend/lib/_probes.tpl delete mode 100644 charts/apps/piped/templates/frontend/lib/_service.tpl delete mode 100644 charts/apps/piped/templates/frontend/service.yaml delete mode 100644 charts/apps/piped/templates/ytproxy/deployment.yaml delete mode 100644 charts/apps/piped/templates/ytproxy/ingress.yaml delete mode 100644 charts/apps/piped/templates/ytproxy/lib/_container.tpl delete mode 100644 charts/apps/piped/templates/ytproxy/lib/_env_vars.tpl delete mode 100644 charts/apps/piped/templates/ytproxy/lib/_ingress.tpl delete mode 100644 charts/apps/piped/templates/ytproxy/lib/_names.tpl delete mode 100644 charts/apps/piped/templates/ytproxy/lib/_pod.tpl delete mode 100644 charts/apps/piped/templates/ytproxy/lib/_ports.tpl delete mode 100644 charts/apps/piped/templates/ytproxy/lib/_probes.tpl delete mode 100644 charts/apps/piped/templates/ytproxy/lib/_service.tpl delete mode 100644 charts/apps/piped/templates/ytproxy/lib/_volumes.tpl delete mode 100644 charts/apps/piped/templates/ytproxy/service.yaml delete mode 100644 charts/apps/piped/values.yaml diff --git a/.ci/ct/chart_schema.yaml b/.ci/ct/chart_schema.yaml deleted file mode 100644 index 9235d10..0000000 --- a/.ci/ct/chart_schema.yaml +++ /dev/null @@ -1,37 +0,0 @@ -name: str() -home: str(required=False) -version: str() -apiVersion: str() -appVersion: any(str(), num(), required=False) -description: str(required=False) -keywords: list(str(), required=False) -sources: list(str(), required=False) -maintainers: list(include('maintainer'), required=False) -dependencies: list(include('dependency'), required=False) -icon: str(required=False) -engine: str(required=False) -condition: str(required=False) -tags: str(required=False) -deprecated: bool(required=False) -kubeVersion: str(required=False) -annotations: map(str(), str(), required=True) -type: str(required=False) ---- -maintainer: - name: str() - email: str(required=False) - url: str(required=False) ---- -dependency: - name: str() - version: str() - repository: str(required=False) - condition: str(required=False) - tags: list(str(), required=False) - enabled: bool(required=False) - import-values: any(list(str()), list(include('import-value')), required=False) - alias: str(required=False) ---- -import-value: - child: str() - parent: str() diff --git a/.ci/ct/ct.yaml b/.ci/ct/ct.yaml deleted file mode 100644 index d66fac3..0000000 --- a/.ci/ct/ct.yaml +++ /dev/null @@ -1,14 +0,0 @@ - -chart-yaml-schema: .ci/ct/chart_schema.yaml -lint-conf: .ci/ct/lintconf.yaml - -remote: origin -target-branch: main - -helm-extra-args: --timeout 600s - -chart-dirs: - - charts - -chart-repos: - - bjw-s=https://bjw-s.github.io/helm-charts diff --git a/.ci/ct/lintconf.yaml b/.ci/ct/lintconf.yaml deleted file mode 100644 index 90f48c8..0000000 --- a/.ci/ct/lintconf.yaml +++ /dev/null @@ -1,42 +0,0 @@ ---- -rules: - braces: - min-spaces-inside: 0 - max-spaces-inside: 0 - min-spaces-inside-empty: -1 - max-spaces-inside-empty: -1 - brackets: - min-spaces-inside: 0 - max-spaces-inside: 0 - min-spaces-inside-empty: -1 - max-spaces-inside-empty: -1 - colons: - max-spaces-before: 0 - max-spaces-after: 1 - commas: - max-spaces-before: 0 - min-spaces-after: 1 - max-spaces-after: 1 - comments: - require-starting-space: true - min-spaces-from-content: 2 - document-end: disable - document-start: disable # No --- to start a file - empty-lines: - max: 2 - max-start: 0 - max-end: 0 - hyphens: - max-spaces-after: 1 - indentation: - spaces: consistent - indent-sequences: whatever # - list indentation will handle both indentation and without - check-multi-line-strings: false - key-duplicates: enable - line-length: disable # Lines can be any length - new-line-at-end-of-file: enable - new-lines: - type: unix - trailing-spaces: enable - truthy: - level: warning diff --git a/.ci/repo-config.yaml b/.ci/repo-config.yaml deleted file mode 100644 index 64bc02e..0000000 --- a/.ci/repo-config.yaml +++ /dev/null @@ -1,3 +0,0 @@ -excluded-charts-lint: [] - -excluded-charts-install: [] diff --git a/.github/workflows/charts-release-ghpages.yaml b/.github/workflows/charts-release-ghpages.yaml deleted file mode 100644 index ceafefa..0000000 --- a/.github/workflows/charts-release-ghpages.yaml +++ /dev/null @@ -1,75 +0,0 @@ -name: "Charts: Release to GitHub pages" - -on: - workflow_call: - inputs: - charts: - description: > - Json encoded list of Helm charts to release. - Defaults to releasing everything. - default: "[]" - required: false - type: string - -env: - HELM_VERSION: 3.10.2 - -jobs: - release-charts: - name: Release charts - #runs-on: ["self-hosted", "X64"] - runs-on: ubuntu-latest - steps: - - name: Workaround - run: export OPENSSL_CONF=/dev/null - - - name: Checkout charts branch - uses: actions/checkout@v3 - with: - token: ${{ secrets.GITHUB_TOKEN }} - path: "src" - fetch-depth: 0 - - - name: Checkout gh-pages branch - uses: actions/checkout@v3 - with: - token: ${{ secrets.GITHUB_TOKEN}} - path: "dest" - ref: "gh-pages" - fetch-depth: 0 - - - name: Install Kubernetes tools - uses: yokawasa/action-setup-kube-tools@v0.9.3 - with: - setup-tools: | - helmv3 - helm: "${{ env.HELM_VERSION }}" - - - name: Package Helm Charts - shell: bash - env: - SRC_DIR: "src/charts" - DEST_DIR: "dest" - run: | - CHARTS=( $(yq --null-input e '${{ inputs.charts }}[]' ) ) - for CHART in "${CHARTS[@]}" ; do - mapfile -t CHART_PATH_PARTS < <(echo "$CHART" | tr '/' '\n') - CHART_TYPE=${CHART_PATH_PARTS[0]} - helm dep up "${SRC_DIR}/${CHART}" - helm package "${SRC_DIR}/${CHART}" -u -d "${DEST_DIR}/${CHART_TYPE}" - done - - name: Update chart index - shell: bash - working-directory: dest - run: | - helm repo index . --url https://helm.samipsolutions.fi/ - - name: Commit changes - shell: bash - working-directory: dest - run: | - git config user.name "$GITHUB_ACTOR" - git config user.email "$GITHUB_ACTOR@users.noreply.github.com" - git add $(git ls-files -o --exclude-standard) - git add index.yaml - git commit -m "Updated from ref: $GITHUB_SHA" - git push \ No newline at end of file diff --git a/.github/workflows/charts-release.yaml b/.github/workflows/charts-release.yaml deleted file mode 100644 index 161c9de..0000000 --- a/.github/workflows/charts-release.yaml +++ /dev/null @@ -1,50 +0,0 @@ -name: "Charts: Release" - -concurrency: helm-release - -on: - workflow_dispatch: - inputs: - charts: - description: > - Charts to release. Comma-separated string. - Defaults to releasing everything. - default: "" - required: false - - push: - branches: - - main - paths: - - "charts/**" - -env: - HELM_VERSION: 3.10.2 - -jobs: - prepare: - name: Prepare data required for release - runs-on: ubuntu-latest - outputs: - charts-to-release: ${{ steps.collect-charts.outputs.charts }} - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - - name: Collect charts to release - uses: bjw-s/helm-charts-actions/collect-charts@main - id: collect-charts - with: - repoConfigFile: ./.ci/repo-config.yaml - overrideCharts: "[${{ inputs.charts }}]" - - release-github-pages: - name: Release Charts to GitHub pages - uses: ./.github/workflows/charts-release-ghpages.yaml - needs: - - prepare - with: - charts: "${{ needs.prepare.outputs.charts-to-release }}" - secrets: inherit \ No newline at end of file diff --git a/.taskfiles/charts.yaml b/.taskfiles/charts.yaml deleted file mode 100644 index fe5d7de..0000000 --- a/.taskfiles/charts.yaml +++ /dev/null @@ -1,32 +0,0 @@ ---- -version: "3" - -vars: - CT_IMAGE: quay.io/helmpack/chart-testing:v3.6.0 - REPO_CONFIG_FILE: .ci/repo-config.yaml - CT_CONFIG_FILE: .ci/ct/ct.yaml - CHARTS_EXCLUDED_FROM_LINT: - sh: yq eval '.excluded-charts-lint | join(",")' {{.REPO_CONFIG_FILE}} - CHARTS_EXCLUDED_FROM_INSTALL: - sh: yq eval '.excluded-charts-install | join(",")' {{.REPO_CONFIG_FILE}} - -tasks: - lint: - desc: Run ct-lint on charts - cmds: - - docker run --rm -it --workdir=/data --volume $(pwd):/data {{.CT_IMAGE}} ct lint --config {{.CT_CONFIG_FILE}} --excluded-charts "{{.CHARTS_EXCLUDED_FROM_LINT}}" - silent: true - - lint-all: - desc: Run ct-lint on all charts - cmds: - - docker run --rm -it --workdir=/data --volume $(pwd):/data {{.CT_IMAGE}} ct lint --config {{.CT_CONFIG_FILE}} --all --excluded-charts "{{.CHARTS_EXCLUDED_FROM_LINT}}" - silent: true - - dependency-cleanup: - desc: clean up chart dependencies - dir: "{{.PROJECT_DIR}}/charts" - cmds: - - find {{.PROJECT_DIR}}/charts/ -type f -name 'Chart.lock' -mindepth 1 -print0 | xargs -r -0 rm - - find {{.PROJECT_DIR}}/charts/ -type d -name 'charts' -mindepth 1 -print0 | xargs -r -0 rm -rf - silent: true diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 0ad25db..0000000 --- a/LICENSE +++ /dev/null @@ -1,661 +0,0 @@ - GNU AFFERO GENERAL PUBLIC LICENSE - Version 3, 19 November 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU Affero General Public License is a free, copyleft license for -software and other kinds of works, specifically designed to ensure -cooperation with the community in the case of network server software. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -our General Public Licenses are intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - Developers that use our General Public Licenses protect your rights -with two steps: (1) assert copyright on the software, and (2) offer -you this License which gives you legal permission to copy, distribute -and/or modify the software. - - A secondary benefit of defending all users' freedom is that -improvements made in alternate versions of the program, if they -receive widespread use, become available for other developers to -incorporate. Many developers of free software are heartened and -encouraged by the resulting cooperation. However, in the case of -software used on network servers, this result may fail to come about. -The GNU General Public License permits making a modified version and -letting the public access it on a server without ever releasing its -source code to the public. - - The GNU Affero General Public License is designed specifically to -ensure that, in such cases, the modified source code becomes available -to the community. It requires the operator of a network server to -provide the source code of the modified version running there to the -users of that server. Therefore, public use of a modified version, on -a publicly accessible server, gives the public access to the source -code of the modified version. - - An older license, called the Affero General Public License and -published by Affero, was designed to accomplish similar goals. This is -a different license, not a version of the Affero GPL, but Affero has -released a new version of the Affero GPL which permits relicensing under -this license. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU Affero General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Remote Network Interaction; Use with the GNU General Public License. - - Notwithstanding any other provision of this License, if you modify the -Program, your modified version must prominently offer all users -interacting with it remotely through a computer network (if your version -supports such interaction) an opportunity to receive the Corresponding -Source of your version by providing access to the Corresponding Source -from a network server at no charge, through some standard or customary -means of facilitating copying of software. This Corresponding Source -shall include the Corresponding Source for any work covered by version 3 -of the GNU General Public License that is incorporated pursuant to the -following paragraph. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the work with which it is combined will remain governed by version -3 of the GNU General Public License. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU Affero General Public License from time to time. Such new versions -will be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU Affero General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU Affero General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU Affero General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published - by the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If your software can interact with users remotely through a computer -network, you should also make sure that it provides a way for users to -get its source. For example, if your program is a web application, its -interface could display a "Source" link that leads users to an archive -of the code. There are many ways you could offer source, and different -solutions will be better for different programs; see section 13 for the -specific requirements. - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU AGPL, see -. diff --git a/README.md b/README.md deleted file mode 100644 index 9fb6e64..0000000 --- a/README.md +++ /dev/null @@ -1,6 +0,0 @@ -# Piped deployment on Kubernetes - -WORK IN PROGRESS - -This repo will house a Helm chart for Kubernetes deployments. - diff --git a/Taskfile.yml b/Taskfile.yml deleted file mode 100644 index f4b9524..0000000 --- a/Taskfile.yml +++ /dev/null @@ -1,16 +0,0 @@ ---- -version: 3 - - -vars: - PROJECT_DIR: - sh: git rev-parse --show-toplevel - -includes: - charts: .taskfiles/charts.yaml - -tasks: - default: - silent: true - cmds: - - task -l diff --git a/charts/apps/piped/Chart.yaml b/charts/apps/piped/Chart.yaml deleted file mode 100644 index 75d9e08..0000000 --- a/charts/apps/piped/Chart.yaml +++ /dev/null @@ -1,24 +0,0 @@ ---- -apiVersion: v2 -description: Piped is an alternative privacy-friendly YouTube frontend which is efficient by design. -name: piped -home: https://github.com/TeamPiped/Piped-Kubernetes -sources: - - https://github.com/TeamPiped/Piped - - https://github.com/TeamPiped/Piped-Backend - - https://github.com/TeamPiped/piped-proxy -keywords: - - streaming -version: 0.0.1 -appVersion: latest -maintainers: - - name: Skyler Mäntysaari - email: samip5@users.noreply.github.com -dependencies: - - name: common - repository: https://bjw-s.github.io/helm-charts - version: 0.1.0 - - name: postgresql - repository: https://charts.bitnami.com/bitnami - version: 12.2.0 - condition: postgresql.enabled diff --git a/charts/apps/piped/README_CONFIG.md.gotmpl b/charts/apps/piped/README_CONFIG.md.gotmpl deleted file mode 100644 index 0360bf6..0000000 --- a/charts/apps/piped/README_CONFIG.md.gotmpl +++ /dev/null @@ -1,9 +0,0 @@ -{{- define "custom.custom.configuration.header" -}} -## Custom configuration -{{- end -}} - -{{- define "custom.custom.configuration" -}} -{{ template "custom.custom.configuration.header" . }} - -N/A -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/configmap.yaml b/charts/apps/piped/templates/backend/configmap.yaml deleted file mode 100644 index 6587535..0000000 --- a/charts/apps/piped/templates/backend/configmap.yaml +++ /dev/null @@ -1,56 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: {{ include "backend.names.fullname" . }}-config - {{- with (merge (.Values.backend.labels | default dict) (include "common.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} - {{- end }} - {{- with (merge (.Values.backend.annotations | default dict) (include "common.annotations" $ | fromYaml)) }} - annotations: {{- toYaml . | nindent 4 }} - {{- end }} -data: - config.properties: | - PORT: {{ .Values.backend.config.PORT | default (8080) }} - HTTP_WORKERS: {{ .Values.backend.config.HTTP_WORKERS | default (2) }} - {{- if .Values.backend.config.HTTP_PROXY }} - HTTP_PROXY: {{ .Values.backend.config.HTTP_PROXY }} - {{ end }} - {{- if .Values.backend.config.PROXY_PART }} - PROXY_PART: {{.Values.backend.config.PROXY_PART }} - {{- else if .Values.ingress.ytproxy.enabled}} - PROXY_PART: {{ index (index .Values.ingress.ytproxy.hosts 0) "host" }} - {{- else }} - {{- fail "PROXY_PART needs to be set in config values or ytproxy ingress must be enabled."}} - {{ end }} - {{- if .Values.backend.config.API_URL }} - API_URL: {{ .Values.backend.config.API_URL }} - {{- else if .Values.ingress.backend.enabled }} - API_URL: {{ index (index .Values.ingress.backend.hosts 0) "host" }} - {{- else }} - {{- fail "API_URL needs to be set in config values or backend ingress must be enabled."}} - {{ end }} - {{- if .Values.backend.config.FRONTEND_URL }} - FRONTEND_URL: {{.Values.backend.config.FRONTEND_URL }} - {{- else if .Values.ingress.main.enabled }} - FRONTEND_URL: {{ index (index .Values.ingress.main.hosts 0) "host" }} - {{- else }} - {{- fail "FRONTEND_URL needs to be set in config values or main ingress must be enabled."}} - {{ end }} - COMPROMISED_PASSWORD_CHECK: {{ .Values.backend.config.COMPROMISED_PASSWORD_CHECK | default true }} - DISABLE_REGISTRATION: {{ .Values.backend.config.DISABLE_REGISTRATION | default false }} - FEED_RETENTION: {{ .Values.backend.config.DISABLE_REGISTRATION | int | default 30 }} - {{- if .Values.backend.config.database }} - hibernate.connection.url: {{.Values.backend.config.database.connection_url }} - hibernate.connection.driver_class: {{.Values.backend.config.database.driver_class }} - hibernate.dialect: {{.Values.backend.config.database.dialect }} - hibernate.connection.username: {{.Values.backend.config.database.username }} - hibernate.connection.password: {{.Values.backend.config.database.password }} - {{- else if .Values.postgresql.enabled }} - hibernate.connection.url: jdbc:postgresql://piped-postgresql/{{ .Values.postgresql.auth.database}} - hibernate.connection.driver_class: org.postgresql.Driver - hibernate.dialect: org.hibernate.dialect.PostgreSQLDialect - hibernate.connection.username: {{.Values.postgresql.auth.username }} - hibernate.connection.password: {{.Values.postgresql.auth.password }} - {{ end }} - SENTRY_DSN: diff --git a/charts/apps/piped/templates/backend/deployment.yaml b/charts/apps/piped/templates/backend/deployment.yaml deleted file mode 100644 index 0c44548..0000000 --- a/charts/apps/piped/templates/backend/deployment.yaml +++ /dev/null @@ -1,49 +0,0 @@ ---- -{{- if .Values.backend.enabled -}} -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ include "backend.names.fullname" . }} - {{- with (merge (.Values.backend.labels | default dict) (include "common.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} - {{- end }} - {{- with (merge (.Values.backend.annotations | default dict) (include "common.annotations" $ | fromYaml)) }} - annotations: {{- toYaml . | nindent 4 }} - {{- end }} -spec: - revisionHistoryLimit: {{ .Values.backend.revisionHistoryLimit }} - replicas: {{ .Values.backend.replicas }} - {{- $strategy := default "Recreate" .Values.backend.strategy }} - {{- if and (ne $strategy "Recreate") (ne $strategy "RollingUpdate") }} - {{- fail (printf "Not a valid strategy type for Deployment (%s)" $strategy) }} - {{- end }} - strategy: - type: {{ $strategy }} - {{- with .Values.backend.rollingUpdate }} - {{- if and (eq $strategy "RollingUpdate") (or .surge .unavailable) }} - rollingUpdate: - {{- with .unavailable }} - maxUnavailable: {{ . }} - {{- end }} - {{- with .surge }} - maxSurge: {{ . }} - {{- end }} - {{- end }} - {{- end }} - selector: - matchLabels: - {{- include "backend.labels.selectorLabels" . | nindent 6 }} - template: - metadata: - {{- with include ("backend.podAnnotations") . }} - annotations: - {{- . | nindent 8 }} - {{- end }} - labels: - {{- include "backend.labels.selectorLabels" . | nindent 8 }} - {{- with .Values.podLabels }} - {{- toYaml . | nindent 8 }} - {{- end }} - spec: - {{- include "backend.controller.pod" . | nindent 6 }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/ingress.yaml b/charts/apps/piped/templates/backend/ingress.yaml deleted file mode 100644 index adde5cf..0000000 --- a/charts/apps/piped/templates/backend/ingress.yaml +++ /dev/null @@ -1,76 +0,0 @@ ---- -{{- if .Values.ingress.backend.enabled }} - {{- $fullName := include "common.names.fullname" . -}} - {{- $ingressName := $fullName -}} - {{- $values := .Values.ingress.backend -}} - - {{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.ingress -}} - {{- $values = . -}} - {{- end -}} - {{ end -}} - - {{- if and (hasKey $values "nameOverride") $values.nameOverride -}} - {{- $ingressName = printf "%v-%v" $ingressName $values.nameOverride -}} - {{- end -}} - - {{- $primaryService := .Values.backend.service.main -}} - {{- $defaultServiceName := "piped-backend" -}} - {{- $defaultServicePort := get $primaryService.ports (include "common.classes.service.ports.primary" (dict "values" $primaryService)) -}} - {{- $isStable := include "common.capabilities.ingress.isStable" . }} - --- -apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }} -kind: Ingress -metadata: - name: {{ $ingressName }}-backend - {{- with (merge ($values.labels | default dict) (include "common.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} - {{- end }} - {{- with (merge ($values.annotations | default dict) (include "common.annotations" $ | fromYaml)) }} - annotations: {{- toYaml . | nindent 4 }} - {{- end }} -spec: - {{- if and $isStable $values.ingressClassName }} - ingressClassName: {{ $values.ingressClassName }} - {{- end }} - {{- if $values.tls }} - tls: - {{- range $values.tls }} - - hosts: - {{- range .hosts }} - - {{ tpl . $ | quote }} - {{- end }} - {{- if .secretName }} - secretName: {{ tpl .secretName $ | quote}} - {{- end }} - {{- end }} - {{- end }} - rules: - {{- range $values.hosts }} - - host: {{ tpl .host $ | quote }} - http: - paths: - {{- range .paths }} - {{- $service := $defaultServiceName -}} - {{- $port := $defaultServicePort.port -}} - {{- if .service -}} - {{- $service = default $service .service.name -}} - {{- $port = default $port .service.port -}} - {{- end }} - - path: {{ tpl .path $ | quote }} - {{- if $isStable }} - pathType: {{ default "Prefix" .pathType }} - {{- end }} - backend: - {{- if $isStable }} - service: - name: {{ $service }} - port: - number: {{ $port }} - {{- else }} - serviceName: {{ $service }} - servicePort: {{ $port }} - {{- end }} - {{- end }} - {{- end }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/lib/_container.tpl b/charts/apps/piped/templates/backend/lib/_container.tpl deleted file mode 100644 index 1c3317e..0000000 --- a/charts/apps/piped/templates/backend/lib/_container.tpl +++ /dev/null @@ -1,58 +0,0 @@ -{{- /* The main container included in the controller */ -}} -{{- define "backend.controller.mainContainer" -}} -- name: {{ include "backend.names.fullname" . }} - image: {{ printf "%s:%s" .Values.backend.image.repository (default .Chart.AppVersion .Values.backend.image.tag) | quote }} - imagePullPolicy: {{ .Values.backend.image.pullPolicy }} - {{- with .Values.backend.command }} - command: - {{- if kindIs "string" . }} - - {{ . }} - {{- else }} - {{ toYaml . | nindent 4 }} - {{- end }} - {{- end }} - {{- with .Values.backend.args }} - args: - {{- if kindIs "string" . }} - - {{ . }} - {{- else }} - {{- toYaml . | nindent 4 }} - {{- end }} - {{- end }} - {{- with .Values.backend.securityContext }} - securityContext: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- with .Values.lifecycle }} - lifecycle: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- with .Values.termination.messagePath }} - terminationMessagePath: {{ . }} - {{- end }} - {{- with .Values.termination.messagePolicy }} - terminationMessagePolicy: {{ . }} - {{- end }} - - {{- with .Values.backend.env }} - env: - {{- get (fromYaml (include "backend.controller.env_vars" $)) "env" | toYaml | nindent 4 -}} - {{- end }} - {{- if or .Values.backend.envFrom .Values.backend.secret }} - envFrom: - {{- with .Values.envFrom }} - {{- toYaml . | nindent 4 }} - {{- end }} - {{- if .Values.secret }} - - secretRef: - name: {{ include "backend.names.fullname" . }} - {{- end }} - {{- end }} - ports: - {{- include "backend.controller.ports" . | trim | nindent 4 }} - {{- with (include "backend.controller.volumeMounts" . | trim) }} - volumeMounts: - {{- nindent 4 . }} - {{- end }} - {{- include "backend.controller.probes" . | trim | nindent 2 }} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/lib/_env_vars.tpl b/charts/apps/piped/templates/backend/lib/_env_vars.tpl deleted file mode 100644 index 4b6fe2a..0000000 --- a/charts/apps/piped/templates/backend/lib/_env_vars.tpl +++ /dev/null @@ -1,43 +0,0 @@ -{{/* -Environment variables used by containers. -*/}} -{{- define "backend.controller.env_vars" -}} - {{- $values := merge .Values.backend.env .Values.common_env -}} - {{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.env -}} - {{- $values = . -}} - {{- end -}} - {{- end -}} - - {{- with $values -}} - {{- $result := list -}} - {{- range $k, $v := . -}} - {{- $name := $k -}} - {{- $value := $v -}} - {{- if kindIs "int" $name -}} - {{- $name = required "environment variables as a list of maps require a name field" $value.name -}} - {{- end -}} - - {{- if kindIs "map" $value -}} - {{- if hasKey $value "value" -}} - {{- $envValue := $value.value | toString -}} - {{- $result = append $result (dict "name" $name "value" (tpl $envValue $)) -}} - {{- else if hasKey $value "valueFrom" -}} - {{- $result = append $result (dict "name" $name "valueFrom" $value.valueFrom) -}} - {{- else -}} - {{- $result = append $result (dict "name" $name "valueFrom" $value) -}} - {{- end -}} - {{- end -}} - {{- if not (kindIs "map" $value) -}} - {{- if kindIs "string" $value -}} - {{- $result = append $result (dict "name" $name "value" (tpl $value $)) -}} - {{- else if or (kindIs "float64" $value) (kindIs "bool" $value) -}} - {{- $result = append $result (dict "name" $name "value" ($value | toString)) -}} - {{- else -}} - {{- $result = append $result (dict "name" $name "value" $value) -}} - {{- end -}} - {{- end -}} - {{- end -}} - {{- toYaml (dict "env" $result) | nindent 0 -}} - {{- end -}} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/lib/_names.tpl b/charts/apps/piped/templates/backend/lib/_names.tpl deleted file mode 100644 index 64692f8..0000000 --- a/charts/apps/piped/templates/backend/lib/_names.tpl +++ /dev/null @@ -1,111 +0,0 @@ -{{/* Expand the name of the chart */}} -{{- define "backend.names.name" -}} - {{- $globalNameOverride := "" -}} - {{- if hasKey .Values "global" -}} - {{- $globalNameOverride = (default $globalNameOverride .Values.global.nameOverride) -}} - {{- end -}} - {{- default .Chart.Name (default .Values.nameOverride $globalNameOverride) | trunc 50 | trimSuffix "-" -}}-backend -{{- 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 "backend.names.fullname" -}} - {{- $name := include "backend.names.name" . -}} - {{- $globalFullNameOverride := "" -}} - {{- if hasKey .Values "global" -}} - {{- $globalFullNameOverride = (default $globalFullNameOverride .Values.global.fullnameOverride) -}} - {{- end -}} - {{- if or .Values.fullnameOverride $globalFullNameOverride -}} - {{- $name = default .Values.fullnameOverride $globalFullNameOverride -}} - {{- else -}} - {{- if contains $name .Release.Name -}} - {{- $name = .Release.Name -}} - {{- else -}} - {{- $name = printf "%s" $name -}} - {{- end -}} - {{- end -}} - {{- trunc 50 $name | trimSuffix "-" -}} -{{- end -}} - - -{{/* Create chart name and version as used by the chart label */}} -{{- define "backend.names.chart" -}} - {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 50 | trimSuffix "-" -}} -{{- end -}} - -{{/* Create the name of the ServiceAccount to use */}} -{{- define "backend.names.serviceAccountName" -}} - {{- if .Values.serviceAccount.create -}} - {{- default (include "backend.names.fullname" .) .Values.serviceAccount.name -}} - {{- else -}} - {{- default "default" .Values.serviceAccount.name -}} - {{- end -}} -{{- end -}} - -{{/* Return the properly cased version of the controller type */}} -{{- define "backend.names.controllerType" -}} - {{- if eq .Values.controller.type "deployment" -}} - {{- print "Deployment" -}} - {{- else if eq .Values.controller.type "daemonset" -}} - {{- print "DaemonSet" -}} - {{- else if eq .Values.controller.type "statefulset" -}} - {{- print "StatefulSet" -}} - {{- else -}} - {{- fail (printf "Not a valid controller.type (%s)" .Values.controller.type) -}} - {{- end -}} -{{- end -}} - -{{/* web labels shared across objects */}} -{{- define "backend.labels" -}} -helm.sh/chart: {{ include "backend.names.chart" . }} -{{ include "backend.labels.selectorLabels" . }} - {{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} - {{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} - {{- with .Values.global.labels }} - {{- range $k, $v := . }} - {{- $name := $k }} - {{- $value := tpl $v $ }} -{{ $name }}: {{ quote $value }} - {{- end }} - {{- end }} -{{- end -}} - -{{/* Selector labels shared across objects */}} -{{- define "backend.labels.selectorLabels" -}} -app.kubernetes.io/name: {{ include "backend.names.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - - -{{/* Common annotations shared across objects */}} -{{- define "backend.annotations" -}} - {{- with .Values.global.annotations }} - {{- range $k, $v := . }} - {{- $name := $k }} - {{- $value := tpl $v $ }} -{{ $name }}: {{ quote $value }} - {{- end }} - {{- end }} -{{- end -}} - -{{/* Determine the Pod annotations used in the controller */}} -{{- define "backend.podAnnotations" -}} - {{- if .Values.podAnnotations -}} - {{- tpl (toYaml .Values.podAnnotations) . | nindent 0 -}} - {{- end -}} - - {{- $configMapsFound := false -}} - {{- range $name, $configmap := .Values.configmap -}} - {{- if $configmap.enabled -}} - {{- $configMapsFound = true -}} - {{- end -}} - {{- end -}} - {{- if $configMapsFound -}} - {{- printf "checksum/config: %v" (include ("backend.configmap") . | sha256sum) | nindent 0 -}} - {{- end -}} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/lib/_pod.tpl b/charts/apps/piped/templates/backend/lib/_pod.tpl deleted file mode 100644 index 1f047dc..0000000 --- a/charts/apps/piped/templates/backend/lib/_pod.tpl +++ /dev/null @@ -1,105 +0,0 @@ -{{- /* -The pod definition included in the controller. -*/ -}} -{{- define "backend.controller.pod" -}} - {{- with .Values.imagePullSecrets }} -imagePullSecrets: - {{- toYaml . | nindent 2 }} - {{- end }} -serviceAccountName: {{ include "backend.names.serviceAccountName" . }} -automountServiceAccountToken: {{ .Values.automountServiceAccountToken }} - {{- with .Values.podSecurityContext }} -securityContext: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.priorityClassName }} -priorityClassName: {{ . }} - {{- end }} - {{- with .Values.runtimeClassName }} -runtimeClassName: {{ . }} - {{- end }} - {{- with .Values.schedulerName }} -schedulerName: {{ . }} - {{- end }} - {{- with .Values.hostNetwork }} -hostNetwork: {{ . }} - {{- end }} - {{- with .Values.hostname }} -hostname: {{ . }} - {{- end }} - {{- if .Values.dnsPolicy }} -dnsPolicy: {{ .Values.dnsPolicy }} - {{- else if .Values.hostNetwork }} -dnsPolicy: ClusterFirstWithHostNet - {{- else }} -dnsPolicy: ClusterFirst - {{- end }} - {{- with .Values.dnsConfig }} -dnsConfig: - {{- toYaml . | nindent 2 }} - {{- end }} -enableServiceLinks: {{ .Values.enableServiceLinks }} - {{- with .Values.termination.gracePeriodSeconds }} -terminationGracePeriodSeconds: {{ . }} - {{- end }} - {{- if .Values.initContainers }} -initContainers: - {{- $initContainers := list }} - {{- range $index, $key := (keys .Values.initContainers | uniq | sortAlpha) }} - {{- $container := get $.Values.initContainers $key }} - {{- if not $container.name -}} - {{- $_ := set $container "name" $key }} - {{- end }} - {{- if $container.env -}} - {{- $_ := set $ "ObjectValues" (dict "env" $container.env) -}} - {{- $newEnv := fromYaml (include "common.controller.env_vars" $) -}} - {{- $_ := unset $.ObjectValues "env" -}} - {{- $_ := set $container "env" $newEnv.env }} - {{- end }} - {{- $initContainers = append $initContainers $container }} - {{- end }} - {{- tpl (toYaml $initContainers) $ | nindent 2 }} - {{- end }} -containers: - {{- include "backend.controller.mainContainer" . | nindent 2 }} - {{- with .Values.additionalContainers }} - {{- $additionalContainers := list }} - {{- range $name, $container := . }} - {{- if not $container.name -}} - {{- $_ := set $container "name" $name }} - {{- end }} - {{- if $container.env -}} - {{- $_ := set $ "ObjectValues" (dict "env" $container.env) -}} - {{- $newEnv := fromYaml (include "backend.controller.env_vars" $) -}} - {{- $_ := set $container "env" $newEnv.env }} - {{- $_ := unset $.ObjectValues "env" -}} - {{- end }} - {{- $additionalContainers = append $additionalContainers $container }} - {{- end }} - {{- tpl (toYaml $additionalContainers) $ | nindent 2 }} - {{- end }} - {{- with (include "backend.controller.volumes" . | trim) }} -volumes: - {{- nindent 2 . }} - {{- end }} - {{- with .Values.hostAliases }} -hostAliases: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.nodeSelector }} -nodeSelector: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.affinity }} -affinity: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.topologySpreadConstraints }} -topologySpreadConstraints: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.tolerations }} -tolerations: - {{- toYaml . | nindent 2 }} - {{- end }} -{{- end -}} diff --git a/charts/apps/piped/templates/backend/lib/_ports.tpl b/charts/apps/piped/templates/backend/lib/_ports.tpl deleted file mode 100644 index e71e0c6..0000000 --- a/charts/apps/piped/templates/backend/lib/_ports.tpl +++ /dev/null @@ -1,36 +0,0 @@ -{{/* -Ports included by the controller. -*/}} -{{- define "backend.controller.ports" -}} - {{- $ports := list -}} - {{- range .Values.backend.service -}} - {{- if .enabled -}} - {{- range $name, $port := .ports -}} - {{- $_ := set $port "name" $name -}} - {{- $ports = mustAppend $ports $port -}} - {{- end }} - {{- end }} - {{- end }} - -{{/* export/render the list of ports */}} -{{- if $ports -}} -{{- range $_ := $ports }} -{{- if .enabled }} -- name: {{ .name }} - {{- if and .targetPort (kindIs "string" .targetPort) }} - {{- fail (printf "Our charts do not support named ports for targetPort. (port name %s, targetPort %s)" .name .targetPort) }} - {{- end }} - containerPort: {{ .targetPort | default .port }} - {{- if .protocol }} - {{- if or ( eq .protocol "HTTP" ) ( eq .protocol "HTTPS" ) ( eq .protocol "TCP" ) }} - protocol: TCP - {{- else }} - protocol: {{ .protocol }} - {{- end }} - {{- else }} - protocol: TCP - {{- end }} -{{- end}} -{{- end -}} -{{- end -}} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/lib/_probes.tpl b/charts/apps/piped/templates/backend/lib/_probes.tpl deleted file mode 100644 index eabcb63..0000000 --- a/charts/apps/piped/templates/backend/lib/_probes.tpl +++ /dev/null @@ -1,33 +0,0 @@ -{{/* -Probes selection logic. -*/}} -{{- define "backend.controller.probes" -}} -{{- $primaryService := get .Values.backend.service (include "backend.service.primary" .) -}} -{{- $primaryPort := "" -}} -{{- if $primaryService -}} - {{- $primaryPort = get $primaryService.ports (include "backend.classes.service.ports.primary" (dict "serviceName" (include "backend.service.primary" .) "values" $primaryService)) -}} -{{- end -}} - -{{- range $probeName, $probe := .Values.probes }} - {{- if $probe.enabled -}} - {{- "" | nindent 0 }} - {{- $probeName }}Probe: - {{- if $probe.custom -}} - {{- $probe.spec | toYaml | nindent 2 }} - {{- else }} - {{- if and $primaryService $primaryPort -}} - {{- "tcpSocket:" | nindent 2 }} - {{- if $primaryPort.targetPort }} - {{- printf "port: %v" $primaryPort.targetPort | nindent 4 }} - {{- else}} - {{- printf "port: %v" $primaryPort.port | nindent 4 }} - {{- end }} - {{- printf "initialDelaySeconds: %v" $probe.spec.initialDelaySeconds | nindent 2 }} - {{- printf "failureThreshold: %v" $probe.spec.failureThreshold | nindent 2 }} - {{- printf "timeoutSeconds: %v" $probe.spec.timeoutSeconds | nindent 2 }} - {{- printf "periodSeconds: %v" $probe.spec.periodSeconds | nindent 2 }} - {{- end }} - {{- end }} - {{- end }} -{{- end }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/lib/_service.tpl b/charts/apps/piped/templates/backend/lib/_service.tpl deleted file mode 100644 index e5f4a08..0000000 --- a/charts/apps/piped/templates/backend/lib/_service.tpl +++ /dev/null @@ -1,185 +0,0 @@ -{{/* -Renders the Service objects required by the chart. -*/}} -{{- define "backend.service" -}} - {{- /* Generate named services as required */ -}} - {{- range $name, $service := .Values.backend.service }} - {{- if $service.enabled -}} - {{- $serviceValues := $service -}} - - {{/* set the default nameOverride to the service name */}} - {{- if and (not $serviceValues.nameOverride) (ne $name (include "backend.service.primary" $)) -}} - {{- $_ := set $serviceValues "nameOverride" $name -}} - {{ end -}} - - {{- $_ := set $ "ObjectValues" (dict "service" $serviceValues) -}} - {{- include "backend.classes.service" $ }} - {{- end }} - {{- end }} -{{- end }} - -{{/* -Return the primary service object -*/}} -{{- define "backend.service.primary" -}} - {{- $enabledServices := dict -}} - {{- range $name, $service := .Values.backend.service -}} - {{- if $service.enabled -}} - {{- $_ := set $enabledServices $name . -}} - {{- end -}} - {{- end -}} - - {{- $result := "" -}} - {{- range $name, $service := $enabledServices -}} - {{- if and (hasKey $service "primary") $service.primary -}} - {{- $result = $name -}} - {{- end -}} - {{- end -}} - - {{- if not $result -}} - {{- $result = keys $enabledServices | first -}} - {{- end -}} - {{- $result -}} -{{- end -}} - -{{/* -Return the primary port for a given Service object. -*/}} -{{- define "backend.classes.service.ports.primary" -}} - {{- $enabledPorts := dict -}} - {{- range $name, $port := .values.ports -}} - {{- if $port.enabled -}} - {{- $_ := set $enabledPorts $name . -}} - {{- end -}} - {{- end -}} - - {{- if eq 0 (len $enabledPorts) }} - {{- fail (printf "No ports are enabled for service \"%s\"!" .serviceName) }} - {{- end }} - - {{- $result := "" -}} - {{- range $name, $port := $enabledPorts -}} - {{- if and (hasKey $port "primary") $port.primary -}} - {{- $result = $name -}} - {{- end -}} - {{- end -}} - - {{- if not $result -}} - {{- $result = keys $enabledPorts | first -}} - {{- end -}} - {{- $result -}} -{{- end -}} - -{{/* -This saves the name of the service in a global variable -*/}} -{{- define "backend.servicename" -}} -{{- $values := .Values.backend.service -}} -{{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.service -}} - {{- $values = . -}} - {{- end -}} -{{ end -}} - -{{- $serviceName := include "backend.names.fullname" . -}} -{{- if and (hasKey $values "nameOverride") $values.nameOverride -}} - {{- $serviceName = printf "%v-%v" $serviceName $values.nameOverride -}} -{{ end -}} -{{ $serviceName }} -{{- end -}} - - -{{/* -This template serves as a blueprint for all Service objects that are created. -*/}} -{{- define "backend.classes.service" -}} -{{- $values := .Values.backend.service -}} -{{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.service -}} - {{- $values = . -}} - {{- end -}} -{{ end -}} - -{{- $serviceName := include "backend.names.fullname" . -}} -{{- if and (hasKey $values "nameOverride") $values.nameOverride -}} - {{- $serviceName = printf "%v-%v" $serviceName $values.nameOverride -}} -{{ end -}} -{{- $svcType := $values.type | default "" -}} -{{- $primaryPort := get $values.ports (include "backend.classes.service.ports.primary" (dict "values" $values)) }} ---- -apiVersion: v1 -kind: Service -metadata: - name: piped-backend - {{- with (merge ($values.labels | default dict) (include "backend.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} - {{- end }} - annotations: - {{- with (merge ($values.annotations | default dict) (include "backend.annotations" $ | fromYaml)) }} - {{ toYaml . | nindent 4 }} - {{- end }} -spec: - {{- if (or (eq $svcType "ClusterIP") (empty $svcType)) }} - type: ClusterIP - {{- if $values.clusterIP }} - clusterIP: {{ $values.clusterIP }} - {{end}} - {{- else if eq $svcType "LoadBalancer" }} - type: {{ $svcType }} - {{- if $values.loadBalancerIP }} - loadBalancerIP: {{ $values.loadBalancerIP }} - {{- end }} - {{- if $values.loadBalancerSourceRanges }} - loadBalancerSourceRanges: - {{ toYaml $values.loadBalancerSourceRanges | nindent 4 }} - {{- end -}} - {{- else }} - type: {{ $svcType }} - {{- end }} - {{- if $values.externalTrafficPolicy }} - externalTrafficPolicy: {{ $values.externalTrafficPolicy }} - {{- end }} - {{- if $values.sessionAffinity }} - sessionAffinity: {{ $values.sessionAffinity }} - {{- if $values.sessionAffinityConfig }} - sessionAffinityConfig: - {{ toYaml $values.sessionAffinityConfig | nindent 4 }} - {{- end -}} - {{- end }} - {{- with $values.externalIPs }} - externalIPs: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- if $values.publishNotReadyAddresses }} - publishNotReadyAddresses: {{ $values.publishNotReadyAddresses }} - {{- end }} - {{- if $values.ipFamilyPolicy }} - ipFamilyPolicy: {{ $values.ipFamilyPolicy }} - {{- end }} - {{- with $values.ipFamilies }} - ipFamilies: - {{ toYaml . | nindent 4 }} - {{- end }} - ports: - {{- range $name, $port := $values.ports }} - {{- if $port.enabled }} - - port: {{ $port.port }} - targetPort: {{ $port.targetPort | default $name }} - {{- if $port.protocol }} - {{- if or ( eq $port.protocol "HTTP" ) ( eq $port.protocol "HTTPS" ) ( eq $port.protocol "TCP" ) }} - protocol: TCP - {{- else }} - protocol: {{ $port.protocol }} - {{- end }} - {{- else }} - protocol: TCP - {{- end }} - name: {{ $name }} - {{- if (and (eq $svcType "NodePort") (not (empty $port.nodePort))) }} - nodePort: {{ $port.nodePort }} - {{ end }} - {{- end }} - {{- end }} - selector: - {{- include "backend.labels.selectorLabels" . | nindent 4 }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/lib/_volumemounts.tpl b/charts/apps/piped/templates/backend/lib/_volumemounts.tpl deleted file mode 100644 index a2db5fc..0000000 --- a/charts/apps/piped/templates/backend/lib/_volumemounts.tpl +++ /dev/null @@ -1,60 +0,0 @@ -{{/* Volumes included by the controller */}} -{{- define "backend.controller.volumeMounts" -}} - {{- range $persistenceIndex, $persistenceItem := .Values.persistence }} - {{- if $persistenceItem.enabled -}} - {{- if kindIs "slice" $persistenceItem.subPath -}} - {{- if $persistenceItem.mountPath -}} - {{- fail (printf "Cannot use persistence.mountPath with a subPath list (%s)" $persistenceIndex) }} - {{- end -}} - {{- range $subPathIndex, $subPathItem := $persistenceItem.subPath }} -- name: {{ $persistenceIndex }} - subPath: {{ required "subPaths as a list of maps require a path field" $subPathItem.path }} - mountPath: {{ required "subPaths as a list of maps require an explicit mountPath field" $subPathItem.mountPath }} - {{- with $subPathItem.readOnly }} - readOnly: {{ . }} - {{- end }} - {{- with $subPathItem.mountPropagation }} - mountPropagation: {{ . }} - {{- end }} - {{- end -}} - {{- else -}} - {{/* Set the default mountPath to / */}} - {{- $mountPath := (printf "/%v" $persistenceIndex) -}} - {{- if eq "hostPath" (default "pvc" $persistenceItem.type) -}} - {{- $mountPath = $persistenceItem.hostPath -}} - {{- end -}} - {{/* Use the specified mountPath if provided */}} - {{- with $persistenceItem.mountPath -}} - {{- $mountPath = . -}} - {{- end }} - {{- if ne $mountPath "-" }} -- name: {{ $persistenceIndex }} - mountPath: {{ $mountPath }} - {{- with $persistenceItem.subPath }} - subPath: {{ . }} - {{- end }} - {{- with $persistenceItem.readOnly }} - readOnly: {{ . }} - {{- end }} - {{- with $persistenceItem.mountPropagation }} - mountPropagation: {{ . }} - {{- end }} - {{- end }} - {{- end -}} - {{- end -}} - {{- end }} - - {{- if eq .Values.controller.type "statefulset" }} - {{- range $index, $vct := .Values.volumeClaimTemplates }} -- mountPath: {{ $vct.mountPath }} - name: {{ $vct.name }} - {{- if $vct.subPath }} - subPath: {{ $vct.subPath }} - {{- end }} - {{- end }} - {{- end }} -- name: config-volume - mountPath: /app/config.properties - subPath: config.properties - readOnly: true -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/lib/_volumes.tpl b/charts/apps/piped/templates/backend/lib/_volumes.tpl deleted file mode 100644 index 51bbf2e..0000000 --- a/charts/apps/piped/templates/backend/lib/_volumes.tpl +++ /dev/null @@ -1,71 +0,0 @@ -{{/* -Volumes included by the controller. -*/}} -{{- define "backend.controller.volumes" -}} -{{- range $index, $persistence := .Values.persistence }} -{{- if $persistence.enabled }} -- name: {{ $index }} - {{- if eq (default "pvc" $persistence.type) "pvc" }} - {{- $pvcName := (include "common.names.fullname" $) -}} - {{- if $persistence.existingClaim }} - {{- /* Always prefer an existingClaim if that is set */}} - {{- $pvcName = $persistence.existingClaim -}} - {{- else -}} - {{- /* Otherwise refer to the PVC name */}} - {{- if $persistence.nameOverride -}} - {{- if not (eq $persistence.nameOverride "-") -}} - {{- $pvcName = (printf "%s-%s" (include "common.names.fullname" $) $persistence.nameOverride) -}} - {{- end -}} - {{- else -}} - {{- $pvcName = (printf "%s-%s" (include "common.names.fullname" $) $index) -}} - {{- end -}} - {{- end }} - persistentVolumeClaim: - claimName: {{ $pvcName }} - {{- else if or (eq $persistence.type "configMap") (eq $persistence.type "secret") }} - {{- $objectName := (required (printf "name not set for persistence item %s" $index) $persistence.name) }} - {{- $objectName = tpl $objectName $ }} - {{- if eq $persistence.type "configMap" }} - configMap: - name: {{ $objectName }} - {{- else }} - secret: - secretName: {{ $objectName }} - {{- end }} - {{- with $persistence.defaultMode }} - defaultMode: {{ . }} - {{- end }} - {{- with $persistence.items }} - items: - {{- toYaml . | nindent 6 }} - {{- end }} - {{- else if eq $persistence.type "emptyDir" }} - {{- $emptyDir := dict -}} - {{- with $persistence.medium -}} - {{- $_ := set $emptyDir "medium" . -}} - {{- end -}} - {{- with $persistence.sizeLimit -}} - {{- $_ := set $emptyDir "sizeLimit" . -}} - {{- end }} - emptyDir: {{- $emptyDir | toYaml | nindent 4 }} - {{- else if eq $persistence.type "hostPath" }} - hostPath: - path: {{ required "hostPath not set" $persistence.hostPath }} - {{- with $persistence.hostPathType }} - type: {{ . }} - {{- end }} - {{- else if eq $persistence.type "nfs" }} - nfs: - server: {{ required "server not set" $persistence.server }} - path: {{ required "path not set" $persistence.path }} - {{- else if eq $persistence.type "custom" }} - {{- toYaml $persistence.volumeSpec | nindent 2 }} - {{- else }} - {{- fail (printf "Not a valid persistence.type (%s)" .Values.persistence.type) }} - {{- end }} -{{- end }} -{{- end }} -- name: config-volume - configMap: - name: {{ include "backend.names.fullname" . }}-config -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/backend/service.yaml b/charts/apps/piped/templates/backend/service.yaml deleted file mode 100644 index 3dce526..0000000 --- a/charts/apps/piped/templates/backend/service.yaml +++ /dev/null @@ -1 +0,0 @@ -{{ include "backend.service" . | nindent 0 }} \ No newline at end of file diff --git a/charts/apps/piped/templates/common.yaml b/charts/apps/piped/templates/common.yaml deleted file mode 100644 index bd7db60..0000000 --- a/charts/apps/piped/templates/common.yaml +++ /dev/null @@ -1,13 +0,0 @@ ---- -{{- include "common.values.setup" . }} - -{{- define "app-template.hardcodedValues" -}} - -# Set the nameOverride based on the release name if no override has been set -{{ if not .Values.global.nameOverride }} -global: - nameOverride: "{{ .Release.Name }}" -{{ end }} - -{{- end -}} -{{- $_ := mergeOverwrite .Values (include "app-template.hardcodedValues" . | fromYaml) -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/frontend/deployment.yaml b/charts/apps/piped/templates/frontend/deployment.yaml deleted file mode 100644 index d7c0f46..0000000 --- a/charts/apps/piped/templates/frontend/deployment.yaml +++ /dev/null @@ -1,49 +0,0 @@ ---- -{{- if .Values.frontend.enabled -}} -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ include "frontend.names.fullname" . }} - {{- with (merge (.Values.frontend.labels | default dict) (include "common.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} - {{- end }} - {{- with (merge (.Values.frontend.annotations | default dict) (include "common.annotations" $ | fromYaml)) }} - annotations: {{- toYaml . | nindent 4 }} - {{- end }} -spec: - revisionHistoryLimit: {{ .Values.frontend.revisionHistoryLimit }} - replicas: {{ .Values.frontend.replicas }} - {{- $strategy := default "Recreate" .Values.frontend.strategy }} - {{- if and (ne $strategy "Recreate") (ne $strategy "RollingUpdate") }} - {{- fail (printf "Not a valid strategy type for Deployment (%s)" $strategy) }} - {{- end }} - strategy: - type: {{ $strategy }} - {{- with .Values.frontend.rollingUpdate }} - {{- if and (eq $strategy "RollingUpdate") (or .surge .unavailable) }} - rollingUpdate: - {{- with .unavailable }} - maxUnavailable: {{ . }} - {{- end }} - {{- with .surge }} - maxSurge: {{ . }} - {{- end }} - {{- end }} - {{- end }} - selector: - matchLabels: - {{- include "frontend.labels.selectorLabels" . | nindent 6 }} - template: - metadata: - {{- with include ("frontend.podAnnotations") . }} - annotations: - {{- . | nindent 8 }} - {{- end }} - labels: - {{- include "frontend.labels.selectorLabels" . | nindent 8 }} - {{- with .Values.podLabels }} - {{- toYaml . | nindent 8 }} - {{- end }} - spec: - {{- include "frontend.controller.pod" . | nindent 6 }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/frontend/ingress.yaml b/charts/apps/piped/templates/frontend/ingress.yaml deleted file mode 100644 index 8b048e1..0000000 --- a/charts/apps/piped/templates/frontend/ingress.yaml +++ /dev/null @@ -1,76 +0,0 @@ ---- -{{- if .Values.ingress.main.enabled }} - {{- $fullName := include "common.names.fullname" . -}} - {{- $ingressName := $fullName -}} - {{- $values := .Values.ingress.main -}} - - {{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.ingress -}} - {{- $values = . -}} - {{- end -}} - {{ end -}} - - {{- if and (hasKey $values "nameOverride") $values.nameOverride -}} - {{- $ingressName = printf "%v-%v" $ingressName $values.nameOverride -}} - {{- end -}} - - {{- $primaryService := .Values.frontend.service.main -}} - {{- $defaultServiceName := "piped-frontend" -}} - {{- $defaultServicePort := get $primaryService.ports (include "common.classes.service.ports.primary" (dict "values" $primaryService)) -}} - {{- $isStable := include "common.capabilities.ingress.isStable" . }} ---- -apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }} -kind: Ingress -metadata: - name: {{ $ingressName }} -{{- with (merge ($values.labels | default dict) (include "common.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} -{{- end }} -{{- with (merge ($values.annotations | default dict) (include "common.annotations" $ | fromYaml)) }} - annotations: {{- toYaml . | nindent 4 }} -{{- end }} -spec: -{{- if and $isStable $values.ingressClassName }} - ingressClassName: {{ $values.ingressClassName }} -{{- end }} -{{- if $values.tls }} - tls: - {{- range $values.tls }} - - hosts: - {{- range .hosts }} - - {{ tpl . $ | quote }} - {{- end }} - {{- if .secretName }} - secretName: {{ tpl .secretName $ | quote}} - {{- end }} - {{- end }} -{{- end }} - rules: -{{- range $values.hosts }} - - host: {{ tpl .host $ | quote }} - http: - paths: - {{- range .paths }} - {{- $service := $defaultServiceName -}} - {{- $port := $defaultServicePort.port -}} - {{- if .service -}} - {{- $service = default $service .service.name -}} - {{- $port = default $port .service.port -}} - {{- end }} - - path: {{ tpl .path $ | quote }} - {{- if $isStable }} - pathType: {{ default "Prefix" .pathType }} - {{- end }} - backend: - {{- if $isStable }} - service: - name: {{ $service }} - port: - number: {{ $port }} - {{- else }} - serviceName: {{ $service }} - servicePort: {{ $port }} - {{- end }} - {{- end }} -{{- end }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/frontend/lib/_container.tpl b/charts/apps/piped/templates/frontend/lib/_container.tpl deleted file mode 100644 index 0995de6..0000000 --- a/charts/apps/piped/templates/frontend/lib/_container.tpl +++ /dev/null @@ -1,54 +0,0 @@ -{{- /* The main container included in the controller */ -}} -{{- define "frontend.controller.mainContainer" -}} -- name: {{ include "frontend.names.fullname" . }} - image: {{ printf "%s:%s" .Values.frontend.image.repository (default .Chart.AppVersion .Values.frontend.image.tag) | quote }} - imagePullPolicy: {{ .Values.frontend.image.pullPolicy }} - {{- with .Values.frontend.command }} - command: - {{- if kindIs "string" . }} - - {{ . }} - {{- else }} - {{ toYaml . | nindent 4 }} - {{- end }} - {{- end }} - {{- with .Values.frontend.args }} - args: - {{- if kindIs "string" . }} - - {{ . }} - {{- else }} - {{ toYaml . | nindent 4 }} - {{- end }} - {{- end }} - {{- with .Values.frontend.securityContext }} - securityContext: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- with .Values.lifecycle }} - lifecycle: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- with .Values.termination.messagePath }} - terminationMessagePath: {{ . }} - {{- end }} - {{- with .Values.termination.messagePolicy }} - terminationMessagePolicy: {{ . }} - {{- end }} - - {{- with .Values.frontend.env }} - env: - {{- get (fromYaml (include "frontend.controller.env_vars" $)) "env" | toYaml | nindent 4 -}} - {{- end }} - {{- if or .Values.frontend.envFrom .Values.frontend.secret }} - envFrom: - {{- with .Values.envFrom }} - {{- toYaml . | nindent 4 }} - {{- end }} - {{- if .Values.secret }} - - secretRef: - name: {{ include "frontend.names.fullname" . }} - {{- end }} - {{- end }} - {{- include "frontend.controller.probes" . | trim | nindent 2 }} - ports: - {{- include "frontend.controller.ports" . | trim | nindent 4 }} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/frontend/lib/_env_vars.tpl b/charts/apps/piped/templates/frontend/lib/_env_vars.tpl deleted file mode 100644 index 308d4fe..0000000 --- a/charts/apps/piped/templates/frontend/lib/_env_vars.tpl +++ /dev/null @@ -1,43 +0,0 @@ -{{/* -Environment variables used by containers. -*/}} -{{- define "frontend.controller.env_vars" -}} - {{- $values := merge .Values.frontend.env -}} - {{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.env -}} - {{- $values = . -}} - {{- end -}} - {{- end -}} - - {{- with $values -}} - {{- $result := list -}} - {{- range $k, $v := . -}} - {{- $name := $k -}} - {{- $value := $v -}} - {{- if kindIs "int" $name -}} - {{- $name = required "environment variables as a list of maps require a name field" $value.name -}} - {{- end -}} - - {{- if kindIs "map" $value -}} - {{- if hasKey $value "value" -}} - {{- $envValue := $value.value | toString -}} - {{- $result = append $result (dict "name" $name "value" (tpl $envValue $)) -}} - {{- else if hasKey $value "valueFrom" -}} - {{- $result = append $result (dict "name" $name "valueFrom" $value.valueFrom) -}} - {{- else -}} - {{- $result = append $result (dict "name" $name "valueFrom" $value) -}} - {{- end -}} - {{- end -}} - {{- if not (kindIs "map" $value) -}} - {{- if kindIs "string" $value -}} - {{- $result = append $result (dict "name" $name "value" (tpl $value $)) -}} - {{- else if or (kindIs "float64" $value) (kindIs "bool" $value) -}} - {{- $result = append $result (dict "name" $name "value" ($value | toString)) -}} - {{- else -}} - {{- $result = append $result (dict "name" $name "value" $value) -}} - {{- end -}} - {{- end -}} - {{- end -}} - {{- toYaml (dict "env" $result) | nindent 0 -}} - {{- end -}} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/frontend/lib/_names.tpl b/charts/apps/piped/templates/frontend/lib/_names.tpl deleted file mode 100644 index d27d860..0000000 --- a/charts/apps/piped/templates/frontend/lib/_names.tpl +++ /dev/null @@ -1,111 +0,0 @@ -{{/* Expand the name of the chart */}} -{{- define "frontend.names.name" -}} - {{- $globalNameOverride := "" -}} - {{- if hasKey .Values "global" -}} - {{- $globalNameOverride = (default $globalNameOverride .Values.global.nameOverride) -}} - {{- end -}} - {{- default .Chart.Name (default .Values.nameOverride $globalNameOverride) | trunc 50 | trimSuffix "-" -}}-frontend -{{- 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 "frontend.names.fullname" -}} - {{- $name := include "frontend.names.name" . -}} - {{- $globalFullNameOverride := "" -}} - {{- if hasKey .Values "global" -}} - {{- $globalFullNameOverride = (default $globalFullNameOverride .Values.global.fullnameOverride) -}} - {{- end -}} - {{- if or .Values.fullnameOverride $globalFullNameOverride -}} - {{- $name = default .Values.fullnameOverride $globalFullNameOverride -}} - {{- else -}} - {{- if contains $name .Release.Name -}} - {{- $name = .Release.Name -}} - {{- else -}} - {{- $name = printf "%s" $name -}} - {{- end -}} - {{- end -}} - {{- trunc 50 $name | trimSuffix "-" -}} -{{- end -}} - - -{{/* Create chart name and version as used by the chart label */}} -{{- define "frontend.names.chart" -}} - {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 50 | trimSuffix "-" -}} -{{- end -}} - -{{/* Create the name of the ServiceAccount to use */}} -{{- define "frontend.names.serviceAccountName" -}} - {{- if .Values.serviceAccount.create -}} - {{- default (include "frontend.names.fullname" .) .Values.serviceAccount.name -}} - {{- else -}} - {{- default "default" .Values.serviceAccount.name -}} - {{- end -}} -{{- end -}} - -{{/* Return the properly cased version of the controller type */}} -{{- define "frontend.names.controllerType" -}} - {{- if eq .Values.controller.type "deployment" -}} - {{- print "Deployment" -}} - {{- else if eq .Values.controller.type "daemonset" -}} - {{- print "DaemonSet" -}} - {{- else if eq .Values.controller.type "statefulset" -}} - {{- print "StatefulSet" -}} - {{- else -}} - {{- fail (printf "Not a valid controller.type (%s)" .Values.controller.type) -}} - {{- end -}} -{{- end -}} - -{{/* web labels shared across objects */}} -{{- define "frontend.labels" -}} -helm.sh/chart: {{ include "frontend.names.chart" . }} -{{ include "frontend.labels.selectorLabels" . }} - {{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} - {{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} - {{- with .Values.global.labels }} - {{- range $k, $v := . }} - {{- $name := $k }} - {{- $value := tpl $v $ }} -{{ $name }}: {{ quote $value }} - {{- end }} - {{- end }} -{{- end -}} - -{{/* Selector labels shared across objects */}} -{{- define "frontend.labels.selectorLabels" -}} -app.kubernetes.io/name: {{ include "frontend.names.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - - -{{/* Common annotations shared across objects */}} -{{- define "frontend.annotations" -}} - {{- with .Values.global.annotations }} - {{- range $k, $v := . }} - {{- $name := $k }} - {{- $value := tpl $v $ }} -{{ $name }}: {{ quote $value }} - {{- end }} - {{- end }} -{{- end -}} - -{{/* Determine the Pod annotations used in the controller */}} -{{- define "frontend.podAnnotations" -}} - {{- if .Values.podAnnotations -}} - {{- tpl (toYaml .Values.podAnnotations) . | nindent 0 -}} - {{- end -}} - - {{- $configMapsFound := false -}} - {{- range $name, $configmap := .Values.configmap -}} - {{- if $configmap.enabled -}} - {{- $configMapsFound = true -}} - {{- end -}} - {{- end -}} - {{- if $configMapsFound -}} - {{- printf "checksum/config: %v" (include ("frontend.configmap") . | sha256sum) | nindent 0 -}} - {{- end -}} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/frontend/lib/_pod.tpl b/charts/apps/piped/templates/frontend/lib/_pod.tpl deleted file mode 100644 index 66eca12..0000000 --- a/charts/apps/piped/templates/frontend/lib/_pod.tpl +++ /dev/null @@ -1,101 +0,0 @@ -{{- /* -The pod definition included in the controller. -*/ -}} -{{- define "frontend.controller.pod" -}} - {{- with .Values.imagePullSecrets }} -imagePullSecrets: - {{- toYaml . | nindent 2 }} - {{- end }} -serviceAccountName: {{ include "frontend.names.serviceAccountName" . }} -automountServiceAccountToken: {{ .Values.automountServiceAccountToken }} - {{- with .Values.podSecurityContext }} -securityContext: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.priorityClassName }} -priorityClassName: {{ . }} - {{- end }} - {{- with .Values.runtimeClassName }} -runtimeClassName: {{ . }} - {{- end }} - {{- with .Values.schedulerName }} -schedulerName: {{ . }} - {{- end }} - {{- with .Values.hostNetwork }} -hostNetwork: {{ . }} - {{- end }} - {{- with .Values.hostname }} -hostname: {{ . }} - {{- end }} - {{- if .Values.dnsPolicy }} -dnsPolicy: {{ .Values.dnsPolicy }} - {{- else if .Values.hostNetwork }} -dnsPolicy: ClusterFirstWithHostNet - {{- else }} -dnsPolicy: ClusterFirst - {{- end }} - {{- with .Values.dnsConfig }} -dnsConfig: - {{- toYaml . | nindent 2 }} - {{- end }} -enableServiceLinks: {{ .Values.enableServiceLinks }} - {{- with .Values.termination.gracePeriodSeconds }} -terminationGracePeriodSeconds: {{ . }} - {{- end }} - {{- if .Values.initContainers }} -initContainers: - {{- $initContainers := list }} - {{- range $index, $key := (keys .Values.initContainers | uniq | sortAlpha) }} - {{- $container := get $.Values.initContainers $key }} - {{- if not $container.name -}} - {{- $_ := set $container "name" $key }} - {{- end }} - {{- if $container.env -}} - {{- $_ := set $ "ObjectValues" (dict "env" $container.env) -}} - {{- $newEnv := fromYaml (include "common.controller.env_vars" $) -}} - {{- $_ := unset $.ObjectValues "env" -}} - {{- $_ := set $container "env" $newEnv.env }} - {{- end }} - {{- $initContainers = append $initContainers $container }} - {{- end }} - {{- tpl (toYaml $initContainers) $ | nindent 2 }} - {{- end }} -containers: - {{- include "frontend.controller.mainContainer" . | nindent 2 }} - {{- with .Values.additionalContainers }} - {{- $additionalContainers := list }} - {{- range $name, $container := . }} - {{- if not $container.name -}} - {{- $_ := set $container "name" $name }} - {{- end }} - {{- if $container.env -}} - {{- $_ := set $ "ObjectValues" (dict "env" $container.env) -}} - {{- $newEnv := fromYaml (include "frontend.controller.env_vars" $) -}} - {{- $_ := set $container "env" $newEnv.env }} - {{- $_ := unset $.ObjectValues "env" -}} - {{- end }} - {{- $additionalContainers = append $additionalContainers $container }} - {{- end }} - {{- tpl (toYaml $additionalContainers) $ | nindent 2 }} - {{- end }} - {{- with .Values.hostAliases }} -hostAliases: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.nodeSelector }} -nodeSelector: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.affinity }} -affinity: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.topologySpreadConstraints }} -topologySpreadConstraints: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.tolerations }} -tolerations: - {{- toYaml . | nindent 2 }} - {{- end }} -{{- end -}} diff --git a/charts/apps/piped/templates/frontend/lib/_ports.tpl b/charts/apps/piped/templates/frontend/lib/_ports.tpl deleted file mode 100644 index 4d78d15..0000000 --- a/charts/apps/piped/templates/frontend/lib/_ports.tpl +++ /dev/null @@ -1,36 +0,0 @@ -{{/* -Ports included by the controller. -*/}} -{{- define "frontend.controller.ports" -}} - {{- $ports := list -}} - {{- range .Values.frontend.service -}} - {{- if .enabled -}} - {{- range $name, $port := .ports -}} - {{- $_ := set $port "name" $name -}} - {{- $ports = mustAppend $ports $port -}} - {{- end }} - {{- end }} - {{- end }} - -{{/* export/render the list of ports */}} -{{- if $ports -}} -{{- range $_ := $ports }} -{{- if .enabled }} -- name: {{ .name }} - {{- if and .targetPort (kindIs "string" .targetPort) }} - {{- fail (printf "Our charts do not support named ports for targetPort. (port name %s, targetPort %s)" .name .targetPort) }} - {{- end }} - containerPort: {{ .targetPort | default .port }} - {{- if .protocol }} - {{- if or ( eq .protocol "HTTP" ) ( eq .protocol "HTTPS" ) ( eq .protocol "TCP" ) }} - protocol: TCP - {{- else }} - protocol: {{ .protocol }} - {{- end }} - {{- else }} - protocol: TCP - {{- end }} -{{- end}} -{{- end -}} -{{- end -}} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/frontend/lib/_probes.tpl b/charts/apps/piped/templates/frontend/lib/_probes.tpl deleted file mode 100644 index 9bf08a6..0000000 --- a/charts/apps/piped/templates/frontend/lib/_probes.tpl +++ /dev/null @@ -1,33 +0,0 @@ -{{/* -Probes selection logic. -*/}} -{{- define "frontend.controller.probes" -}} -{{- $primaryService := get .Values.backend.service (include "frontend.service.primary" .) -}} -{{- $primaryPort := "" -}} -{{- if $primaryService -}} - {{- $primaryPort = get $primaryService.ports (include "frontend.classes.service.ports.primary" (dict "serviceName" (include "frontend.service.primary" .) "values" $primaryService)) -}} -{{- end -}} - -{{- range $probeName, $probe := .Values.probes }} - {{- if $probe.enabled -}} - {{- "" | nindent 0 }} - {{- $probeName }}Probe: - {{- if $probe.custom -}} - {{- $probe.spec | toYaml | nindent 2 }} - {{- else }} - {{- if and $primaryService $primaryPort -}} - {{- "tcpSocket:" | nindent 2 }} - {{- if $primaryPort.targetPort }} - {{- printf "port: %v" $primaryPort.targetPort | nindent 4 }} - {{- else}} - {{- printf "port: %v" $primaryPort.port | nindent 4 }} - {{- end }} - {{- printf "initialDelaySeconds: %v" $probe.spec.initialDelaySeconds | nindent 2 }} - {{- printf "failureThreshold: %v" $probe.spec.failureThreshold | nindent 2 }} - {{- printf "timeoutSeconds: %v" $probe.spec.timeoutSeconds | nindent 2 }} - {{- printf "periodSeconds: %v" $probe.spec.periodSeconds | nindent 2 }} - {{- end }} - {{- end }} - {{- end }} -{{- end }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/frontend/lib/_service.tpl b/charts/apps/piped/templates/frontend/lib/_service.tpl deleted file mode 100644 index 6322ae8..0000000 --- a/charts/apps/piped/templates/frontend/lib/_service.tpl +++ /dev/null @@ -1,186 +0,0 @@ -{{/* -Renders the Service objects required by the chart. -*/}} -{{- define "frontend.service" -}} - {{- /* Generate named services as required */ -}} - {{- range $name, $service := .Values.frontend.service }} - {{- if $service.enabled -}} - {{- $serviceValues := $service -}} - - {{/* set the default nameOverride to the service name */}} - {{- if and (not $serviceValues.nameOverride) (ne $name (include "frontend.service.primary" $)) -}} - {{- $_ := set $serviceValues "nameOverride" $name -}} - {{ end -}} - - {{- $_ := set $ "ObjectValues" (dict "service" $serviceValues) -}} - {{- include "frontend.classes.service" $ }} - {{- end }} - {{- end }} -{{- end }} - -{{/* -Return the primary service object -*/}} -{{- define "frontend.service.primary" -}} - {{- $enabledServices := dict -}} - {{- range $name, $service := .Values.frontend.service -}} - {{- if $service.enabled -}} - {{- $_ := set $enabledServices $name . -}} - {{- end -}} - {{- end -}} - - {{- $result := "" -}} - {{- range $name, $service := $enabledServices -}} - {{- if and (hasKey $service "primary") $service.primary -}} - {{- $result = $name -}} - {{- end -}} - {{- end -}} - - {{- if not $result -}} - {{- $result = keys $enabledServices | first -}} - {{- end -}} - {{- $result -}} -{{- end -}} - -{{/* -Return the primary port for a given Service object. -*/}} -{{- define "frontend.classes.service.ports.primary" -}} - {{- $enabledPorts := dict -}} - {{- range $name, $port := .values.ports -}} - {{- if $port.enabled -}} - {{- $_ := set $enabledPorts $name . -}} - {{- end -}} - {{- end -}} - - {{- if eq 0 (len $enabledPorts) }} - {{- fail (printf "No ports are enabled for service \"%s\"!" .serviceName) }} - {{- end }} - - {{- $result := "" -}} - {{- range $name, $port := $enabledPorts -}} - {{- if and (hasKey $port "primary") $port.primary -}} - {{- $result = $name -}} - {{- end -}} - {{- end -}} - - {{- if not $result -}} - {{- $result = keys $enabledPorts | first -}} - {{- end -}} - {{- $result -}} -{{- end -}} - -{{/* -This saves the name of the service in a global variable -*/}} -{{- define "frontend.servicename" -}} -{{- $values := .Values.frontend.service -}} -{{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.service -}} - {{- $values = . -}} - {{- end -}} -{{ end -}} - -{{- $serviceName := include "frontend.names.fullname" . -}} -{{- if and (hasKey $values "nameOverride") $values.nameOverride -}} - {{- $serviceName = printf "%v-%v" $serviceName $values.nameOverride -}} -{{ end -}} -{{ $serviceName }} -{{- end -}} - - -{{/* -This template serves as a blueprint for all Service objects that are created -within the web. -*/}} -{{- define "frontend.classes.service" -}} -{{- $values := .Values.frontend.service -}} -{{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.service -}} - {{- $values = . -}} - {{- end -}} -{{ end -}} - -{{- $serviceName := include "frontend.names.fullname" . -}} -{{- if and (hasKey $values "nameOverride") $values.nameOverride -}} - {{- $serviceName = printf "%v-%v" $serviceName $values.nameOverride -}} -{{ end -}} -{{- $svcType := $values.type | default "" -}} -{{- $primaryPort := get $values.ports (include "frontend.classes.service.ports.primary" (dict "values" $values)) }} ---- -apiVersion: v1 -kind: Service -metadata: - name: piped-frontend - {{- with (merge ($values.labels | default dict) (include "frontend.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} - {{- end }} - annotations: - {{- with (merge ($values.annotations | default dict) (include "frontend.annotations" $ | fromYaml)) }} - {{ toYaml . | nindent 4 }} - {{- end }} -spec: - {{- if (or (eq $svcType "ClusterIP") (empty $svcType)) }} - type: ClusterIP - {{- if $values.clusterIP }} - clusterIP: {{ $values.clusterIP }} - {{end}} - {{- else if eq $svcType "LoadBalancer" }} - type: {{ $svcType }} - {{- if $values.loadBalancerIP }} - loadBalancerIP: {{ $values.loadBalancerIP }} - {{- end }} - {{- if $values.loadBalancerSourceRanges }} - loadBalancerSourceRanges: - {{ toYaml $values.loadBalancerSourceRanges | nindent 4 }} - {{- end -}} - {{- else }} - type: {{ $svcType }} - {{- end }} - {{- if $values.externalTrafficPolicy }} - externalTrafficPolicy: {{ $values.externalTrafficPolicy }} - {{- end }} - {{- if $values.sessionAffinity }} - sessionAffinity: {{ $values.sessionAffinity }} - {{- if $values.sessionAffinityConfig }} - sessionAffinityConfig: - {{ toYaml $values.sessionAffinityConfig | nindent 4 }} - {{- end -}} - {{- end }} - {{- with $values.externalIPs }} - externalIPs: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- if $values.publishNotReadyAddresses }} - publishNotReadyAddresses: {{ $values.publishNotReadyAddresses }} - {{- end }} - {{- if $values.ipFamilyPolicy }} - ipFamilyPolicy: {{ $values.ipFamilyPolicy }} - {{- end }} - {{- with $values.ipFamilies }} - ipFamilies: - {{ toYaml . | nindent 4 }} - {{- end }} - ports: - {{- range $name, $port := $values.ports }} - {{- if $port.enabled }} - - port: {{ $port.port }} - targetPort: {{ $port.targetPort | default $name }} - {{- if $port.protocol }} - {{- if or ( eq $port.protocol "HTTP" ) ( eq $port.protocol "HTTPS" ) ( eq $port.protocol "TCP" ) }} - protocol: TCP - {{- else }} - protocol: {{ $port.protocol }} - {{- end }} - {{- else }} - protocol: TCP - {{- end }} - name: {{ $name }} - {{- if (and (eq $svcType "NodePort") (not (empty $port.nodePort))) }} - nodePort: {{ $port.nodePort }} - {{ end }} - {{- end }} - {{- end }} - selector: - {{- include "frontend.labels.selectorLabels" . | nindent 4 }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/frontend/service.yaml b/charts/apps/piped/templates/frontend/service.yaml deleted file mode 100644 index 7131919..0000000 --- a/charts/apps/piped/templates/frontend/service.yaml +++ /dev/null @@ -1 +0,0 @@ -{{ include "frontend.service" . | nindent 0 }} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/deployment.yaml b/charts/apps/piped/templates/ytproxy/deployment.yaml deleted file mode 100644 index 583f4b3..0000000 --- a/charts/apps/piped/templates/ytproxy/deployment.yaml +++ /dev/null @@ -1,49 +0,0 @@ ---- -{{- if .Values.ytproxy.enabled -}} -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ include "ytproxy.names.fullname" . }} - {{- with (merge (.Values.ytproxy.labels | default dict) (include "common.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} - {{- end }} - {{- with (merge (.Values.ytproxy.annotations | default dict) (include "common.annotations" $ | fromYaml)) }} - annotations: {{- toYaml . | nindent 4 }} - {{- end }} -spec: - revisionHistoryLimit: {{ .Values.ytproxy.revisionHistoryLimit }} - replicas: {{ .Values.ytproxy.replicas }} - {{- $strategy := default "Recreate" .Values.ytproxy.strategy }} - {{- if and (ne $strategy "Recreate") (ne $strategy "RollingUpdate") }} - {{- fail (printf "Not a valid strategy type for Deployment (%s)" $strategy) }} - {{- end }} - strategy: - type: {{ $strategy }} - {{- with .Values.ytproxy.rollingUpdate }} - {{- if and (eq $strategy "RollingUpdate") (or .surge .unavailable) }} - rollingUpdate: - {{- with .unavailable }} - maxUnavailable: {{ . }} - {{- end }} - {{- with .surge }} - maxSurge: {{ . }} - {{- end }} - {{- end }} - {{- end }} - selector: - matchLabels: - {{- include "ytproxy.labels.selectorLabels" . | nindent 6 }} - template: - metadata: - {{- with include ("ytproxy.podAnnotations") . }} - annotations: - {{- . | nindent 8 }} - {{- end }} - labels: - {{- include "ytproxy.labels.selectorLabels" . | nindent 8 }} - {{- with .Values.podLabels }} - {{- toYaml . | nindent 8 }} - {{- end }} - spec: - {{- include "ytproxy.controller.pod" . | nindent 6 }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/ingress.yaml b/charts/apps/piped/templates/ytproxy/ingress.yaml deleted file mode 100644 index cd08fc0..0000000 --- a/charts/apps/piped/templates/ytproxy/ingress.yaml +++ /dev/null @@ -1,76 +0,0 @@ ---- -{{- if .Values.ingress.ytproxy.enabled }} - {{- $fullName := include "common.names.fullname" . -}} - {{- $ingressName := $fullName -}} - {{- $values := .Values.ingress.ytproxy -}} - - {{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.ingress -}} - {{- $values = . -}} - {{- end -}} - {{ end -}} - - {{- if and (hasKey $values "nameOverride") $values.nameOverride -}} - {{- $ingressName = printf "%v-%v" $ingressName $values.nameOverride -}} - {{- end -}} - - {{- $primaryService := .Values.ytproxy.service.main -}} - {{- $defaultServiceName := "piped-ytproxy" -}} - {{- $defaultServicePort := get $primaryService.ports (include "common.classes.service.ports.primary" (dict "values" $primaryService)) -}} - {{- $isStable := include "common.capabilities.ingress.isStable" . }} ---- -apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }} -kind: Ingress -metadata: - name: {{ $ingressName }}-ytproxy -{{- with (merge ($values.labels | default dict) (include "common.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} -{{- end }} -{{- with (merge ($values.annotations | default dict)) }} - annotations: {{- toYaml . | nindent 4 }} -{{- end }} -spec: -{{- if and $isStable $values.ingressClassName }} - ingressClassName: {{ $values.ingressClassName }} -{{- end }} -{{- if $values.tls }} - tls: - {{- range $values.tls }} - - hosts: - {{- range .hosts }} - - {{ tpl . $ | quote }} - {{- end }} - {{- if .secretName }} - secretName: {{ tpl .secretName $ | quote}} - {{- end }} - {{- end }} -{{- end }} - rules: -{{- range $values.hosts }} - - host: {{ tpl .host $ | quote }} - http: - paths: - {{- range .paths }} - {{- $service := $defaultServiceName -}} - {{- $port := $defaultServicePort.port -}} - {{- if .service -}} - {{- $service = default $service .service.name -}} - {{- $port = default $port .service.port -}} - {{- end }} - - path: {{ tpl .path $ | quote }} - {{- if $isStable }} - pathType: {{ default "Prefix" .pathType }} - {{- end }} - backend: - {{- if $isStable }} - service: - name: {{ $service }} - port: - number: {{ $port }} - {{- else }} - serviceName: {{ $service }} - servicePort: {{ $port }} - {{- end }} - {{- end }} -{{- end }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/lib/_container.tpl b/charts/apps/piped/templates/ytproxy/lib/_container.tpl deleted file mode 100644 index 7ad863c..0000000 --- a/charts/apps/piped/templates/ytproxy/lib/_container.tpl +++ /dev/null @@ -1,54 +0,0 @@ -{{- /* The main container included in the controller */ -}} -{{- define "ytproxy.controller.mainContainer" -}} -- name: {{ include "ytproxy.names.fullname" . }} - image: {{ printf "%s:%s" .Values.ytproxy.image.repository (default .Chart.AppVersion .Values.ytproxy.image.tag) | quote }} - imagePullPolicy: {{ .Values.ytproxy.image.pullPolicy }} - {{- with .Values.ytproxy.command }} - command: - {{- if kindIs "string" . }} - - {{ . }} - {{- else }} - {{ toYaml . | nindent 4 }} - {{- end }} - {{- end }} - {{- with .Values.ytproxy.args }} - args: - {{- if kindIs "string" . }} - - {{ . }} - {{- else }} - {{ toYaml . | nindent 4 }} - {{- end }} - {{- end }} - {{- with .Values.ytproxy.securityContext }} - securityContext: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- with .Values.lifecycle }} - lifecycle: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- with .Values.termination.messagePath }} - terminationMessagePath: {{ . }} - {{- end }} - {{- with .Values.termination.messagePolicy }} - terminationMessagePolicy: {{ . }} - {{- end }} - - {{- with .Values.ytproxy.env }} - env: - {{- get (fromYaml (include "ytproxy.controller.env_vars" $)) "env" | toYaml | nindent 4 -}} - {{- end }} - {{- if or .Values.ytproxy.envFrom .Values.ytproxy.secret }} - envFrom: - {{- with .Values.envFrom }} - {{- toYaml . | nindent 4 }} - {{- end }} - {{- if .Values.secret }} - - secretRef: - name: {{ include "ytproxy.names.fullname" . }} - {{- end }} - {{- end }} - {{- include "ytproxy.controller.probes" . | trim | nindent 2 }} - ports: - {{- include "ytproxy.controller.ports" . | trim | nindent 4 }} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/lib/_env_vars.tpl b/charts/apps/piped/templates/ytproxy/lib/_env_vars.tpl deleted file mode 100644 index e544622..0000000 --- a/charts/apps/piped/templates/ytproxy/lib/_env_vars.tpl +++ /dev/null @@ -1,43 +0,0 @@ -{{/* -Environment variables used by containers. -*/}} -{{- define "ytproxy.controller.env_vars" -}} - {{- $values := merge .Values.ytproxy.env .Values.common_env -}} - {{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.env -}} - {{- $values = . -}} - {{- end -}} - {{- end -}} - - {{- with $values -}} - {{- $result := list -}} - {{- range $k, $v := . -}} - {{- $name := $k -}} - {{- $value := $v -}} - {{- if kindIs "int" $name -}} - {{- $name = required "environment variables as a list of maps require a name field" $value.name -}} - {{- end -}} - - {{- if kindIs "map" $value -}} - {{- if hasKey $value "value" -}} - {{- $envValue := $value.value | toString -}} - {{- $result = append $result (dict "name" $name "value" (tpl $envValue $)) -}} - {{- else if hasKey $value "valueFrom" -}} - {{- $result = append $result (dict "name" $name "valueFrom" $value.valueFrom) -}} - {{- else -}} - {{- $result = append $result (dict "name" $name "valueFrom" $value) -}} - {{- end -}} - {{- end -}} - {{- if not (kindIs "map" $value) -}} - {{- if kindIs "string" $value -}} - {{- $result = append $result (dict "name" $name "value" (tpl $value $)) -}} - {{- else if or (kindIs "float64" $value) (kindIs "bool" $value) -}} - {{- $result = append $result (dict "name" $name "value" ($value | toString)) -}} - {{- else -}} - {{- $result = append $result (dict "name" $name "value" $value) -}} - {{- end -}} - {{- end -}} - {{- end -}} - {{- toYaml (dict "env" $result) | nindent 0 -}} - {{- end -}} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/lib/_ingress.tpl b/charts/apps/piped/templates/ytproxy/lib/_ingress.tpl deleted file mode 100644 index a520391..0000000 --- a/charts/apps/piped/templates/ytproxy/lib/_ingress.tpl +++ /dev/null @@ -1,19 +0,0 @@ -{{/* -Renders the ingress objects required. -*/}} -{{- define "ytproxy.classes.ingress" -}} - {{- /* Generate named services as required */ -}} - {{- range $name, $service := .Values.ytproxy.service }} - {{- if $service.enabled -}} - {{- $serviceValues := $service -}} - - {{/* set the default nameOverride to the service name */}} - {{- if and (not $serviceValues.nameOverride) (ne $name (include "ytproxy.service.primary" $)) -}} - {{- $_ := set $serviceValues "nameOverride" $name -}} - {{ end -}} - - {{- $_ := set $ "ObjectValues" (dict "service" $serviceValues) -}} - {{- include "ytproxy.classes.service" $ }} - {{- end }} - {{- end }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/lib/_names.tpl b/charts/apps/piped/templates/ytproxy/lib/_names.tpl deleted file mode 100644 index 289a11d..0000000 --- a/charts/apps/piped/templates/ytproxy/lib/_names.tpl +++ /dev/null @@ -1,111 +0,0 @@ -{{/* Expand the name of the chart */}} -{{- define "ytproxy.names.name" -}} - {{- $globalNameOverride := "" -}} - {{- if hasKey .Values "global" -}} - {{- $globalNameOverride = (default $globalNameOverride .Values.global.nameOverride) -}} - {{- end -}} - {{- default .Chart.Name (default .Values.nameOverride $globalNameOverride) | trunc 50 | trimSuffix "-" -}}-ytproxy -{{- 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 "ytproxy.names.fullname" -}} - {{- $name := include "ytproxy.names.name" . -}} - {{- $globalFullNameOverride := "" -}} - {{- if hasKey .Values "global" -}} - {{- $globalFullNameOverride = (default $globalFullNameOverride .Values.global.fullnameOverride) -}} - {{- end -}} - {{- if or .Values.fullnameOverride $globalFullNameOverride -}} - {{- $name = default .Values.fullnameOverride $globalFullNameOverride -}} - {{- else -}} - {{- if contains $name .Release.Name -}} - {{- $name = .Release.Name -}} - {{- else -}} - {{- $name = printf "%s" $name -}} - {{- end -}} - {{- end -}} - {{- trunc 50 $name | trimSuffix "-" -}} -{{- end -}} - - -{{/* Create chart name and version as used by the chart label */}} -{{- define "ytproxy.names.chart" -}} - {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 50 | trimSuffix "-" -}} -{{- end -}} - -{{/* Create the name of the ServiceAccount to use */}} -{{- define "ytproxy.names.serviceAccountName" -}} - {{- if .Values.serviceAccount.create -}} - {{- default (include "ytproxy.names.fullname" .) .Values.serviceAccount.name -}} - {{- else -}} - {{- default "default" .Values.serviceAccount.name -}} - {{- end -}} -{{- end -}} - -{{/* Return the properly cased version of the controller type */}} -{{- define "ytproxy.names.controllerType" -}} - {{- if eq .Values.controller.type "deployment" -}} - {{- print "Deployment" -}} - {{- else if eq .Values.controller.type "daemonset" -}} - {{- print "DaemonSet" -}} - {{- else if eq .Values.controller.type "statefulset" -}} - {{- print "StatefulSet" -}} - {{- else -}} - {{- fail (printf "Not a valid controller.type (%s)" .Values.controller.type) -}} - {{- end -}} -{{- end -}} - -{{/* web labels shared across objects */}} -{{- define "ytproxy.labels" -}} -helm.sh/chart: {{ include "ytproxy.names.chart" . }} -{{ include "ytproxy.labels.selectorLabels" . }} - {{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} - {{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} - {{- with .Values.global.labels }} - {{- range $k, $v := . }} - {{- $name := $k }} - {{- $value := tpl $v $ }} -{{ $name }}: {{ quote $value }} - {{- end }} - {{- end }} -{{- end -}} - -{{/* Selector labels shared across objects */}} -{{- define "ytproxy.labels.selectorLabels" -}} -app.kubernetes.io/name: {{ include "ytproxy.names.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} - - -{{/* Common annotations shared across objects */}} -{{- define "ytproxy.annotations" -}} - {{- with .Values.global.annotations }} - {{- range $k, $v := . }} - {{- $name := $k }} - {{- $value := tpl $v $ }} -{{ $name }}: {{ quote $value }} - {{- end }} - {{- end }} -{{- end -}} - -{{/* Determine the Pod annotations used in the controller */}} -{{- define "ytproxy.podAnnotations" -}} - {{- if .Values.podAnnotations -}} - {{- tpl (toYaml .Values.podAnnotations) . | nindent 0 -}} - {{- end -}} - - {{- $configMapsFound := false -}} - {{- range $name, $configmap := .Values.configmap -}} - {{- if $configmap.enabled -}} - {{- $configMapsFound = true -}} - {{- end -}} - {{- end -}} - {{- if $configMapsFound -}} - {{- printf "checksum/config: %v" (include ("ytproxy.configmap") . | sha256sum) | nindent 0 -}} - {{- end -}} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/lib/_pod.tpl b/charts/apps/piped/templates/ytproxy/lib/_pod.tpl deleted file mode 100644 index fde2d87..0000000 --- a/charts/apps/piped/templates/ytproxy/lib/_pod.tpl +++ /dev/null @@ -1,105 +0,0 @@ -{{- /* -The pod definition included in the controller. -*/ -}} -{{- define "ytproxy.controller.pod" -}} - {{- with .Values.imagePullSecrets }} -imagePullSecrets: - {{- toYaml . | nindent 2 }} - {{- end }} -serviceAccountName: {{ include "ytproxy.names.serviceAccountName" . }} -automountServiceAccountToken: {{ .Values.automountServiceAccountToken }} - {{- with .Values.podSecurityContext }} -securityContext: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.priorityClassName }} -priorityClassName: {{ . }} - {{- end }} - {{- with .Values.runtimeClassName }} -runtimeClassName: {{ . }} - {{- end }} - {{- with .Values.schedulerName }} -schedulerName: {{ . }} - {{- end }} - {{- with .Values.hostNetwork }} -hostNetwork: {{ . }} - {{- end }} - {{- with .Values.hostname }} -hostname: {{ . }} - {{- end }} - {{- if .Values.dnsPolicy }} -dnsPolicy: {{ .Values.dnsPolicy }} - {{- else if .Values.hostNetwork }} -dnsPolicy: ClusterFirstWithHostNet - {{- else }} -dnsPolicy: ClusterFirst - {{- end }} - {{- with .Values.dnsConfig }} -dnsConfig: - {{- toYaml . | nindent 2 }} - {{- end }} -enableServiceLinks: {{ .Values.enableServiceLinks }} - {{- with .Values.termination.gracePeriodSeconds }} -terminationGracePeriodSeconds: {{ . }} - {{- end }} - {{- if .Values.initContainers }} -initContainers: - {{- $initContainers := list }} - {{- range $index, $key := (keys .Values.initContainers | uniq | sortAlpha) }} - {{- $container := get $.Values.initContainers $key }} - {{- if not $container.name -}} - {{- $_ := set $container "name" $key }} - {{- end }} - {{- if $container.env -}} - {{- $_ := set $ "ObjectValues" (dict "env" $container.env) -}} - {{- $newEnv := fromYaml (include "common.controller.env_vars" $) -}} - {{- $_ := unset $.ObjectValues "env" -}} - {{- $_ := set $container "env" $newEnv.env }} - {{- end }} - {{- $initContainers = append $initContainers $container }} - {{- end }} - {{- tpl (toYaml $initContainers) $ | nindent 2 }} - {{- end }} -containers: - {{- include "ytproxy.controller.mainContainer" . | nindent 2 }} - {{- with .Values.additionalContainers }} - {{- $additionalContainers := list }} - {{- range $name, $container := . }} - {{- if not $container.name -}} - {{- $_ := set $container "name" $name }} - {{- end }} - {{- if $container.env -}} - {{- $_ := set $ "ObjectValues" (dict "env" $container.env) -}} - {{- $newEnv := fromYaml (include "ytproxy.controller.env_vars" $) -}} - {{- $_ := set $container "env" $newEnv.env }} - {{- $_ := unset $.ObjectValues "env" -}} - {{- end }} - {{- $additionalContainers = append $additionalContainers $container }} - {{- end }} - {{- tpl (toYaml $additionalContainers) $ | nindent 2 }} - {{- end }} - {{- with (include "ytproxy.controller.volumes" . | trim) }} -volumes: - {{- nindent 2 . }} - {{- end }} - {{- with .Values.hostAliases }} -hostAliases: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.nodeSelector }} -nodeSelector: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.affinity }} -affinity: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.topologySpreadConstraints }} -topologySpreadConstraints: - {{- toYaml . | nindent 2 }} - {{- end }} - {{- with .Values.tolerations }} -tolerations: - {{- toYaml . | nindent 2 }} - {{- end -}} -{{- end -}} diff --git a/charts/apps/piped/templates/ytproxy/lib/_ports.tpl b/charts/apps/piped/templates/ytproxy/lib/_ports.tpl deleted file mode 100644 index ed16a83..0000000 --- a/charts/apps/piped/templates/ytproxy/lib/_ports.tpl +++ /dev/null @@ -1,36 +0,0 @@ -{{/* -Ports included by the controller. -*/}} -{{- define "ytproxy.controller.ports" -}} - {{- $ports := list -}} - {{- range .Values.ytproxy.service -}} - {{- if .enabled -}} - {{- range $name, $port := .ports -}} - {{- $_ := set $port "name" $name -}} - {{- $ports = mustAppend $ports $port -}} - {{- end }} - {{- end }} - {{- end }} - -{{/* export/render the list of ports */}} -{{- if $ports -}} -{{- range $_ := $ports }} -{{- if .enabled }} -- name: {{ .name }} - {{- if and .targetPort (kindIs "string" .targetPort) }} - {{- fail (printf "Our charts do not support named ports for targetPort. (port name %s, targetPort %s)" .name .targetPort) }} - {{- end }} - containerPort: {{ .targetPort | default .port }} - {{- if .protocol }} - {{- if or ( eq .protocol "HTTP" ) ( eq .protocol "HTTPS" ) ( eq .protocol "TCP" ) }} - protocol: TCP - {{- else }} - protocol: {{ .protocol }} - {{- end }} - {{- else }} - protocol: TCP - {{- end }} -{{- end}} -{{- end -}} -{{- end -}} -{{- end -}} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/lib/_probes.tpl b/charts/apps/piped/templates/ytproxy/lib/_probes.tpl deleted file mode 100644 index 658c687..0000000 --- a/charts/apps/piped/templates/ytproxy/lib/_probes.tpl +++ /dev/null @@ -1,33 +0,0 @@ -{{/* -Probes selection logic. -*/}} -{{- define "ytproxy.controller.probes" -}} -{{- $primaryService := get .Values.backend.service (include "ytproxy.service.primary" .) -}} -{{- $primaryPort := "" -}} -{{- if $primaryService -}} - {{- $primaryPort = get $primaryService.ports (include "ytproxy.classes.service.ports.primary" (dict "serviceName" (include "ytproxy.service.primary" .) "values" $primaryService)) -}} -{{- end -}} - -{{- range $probeName, $probe := .Values.probes }} - {{- if $probe.enabled -}} - {{- "" | nindent 0 }} - {{- $probeName }}Probe: - {{- if $probe.custom -}} - {{- $probe.spec | toYaml | nindent 2 }} - {{- else }} - {{- if and $primaryService $primaryPort -}} - {{- "tcpSocket:" | nindent 2 }} - {{- if $primaryPort.targetPort }} - {{- printf "port: %v" $primaryPort.targetPort | nindent 4 }} - {{- else}} - {{- printf "port: %v" $primaryPort.port | nindent 4 }} - {{- end }} - {{- printf "initialDelaySeconds: %v" $probe.spec.initialDelaySeconds | nindent 2 }} - {{- printf "failureThreshold: %v" $probe.spec.failureThreshold | nindent 2 }} - {{- printf "timeoutSeconds: %v" $probe.spec.timeoutSeconds | nindent 2 }} - {{- printf "periodSeconds: %v" $probe.spec.periodSeconds | nindent 2 }} - {{- end }} - {{- end }} - {{- end }} -{{- end }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/lib/_service.tpl b/charts/apps/piped/templates/ytproxy/lib/_service.tpl deleted file mode 100644 index b1f4a6a..0000000 --- a/charts/apps/piped/templates/ytproxy/lib/_service.tpl +++ /dev/null @@ -1,186 +0,0 @@ -{{/* -Renders the Service objects required by the chart. -*/}} -{{- define "ytproxy.service" -}} - {{- /* Generate named services as required */ -}} - {{- range $name, $service := .Values.ytproxy.service }} - {{- if $service.enabled -}} - {{- $serviceValues := $service -}} - - {{/* set the default nameOverride to the service name */}} - {{- if and (not $serviceValues.nameOverride) (ne $name (include "ytproxy.service.primary" $)) -}} - {{- $_ := set $serviceValues "nameOverride" $name -}} - {{ end -}} - - {{- $_ := set $ "ObjectValues" (dict "service" $serviceValues) -}} - {{- include "ytproxy.classes.service" $ }} - {{- end }} - {{- end }} -{{- end }} - -{{/* -Return the primary service object -*/}} -{{- define "ytproxy.service.primary" -}} - {{- $enabledServices := dict -}} - {{- range $name, $service := .Values.ytproxy.service -}} - {{- if $service.enabled -}} - {{- $_ := set $enabledServices $name . -}} - {{- end -}} - {{- end -}} - - {{- $result := "" -}} - {{- range $name, $service := $enabledServices -}} - {{- if and (hasKey $service "primary") $service.primary -}} - {{- $result = $name -}} - {{- end -}} - {{- end -}} - - {{- if not $result -}} - {{- $result = keys $enabledServices | first -}} - {{- end -}} - {{- $result -}} -{{- end -}} - -{{/* -Return the primary port for a given Service object. -*/}} -{{- define "ytproxy.classes.service.ports.primary" -}} - {{- $enabledPorts := dict -}} - {{- range $name, $port := .values.ports -}} - {{- if $port.enabled -}} - {{- $_ := set $enabledPorts $name . -}} - {{- end -}} - {{- end -}} - - {{- if eq 0 (len $enabledPorts) }} - {{- fail (printf "No ports are enabled for service \"%s\"!" .serviceName) }} - {{- end }} - - {{- $result := "" -}} - {{- range $name, $port := $enabledPorts -}} - {{- if and (hasKey $port "primary") $port.primary -}} - {{- $result = $name -}} - {{- end -}} - {{- end -}} - - {{- if not $result -}} - {{- $result = keys $enabledPorts | first -}} - {{- end -}} - {{- $result -}} -{{- end -}} - -{{/* -This saves the name of the service in a global variable -*/}} -{{- define "ytproxy.servicename" -}} -{{- $values := .Values.ytproxy.service -}} -{{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.service -}} - {{- $values = . -}} - {{- end -}} -{{ end -}} - -{{- $serviceName := include "ytproxy.names.fullname" . -}} -{{- if and (hasKey $values "nameOverride") $values.nameOverride -}} - {{- $serviceName = printf "%v-%v" $serviceName $values.nameOverride -}} -{{ end -}} -{{ $serviceName }} -{{- end -}} - - -{{/* -This template serves as a blueprint for all Service objects that are created -within the web. -*/}} -{{- define "ytproxy.classes.service" -}} -{{- $values := .Values.ytproxy.service -}} -{{- if hasKey . "ObjectValues" -}} - {{- with .ObjectValues.service -}} - {{- $values = . -}} - {{- end -}} -{{ end -}} - -{{- $serviceName := include "ytproxy.names.fullname" . -}} -{{- if and (hasKey $values "nameOverride") $values.nameOverride -}} - {{- $serviceName = printf "%v-%v" $serviceName $values.nameOverride -}} -{{ end -}} -{{- $svcType := $values.type | default "" -}} -{{- $primaryPort := get $values.ports (include "ytproxy.classes.service.ports.primary" (dict "values" $values)) }} ---- -apiVersion: v1 -kind: Service -metadata: - name: piped-ytproxy - {{- with (merge ($values.labels | default dict) (include "ytproxy.labels" $ | fromYaml)) }} - labels: {{- toYaml . | nindent 4 }} - {{- end }} - annotations: - {{- with (merge ($values.annotations | default dict) (include "ytproxy.annotations" $ | fromYaml)) }} - {{ toYaml . | nindent 4 }} - {{- end }} -spec: - {{- if (or (eq $svcType "ClusterIP") (empty $svcType)) }} - type: ClusterIP - {{- if $values.clusterIP }} - clusterIP: {{ $values.clusterIP }} - {{end}} - {{- else if eq $svcType "LoadBalancer" }} - type: {{ $svcType }} - {{- if $values.loadBalancerIP }} - loadBalancerIP: {{ $values.loadBalancerIP }} - {{- end }} - {{- if $values.loadBalancerSourceRanges }} - loadBalancerSourceRanges: - {{ toYaml $values.loadBalancerSourceRanges | nindent 4 }} - {{- end -}} - {{- else }} - type: {{ $svcType }} - {{- end }} - {{- if $values.externalTrafficPolicy }} - externalTrafficPolicy: {{ $values.externalTrafficPolicy }} - {{- end }} - {{- if $values.sessionAffinity }} - sessionAffinity: {{ $values.sessionAffinity }} - {{- if $values.sessionAffinityConfig }} - sessionAffinityConfig: - {{ toYaml $values.sessionAffinityConfig | nindent 4 }} - {{- end -}} - {{- end }} - {{- with $values.externalIPs }} - externalIPs: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- if $values.publishNotReadyAddresses }} - publishNotReadyAddresses: {{ $values.publishNotReadyAddresses }} - {{- end }} - {{- if $values.ipFamilyPolicy }} - ipFamilyPolicy: {{ $values.ipFamilyPolicy }} - {{- end }} - {{- with $values.ipFamilies }} - ipFamilies: - {{ toYaml . | nindent 4 }} - {{- end }} - ports: - {{- range $name, $port := $values.ports }} - {{- if $port.enabled }} - - port: {{ $port.port }} - targetPort: {{ $port.targetPort | default $name }} - {{- if $port.protocol }} - {{- if or ( eq $port.protocol "HTTP" ) ( eq $port.protocol "HTTPS" ) ( eq $port.protocol "TCP" ) }} - protocol: TCP - {{- else }} - protocol: {{ $port.protocol }} - {{- end }} - {{- else }} - protocol: TCP - {{- end }} - name: {{ $name }} - {{- if (and (eq $svcType "NodePort") (not (empty $port.nodePort))) }} - nodePort: {{ $port.nodePort }} - {{ end }} - {{- end }} - {{- end }} - selector: - {{- include "ytproxy.labels.selectorLabels" . | nindent 4 }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/lib/_volumes.tpl b/charts/apps/piped/templates/ytproxy/lib/_volumes.tpl deleted file mode 100644 index 87afe13..0000000 --- a/charts/apps/piped/templates/ytproxy/lib/_volumes.tpl +++ /dev/null @@ -1,64 +0,0 @@ -{{/* -Volumes included by the controller. -*/}} -{{- define "ytproxy.controller.volumes" -}} -{{- range $index, $persistence := .Values.persistence }} -{{- if $persistence.enabled }} -- name: {{ $index }} - {{- if eq (default "pvc" $persistence.type) "pvc" }} - {{- $pvcName := (include "common.names.fullname" $) -}} - {{- if $persistence.existingClaim }} - {{- /* Always prefer an existingClaim if that is set */}} - {{- $pvcName = $persistence.existingClaim -}} - {{- else -}} - {{- /* Otherwise refer to the PVC name */}} - {{- if $persistence.nameOverride -}} - {{- if not (eq $persistence.nameOverride "-") -}} - {{- $pvcName = (printf "%s-%s" (include "common.names.fullname" $) $persistence.nameOverride) -}} - {{- end -}} - {{- else -}} - {{- $pvcName = (printf "%s-%s" (include "common.names.fullname" $) $index) -}} - {{- end -}} - {{- end }} - persistentVolumeClaim: - claimName: {{ $pvcName }} - {{- else if or (eq $persistence.type "configMap") (eq $persistence.type "secret") }} - {{- $objectName := (required (printf "name not set for persistence item %s" $index) $persistence.name) }} - {{- $objectName = tpl $objectName $ }} - {{- if eq $persistence.type "configMap" }} - configMap: - name: {{ $objectName }} - {{- else }} - secret: - secretName: {{ $objectName }} - {{- end }} - {{- with $persistence.defaultMode }} - defaultMode: {{ . }} - {{- end }} - {{- with $persistence.items }} - items: - {{- toYaml . | nindent 6 }} - {{- end }} - {{- else if eq $persistence.type "emptyDir" }} - {{- $emptyDir := dict -}} - {{- with $persistence.medium -}} - {{- $_ := set $emptyDir "medium" . -}} - {{- end -}} - {{- with $persistence.sizeLimit -}} - {{- $_ := set $emptyDir "sizeLimit" . -}} - {{- end }} - emptyDir: {{- $emptyDir | toYaml | nindent 4 }} - {{- else if eq $persistence.type "hostPath" }} - hostPath: - path: {{ required "hostPath not set" $persistence.hostPath }} - {{- with $persistence.hostPathType }} - type: {{ . }} - {{- end }} - {{- else if eq $persistence.type "custom" }} - {{- toYaml $persistence.volumeSpec | nindent 2 }} - {{- else }} - {{- fail (printf "Not a valid persistence.type (%s)" .Values.persistence.type) }} - {{- end }} -{{- end }} -{{- end }} -{{- end }} \ No newline at end of file diff --git a/charts/apps/piped/templates/ytproxy/service.yaml b/charts/apps/piped/templates/ytproxy/service.yaml deleted file mode 100644 index eefb8ee..0000000 --- a/charts/apps/piped/templates/ytproxy/service.yaml +++ /dev/null @@ -1 +0,0 @@ -{{ include "ytproxy.service" . | nindent 0 }} \ No newline at end of file diff --git a/charts/apps/piped/values.yaml b/charts/apps/piped/values.yaml deleted file mode 100644 index 30f2a46..0000000 --- a/charts/apps/piped/values.yaml +++ /dev/null @@ -1,244 +0,0 @@ ---- -global: - # -- Set an override for the prefix of the fullname - nameOverride: - # -- Set the entire name definition - fullnameOverride: - # -- Set additional global labels. Helm templates can be used. - labels: { } - # -- Set additional global annotations. Helm templates can be used. - annotations: { } - -controller: - # -- enable the controller. - enabled: false - -serviceAccount: - create: false - - -frontend: - enabled: true - service: - main: - enabled: true - primary: true - type: ClusterIP - ports: - http: - enabled: true - primary: true - port: 80 - protocol: HTTP - - image: - # -- image repository - repository: 1337kavin/piped-frontend - # -- image tag - # @chart.appVersion - tag: - # -- image pull policy - pullPolicy: IfNotPresent - - env: - BACKEND_HOSTNAME: pipedapi.example.org - - command: "/bin/ash" - args: - - -c - - "sed -i s/pipedapi.kavin.rocks/$BACKEND_HOSTNAME/g /usr/share/nginx/html/assets/* && /docker-entrypoint.sh && nginx -g 'daemon off;'" - -backend: - enabled: true - service: - main: - enabled: true - primary: true - type: ClusterIP - ports: - http: - enabled: true - primary: true - port: 8080 - protocol: HTTP - - command: "/opt/java/openjdk/bin/java" - args: - - -server - - -Xmx1G - - -Xaggressive - - -XX:+UnlockExperimentalVMOptions - - -XX:+OptimizeStringConcat - - -XX:+UseStringDeduplication - - -XX:+UseCompressedOops - - -XX:+UseNUMA - - -Xgcpolicy:gencon - - -Xshareclasses:allowClasspaths - - -Xtune:virtualized - - -jar - - /app/piped.jar - -# command: "/bin/sh" -# args: -# - -c -# - sleep infinity - - # If the hostnames are not set for backend, proxy and API, they will be automatically fetched from their ingresses. - config: - #PORT: 8080 - # HTTP_WORKERS: 2 - #PROXY_PART: https://PROXY_HOSTNAME - # Outgoing HTTP Proxy - eg: 127.0.0.1:8118 - #HTTP_PROXY: 127.0.0.1:8118 - # Captcha Parameters - #CAPTCHA_BASE_URL: https://api.capmonster.cloud/ - #CAPTCHA_API_KEY: INSERT_HERE - #API_URL: https://BACKEND_HOSTNAME - #FRONTEND_URL: https://FRONTEND_HOSTNAME - # Enable haveibeenpwned compromised password API - COMPROMISED_PASSWORD_CHECK: true - # Disable Registration - DISABLE_REGISTRATION: false - # Feed Retention Time in Days - FEED_RETENTION: 30 - #database: - # connection_url: jdbc:postgresql://postgres:5432/piped - # driver_class: org.postgresql.Driver - # dialect: org.hibernate.dialect.PostgreSQLDialect - # username: piped - # password: changeme - - - image: - # -- image repository - repository: 1337kavin/piped - # -- image tag - # @chart.appVersion - tag: - # -- image pull policy - pullPolicy: IfNotPresent - -ytproxy: - enabled: true - service: - main: - enabled: true - primary: true - type: ClusterIP - ports: - http: - enabled: true - primary: true - port: 8080 - protocol: HTTP - - command: "/app/piped-proxy" - - - image: - # -- image repository - repository: 1337kavin/piped-proxy - # -- image tag - # @chart.appVersion - tag: - # -- image pull policy - pullPolicy: IfNotPresent - -ingress: - main: - enabled: true - primary: false - hosts: - - host: piped.video - paths: - - path: "/" - tls: [] - - backend: - enabled: true - ingressClassName: nginx - primary: false - hosts: - - host: pipedapi.piped.video - paths: - - path: "/" - tls: [] - - ytproxy: - enabled: true - ingressClassName: nginx - primary: false - hosts: - - host: ytproxy.piped.video - paths: - - path: "/" - tls: [] - -# See options from https://artifacthub.io/packages/helm/bitnami/postgresql#parameters -postgresql: - enabled: true - image: - tag: 11.19.0-debian-11-r4 - auth: - database: piped - username: piped - password: changemepiped - -# -- Probe configuration -# -- [[ref]](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) -# @default -- See below -probes: - # -- Liveness probe configuration - # @default -- See below - liveness: - # -- Enable the liveness probe - enabled: false - # -- Set this to `true` if you wish to specify your own livenessProbe - custom: false - # -- The spec field contains the values for the default livenessProbe. - # If you selected `custom: true`, this field holds the definition of the livenessProbe. - # @default -- See below - spec: - initialDelaySeconds: 0 - periodSeconds: 10 - timeoutSeconds: 1 - failureThreshold: 3 - - # -- Redainess probe configuration - # @default -- See below - readiness: - # -- Enable the readiness probe - enabled: false - # -- Set this to `true` if you wish to specify your own readinessProbe - custom: false - # -- The spec field contains the values for the default readinessProbe. - # If you selected `custom: true`, this field holds the definition of the readinessProbe. - # @default -- See below - spec: - initialDelaySeconds: 0 - periodSeconds: 10 - timeoutSeconds: 1 - failureThreshold: 3 - - # -- Startup probe configuration - # @default -- See below - startup: - # -- Enable the startup probe - enabled: false - # -- Set this to `true` if you wish to specify your own startupProbe - custom: false - # -- The spec field contains the values for the default startupProbe. - # If you selected `custom: true`, this field holds the definition of the startupProbe. - # @default -- See below - spec: - initialDelaySeconds: 0 - timeoutSeconds: 1 - ## This means it has a maximum of 5*30=150 seconds to start up before it fails - periodSeconds: 5 - failureThreshold: 30 - -termination: - gracePeriodSeconds: - - -