mirror of
https://github.com/k8s-at-home/charts.git
synced 2025-01-23 07:29:03 +00:00
[meta] Split incubator / stable charts (#688)
This commit is contained in:
parent
060d27f9e7
commit
5119815aea
11
.github/ct-install.yaml
vendored
11
.github/ct-install.yaml
vendored
@ -2,12 +2,13 @@ remote: origin
|
||||
target-branch: master
|
||||
helm-extra-args: --timeout 600s
|
||||
chart-dirs:
|
||||
- charts
|
||||
- charts/incubator
|
||||
- charts/stable
|
||||
excluded-charts:
|
||||
- alertmanager-bot
|
||||
- dnsmadeeasy-webhook
|
||||
- ser2sock
|
||||
- zigbee2mqtt
|
||||
- charts/stable/alertmanager-bot
|
||||
- charts/stable/dnsmadeeasy-webhook
|
||||
- charts/stable/ser2sock
|
||||
- charts/stable/zigbee2mqtt
|
||||
chart-repos:
|
||||
- bitnami=https://charts.bitnami.com/bitnami
|
||||
- k8s-at-home-libraries=https://library-charts.k8s-at-home.com
|
||||
|
3
.github/ct-lint.yaml
vendored
3
.github/ct-lint.yaml
vendored
@ -2,7 +2,8 @@ remote: origin
|
||||
target-branch: master
|
||||
helm-extra-args: --timeout 600s
|
||||
chart-dirs:
|
||||
- charts
|
||||
- charts/incubator
|
||||
- charts/stable
|
||||
excluded-charts:
|
||||
chart-repos:
|
||||
- bitnami=https://charts.bitnami.com/bitnami
|
||||
|
190
.github/workflows/charts-lint-test.yaml
vendored
190
.github/workflows/charts-lint-test.yaml
vendored
@ -10,11 +10,91 @@ on:
|
||||
- '!charts/**/README_CONFIG.md.gotmpl'
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
changes-lint:
|
||||
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
|
||||
name: Detect changes for linting
|
||||
runs-on: ubuntu-20.04
|
||||
outputs:
|
||||
changed: ${{ steps.list-changed.outputs.changed }}
|
||||
matrix: |
|
||||
{
|
||||
"chart": ${{ steps.list-changed.outputs.charts }}
|
||||
}
|
||||
detected: ${{ steps.list-changed.outputs.detected }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up chart-testing
|
||||
uses: helm/chart-testing-action@v2.0.1
|
||||
|
||||
- name: Install Dev tools
|
||||
run: |
|
||||
sudo wget https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /usr/bin/yq
|
||||
sudo chmod +x /usr/bin/yq
|
||||
|
||||
- name: Run chart-testing (list-changed)
|
||||
id: list-changed
|
||||
run: |
|
||||
EXCLUDED=$(yq eval -j '.excluded-charts // []' .github/ct-lint.yaml)
|
||||
CHARTS=$(ct list-changed --config .github/ct-lint.yaml)
|
||||
CHARTS_JSON=$(echo "${CHARTS}" | jq -R -s -c 'split("\n")[:-1]')
|
||||
OUTPUT_JSON=$(echo "{\"excluded\": ${EXCLUDED}, \"all\": ${CHARTS_JSON}}" | jq -c '.all-.excluded')
|
||||
echo ::set-output name=charts::${OUTPUT_JSON}
|
||||
if [[ $(echo ${OUTPUT_JSON} | jq -c '. | length') -gt 0 ]]; then
|
||||
echo "::set-output name=detected::true"
|
||||
fi
|
||||
|
||||
changes-install:
|
||||
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
|
||||
name: Detect changes for install
|
||||
runs-on: ubuntu-20.04
|
||||
outputs:
|
||||
matrix: |
|
||||
{
|
||||
"chart": ${{ steps.list-changed.outputs.charts }}
|
||||
}
|
||||
detected: ${{ steps.list-changed.outputs.detected }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up chart-testing
|
||||
uses: helm/chart-testing-action@v2.0.1
|
||||
|
||||
- name: Install Dev tools
|
||||
run: |
|
||||
sudo wget https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /usr/bin/yq
|
||||
sudo chmod +x /usr/bin/yq
|
||||
|
||||
- name: Run chart-testing (list-changed)
|
||||
id: list-changed
|
||||
run: |
|
||||
EXCLUDED=$(yq eval -j '.excluded-charts // []' .github/ct-install.yaml)
|
||||
CHARTS=$(ct list-changed --config .github/ct-install.yaml)
|
||||
CHARTS_JSON=$(echo "${CHARTS}" | jq -R -s -c 'split("\n")[:-1]')
|
||||
OUTPUT_JSON=$(echo "{\"excluded\": ${EXCLUDED}, \"all\": ${CHARTS_JSON}}" | jq -c '.all-.excluded')
|
||||
echo ::set-output name=charts::${OUTPUT_JSON}
|
||||
if [[ $(echo ${OUTPUT_JSON} | jq -c '. | length') -gt 0 ]]; then
|
||||
echo "::set-output name=detected::true"
|
||||
fi
|
||||
|
||||
lint:
|
||||
needs:
|
||||
- changes-lint
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci-skip]')
|
||||
&&
|
||||
needs.changes-lint.outputs.detected == 'true'
|
||||
name: Lint charts
|
||||
strategy:
|
||||
matrix: ${{ fromJson(needs.changes-lint.outputs.matrix) }}
|
||||
fail-fast: true
|
||||
max-parallel: 15
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
@ -26,6 +106,47 @@ jobs:
|
||||
with:
|
||||
version: v3.5.3
|
||||
|
||||
- name: Get version
|
||||
id: version-get
|
||||
run: |
|
||||
shopt -s extglob
|
||||
OUTPUT=$(helm inspect chart ${{ matrix.chart }} | grep "^version:")
|
||||
VERSION=${OUTPUT#"version:"}
|
||||
echo "::set-output name=version::${VERSION##*( )}"
|
||||
shopt -u extglob
|
||||
|
||||
- name: Parse version
|
||||
id: version-parse
|
||||
uses: apexskier/github-semver-parse@v1
|
||||
with:
|
||||
version: ${{ steps.version-get.outputs.version }}
|
||||
|
||||
- name: Check version
|
||||
id: version-check
|
||||
run: |
|
||||
if [[ ${{ matrix.chart }} =~ ^charts\/(.*)\/.* ]]; then
|
||||
TYPE="${BASH_REMATCH[1]}"
|
||||
case $TYPE in
|
||||
stable)
|
||||
if [[ ${{ steps.version-parse.outputs.major }} -lt 1 ]]; then
|
||||
echo "Chart version for \"$TYPE\" charts must be >= 1.0.0"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
incubator)
|
||||
if [[ ${{ steps.version-parse.outputs.major }} -gt 0 ]]; then
|
||||
echo "Chart version for \"$TYPE\" charts must be < 1.0.0"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Unhandled chart type: $TYPE"
|
||||
exit 1
|
||||
esac
|
||||
fi
|
||||
|
||||
- uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: 3.7
|
||||
@ -33,23 +154,29 @@ jobs:
|
||||
- name: Set up chart-testing
|
||||
uses: helm/chart-testing-action@v2.0.1
|
||||
|
||||
- name: Run chart-testing (list-changed)
|
||||
id: list-changed
|
||||
run: |
|
||||
changed=$(ct list-changed --config .github/ct-lint.yaml)
|
||||
if [[ -n "$changed" ]]; then
|
||||
echo "::set-output name=changed::true"
|
||||
fi
|
||||
|
||||
- name: Run chart-testing (lint)
|
||||
id: lint
|
||||
run: ct lint --config .github/ct-lint.yaml
|
||||
if: steps.list-changed.outputs.changed == 'true'
|
||||
run: ct lint --config .github/ct-lint.yaml --charts ${{ matrix.chart }}
|
||||
|
||||
# Summarize matrix https://github.community/t/status-check-for-a-matrix-jobs/127354/7
|
||||
lint_success:
|
||||
needs:
|
||||
- lint
|
||||
if: ${{ always() }}
|
||||
name: Lint successful
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Check lint matrix status
|
||||
if: ${{ needs.lint.result != 'success' }}
|
||||
run: exit 1
|
||||
|
||||
unittest:
|
||||
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
|
||||
needs:
|
||||
- lint_success
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci-skip]')
|
||||
name: Run unit tests
|
||||
runs-on: ubuntu-20.04
|
||||
needs: lint
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
@ -70,18 +197,29 @@ jobs:
|
||||
ruby-version: 2.7
|
||||
|
||||
- name: Install dependencies
|
||||
env:
|
||||
RUBYJQ_USE_SYSTEM_LIBRARIES: 1
|
||||
run: |
|
||||
export RUBYJQ_USE_SYSTEM_LIBRARIES=1
|
||||
bundle install
|
||||
|
||||
- name: Run tests
|
||||
run: |
|
||||
bundle exec m -r test/charts
|
||||
bundle exec m -r ./test/
|
||||
|
||||
install:
|
||||
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
|
||||
needs:
|
||||
- changes-install
|
||||
- lint_success
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci-skip]')
|
||||
&&
|
||||
needs.changes-install.outputs.detected == 'true'
|
||||
name: Install charts
|
||||
strategy:
|
||||
matrix: ${{ fromJson(needs.changes-install.outputs.matrix) }}
|
||||
fail-fast: true
|
||||
max-parallel: 15
|
||||
runs-on: ubuntu-20.04
|
||||
needs: lint
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
@ -104,8 +242,18 @@ jobs:
|
||||
uses: nolar/setup-k3d-k3s@v1
|
||||
with:
|
||||
version: v1.19
|
||||
if: needs.lint.outputs.changed == 'true'
|
||||
|
||||
- name: Run chart-testing (install)
|
||||
run: ct install --config .github/ct-install.yaml
|
||||
if: needs.lint.outputs.changed == 'true'
|
||||
run: ct install --config .github/ct-install.yaml --charts ${{ matrix.chart }}
|
||||
|
||||
# Summarize matrix https://github.community/t/status-check-for-a-matrix-jobs/127354/7
|
||||
install_success:
|
||||
needs:
|
||||
- install
|
||||
if: ${{ always() }}
|
||||
name: Install successful
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Check install matrix status
|
||||
if: ${{ needs.install.result != 'success' }}
|
||||
run: exit 1
|
||||
|
4
.gitignore
vendored
4
.gitignore
vendored
@ -7,8 +7,8 @@
|
||||
.devcontainer/
|
||||
|
||||
# Helm resources
|
||||
charts/*/Chart.lock
|
||||
charts/*/charts
|
||||
charts/**/Chart.lock
|
||||
charts/**/charts
|
||||
|
||||
# Other rsources
|
||||
.env
|
||||
|
@ -2,12 +2,12 @@ apiVersion: v2
|
||||
appVersion: v0.102.0
|
||||
description: DNS proxy as ad-blocker for local network
|
||||
name: adguard-home
|
||||
version: 2.2.1
|
||||
version: 2.2.2
|
||||
keywords:
|
||||
- adguard-home
|
||||
- adguard
|
||||
- dns
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/adguard-home
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/adguard-home
|
||||
icon: https://avatars3.githubusercontent.com/u/8361145?s=200&v=4?sanitize=true
|
||||
sources:
|
||||
- https://github.com/AdguardTeam/AdGuardHome
|
@ -2,11 +2,11 @@ apiVersion: v2
|
||||
appVersion: 10.6.2
|
||||
description: Airsonic is a Free and Open Source community driven media server
|
||||
name: airsonic
|
||||
version: 1.2.0
|
||||
version: 1.2.1
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- airsonic
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/airsonic
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/airsonic
|
||||
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/airsonic-logo.png
|
||||
sources:
|
||||
- https://github.com/airsonic/airsonic
|
@ -2,14 +2,14 @@ apiVersion: v2
|
||||
appVersion: 0.4.2
|
||||
description: Bot for Prometheus Alertmanager
|
||||
name: alertmanager-bot
|
||||
version: 3.2.0
|
||||
version: 3.2.1
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- alertmanager
|
||||
- telegram
|
||||
- bot
|
||||
- alerting
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/alertmanager-bot
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/alertmanager-bot
|
||||
sources:
|
||||
- https://hub.docker.com/r/metalmatze/alertmanager-bot
|
||||
- https://github.com/metalmatze/alertmanager-bot
|
@ -2,14 +2,14 @@ apiVersion: v2
|
||||
appVersion: 4.0.5
|
||||
description: AppDaemon is a loosely coupled, multi-threaded, sandboxed python execution environment for writing automation apps for various types of Home Automation Software including Home Assistant and MQTT.
|
||||
name: appdaemon
|
||||
version: 3.2.0
|
||||
version: 3.2.1
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- appdaemon
|
||||
- home-automation
|
||||
- home-assistant
|
||||
- mqtt
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/appdaemon
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/appdaemon
|
||||
sources:
|
||||
- https://github.com/AppDaemon/appdaemon
|
||||
maintainers:
|
@ -2,7 +2,7 @@ apiVersion: v2
|
||||
appVersion: v0.9.0.5
|
||||
description: Bazarr is a companion application to Sonarr and Radarr. It manages and downloads subtitles based on your requirements
|
||||
name: bazarr
|
||||
version: 6.2.0
|
||||
version: 6.2.1
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- bazarr
|
||||
@ -11,7 +11,7 @@ keywords:
|
||||
- subtitles
|
||||
- usenet
|
||||
- torrent
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/bazarr
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/bazarr
|
||||
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/bazarr.png
|
||||
sources:
|
||||
- https://hub.docker.com/r/linuxserver/bazarr/
|
@ -2,7 +2,7 @@ apiVersion: v2
|
||||
name: bitwardenrs
|
||||
description: Unofficial Bitwarden compatible server written in Rust
|
||||
type: application
|
||||
version: 2.0.1
|
||||
version: 2.0.2
|
||||
appVersion: 1.18.0
|
||||
keywords:
|
||||
- bitwarden
|
||||
@ -10,7 +10,7 @@ keywords:
|
||||
- bitwarden_rs
|
||||
- password
|
||||
- rust
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/bitwardenrs
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/bitwardenrs
|
||||
sources:
|
||||
- https://github.com/dani-garcia/bitwarden_rs
|
||||
maintainers:
|
@ -2,12 +2,12 @@ apiVersion: v2
|
||||
appVersion: v0.12
|
||||
description: DNS proxy as ad-blocker for local network
|
||||
name: blocky
|
||||
version: 5.0.1
|
||||
version: 5.0.2
|
||||
keywords:
|
||||
- blocky
|
||||
- adblock
|
||||
- dns
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/blocky
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/blocky
|
||||
icon: https://github.com/0xERR0R/blocky/raw/master/docs/blocky.svg?sanitize=true
|
||||
sources:
|
||||
- https://github.com/0xERR0R/blocky
|
@ -2,12 +2,12 @@ apiVersion: v2
|
||||
appVersion: v2009.1.0
|
||||
description: Booksonic is a platform for accessing the audibooks you own wherever you are
|
||||
name: booksonic-air
|
||||
version: 3.2.0
|
||||
version: 3.2.1
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
keywords:
|
||||
- booksonic
|
||||
- audiobook
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/booksonic-air
|
||||
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/booksonic-air
|
||||
icon: https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/booksonic-air.png
|
||||
sources:
|
||||
- https://github.com/popeen/Booksonic-Air
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user