Post Code-Freeze Review, Bugsfixes and Documentation

- Fix traefik Portal Button
- Touchup Security Policies
- Update Support Policies
- Re-Add Deluge as incubator App
- Add Canary to Security Policies
- Add all-contributors basic config
This commit is contained in:
kjeld Schouten-Lebbing
2021-03-31 22:50:04 +02:00
parent 56211222bf
commit cde18639c7
568 changed files with 2295 additions and 1614 deletions
+23 -3
View File
@@ -1,6 +1,26 @@
# Default code owner
* @ornias1993
/charts/esphome/* @tprelog
/charts/unifi/* @whiskerz007
/charts/emby/* @djs52
# Apps maintained by ornias1993
sonarr/ @ornias1993
radarr/ @ornias1993
traefik/ @ornias1993
plex/ @ornias1993
lidarr/ @ornias1993
jackett/ @ornias1993
kms/ @ornias1993
ombi/ @ornias1993
transmission/ @ornias1993
tautulli/ @ornias1993
# Apps maintained by tprelog
esphome/ @tprelog
zwavejs2mqtt/ @tprelog
home-assistant/ @tprelog
# Apps maintained by stavros-k
handbrake/* @stavros-k
collabora-online/ @stavros-k
# Apps maintained by djs52
emby/ @djs52
+1 -18
View File
@@ -7,21 +7,4 @@ assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Additional context**
Add any other context about the problem here.
**Describe the app you request to be added**
+2 -2
View File
@@ -1,8 +1,8 @@
---
name: Feature request
name: Feature or Enhancement request
about: Suggest an idea for this project
title: ''
labels: Feature
labels: enhancement
assignees: ''
---
+26 -9
View File
@@ -1,11 +1,18 @@
# About TrueCharts<br>
**Community App Catalog for TrueNAS SCALE**
[![GitHub last commit](https://img.shields.io/github/last-commit/truecharts/truecharts/master.svg)](https://github.com/truecharts/apps/commits) [![Charts: Release](https://github.com/truecharts/apps/actions/workflows/charts-release.yaml/badge.svg)](https://github.com/truecharts/apps/actions/workflows/charts-release.yaml) [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit) [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Ftruecharts%2Ftruecharts.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Ftruecharts%2Ftruecharts?ref=badge_shield) [![License](https://img.shields.io/badge/License-BSD%203--Clause-orange.svg)](https://github.com/truecharts/apps/blob/master/docs/LICENSE.BSD3)
[![docs](https://img.shields.io/badge/docs-rtfm-yellow?logo=gitbook&logoColor=white&style=for-the-badge)](https://truecharts.org/)
[![GitHub last commit](https://img.shields.io/github/last-commit/truecharts/apps?color=brightgreen&logoColor=white&style=for-the-badge)](https://github.com/truecharts/apps/commits)
[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white&style=for-the-badge)](https://github.com/pre-commit/pre-commit)
[![renovate](https://img.shields.io/badge/renovate-enabled-brightgreen?style=for-the-badge&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjUgNSAzNzAgMzcwIj48Y2lyY2xlIGN4PSIxODkiIGN5PSIxOTAiIHI9IjE4NCIgZmlsbD0iI2ZlMiIvPjxwYXRoIGZpbGw9IiM4YmIiIGQ9Ik0yNTEgMjU2bC0zOC0zOGExNyAxNyAwIDAxMC0yNGw1Ni01NmMyLTIgMi02IDAtN2wtMjAtMjFhNSA1IDAgMDAtNyAwbC0xMyAxMi05LTggMTMtMTNhMTcgMTcgMCAwMTI0IDBsMjEgMjFjNyA3IDcgMTcgMCAyNGwtNTYgNTdhNSA1IDAgMDAwIDdsMzggMzh6Ii8+PHBhdGggZmlsbD0iI2Q1MSIgZD0iTTMwMCAyODhsLTggOGMtNCA0LTExIDQtMTYgMGwtNDYtNDZjLTUtNS01LTEyIDAtMTZsOC04YzQtNCAxMS00IDE1IDBsNDcgNDdjNCA0IDQgMTEgMCAxNXoiLz48cGF0aCBmaWxsPSIjYjMwIiBkPSJNMjg1IDI1OGw3IDdjNCA0IDQgMTEgMCAxNWwtOCA4Yy00IDQtMTEgNC0xNiAwbC02LTdjNCA1IDExIDUgMTUgMGw4LTdjNC01IDQtMTIgMC0xNnoiLz48cGF0aCBmaWxsPSIjYTMwIiBkPSJNMjkxIDI2NGw4IDhjNCA0IDQgMTEgMCAxNmwtOCA3Yy00IDUtMTEgNS0xNSAwbC05LThjNSA1IDEyIDUgMTYgMGw4LThjNC00IDQtMTEgMC0xNXoiLz48cGF0aCBmaWxsPSIjZTYyIiBkPSJNMjYwIDIzM2wtNC00Yy02LTYtMTctNi0yMyAwLTcgNy03IDE3IDAgMjRsNCA0Yy00LTUtNC0xMSAwLTE2bDgtOGM0LTQgMTEtNCAxNSAweiIvPjxwYXRoIGZpbGw9IiNiNDAiIGQ9Ik0yODQgMzA0Yy00IDAtOC0xLTExLTRsLTQ3LTQ3Yy02LTYtNi0xNiAwLTIybDgtOGM2LTYgMTYtNiAyMiAwbDQ3IDQ2YzYgNyA2IDE3IDAgMjNsLTggOGMtMyAzLTcgNC0xMSA0em0tMzktNzZjLTEgMC0zIDAtNCAybC04IDdjLTIgMy0yIDcgMCA5bDQ3IDQ3YTYgNiAwIDAwOSAwbDctOGMzLTIgMy02IDAtOWwtNDYtNDZjLTItMi0zLTItNS0yeiIvPjxwYXRoIGZpbGw9IiMxY2MiIGQ9Ik0xNTIgMTEzbDE4LTE4IDE4IDE4LTE4IDE4em0xLTM1bDE4LTE4IDE4IDE4LTE4IDE4em0tOTAgODlsMTgtMTggMTggMTgtMTggMTh6bTM1LTM2bDE4LTE4IDE4IDE4LTE4IDE4eiIvPjxwYXRoIGZpbGw9IiMxZGQiIGQ9Ik0xMzQgMTMxbDE4LTE4IDE4IDE4LTE4IDE4em0tMzUgMzZsMTgtMTggMTggMTgtMTggMTh6Ii8+PHBhdGggZmlsbD0iIzJiYiIgZD0iTTExNiAxNDlsMTgtMTggMTggMTgtMTggMTh6bTU0LTU0bDE4LTE4IDE4IDE4LTE4IDE4em0tODkgOTBsMTgtMTggMTggMTgtMTggMTh6bTEzOS04NWwyMyAyM2M0IDQgNCAxMSAwIDE2TDE0MiAyNDBjLTQgNC0xMSA0LTE1IDBsLTI0LTI0Yy00LTQtNC0xMSAwLTE1bDEwMS0xMDFjNS01IDEyLTUgMTYgMHoiLz48cGF0aCBmaWxsPSIjM2VlIiBkPSJNMTM0IDk1bDE4LTE4IDE4IDE4LTE4IDE4em0tNTQgMThsMTgtMTcgMTggMTctMTggMTh6bTU1LTUzbDE4LTE4IDE4IDE4LTE4IDE4em05MyA0OGwtOC04Yy00LTUtMTEtNS0xNiAwTDEwMyAyMDFjLTQgNC00IDExIDAgMTVsOCA4Yy00LTQtNC0xMSAwLTE1bDEwMS0xMDFjNS00IDEyLTQgMTYgMHoiLz48cGF0aCBmaWxsPSIjOWVlIiBkPSJNMjcgMTMxbDE4LTE4IDE4IDE4LTE4IDE4em01NC01M2wxOC0xOCAxOCAxOC0xOCAxOHoiLz48cGF0aCBmaWxsPSIjMGFhIiBkPSJNMjMwIDExMGwxMyAxM2M0IDQgNCAxMSAwIDE2TDE0MiAyNDBjLTQgNC0xMSA0LTE1IDBsLTEzLTEzYzQgNCAxMSA0IDE1IDBsMTAxLTEwMWM1LTUgNS0xMSAwLTE2eiIvPjxwYXRoIGZpbGw9IiMxYWIiIGQ9Ik0xMzQgMjQ4Yy00IDAtOC0yLTExLTVsLTIzLTIzYTE2IDE2IDAgMDEwLTIzTDIwMSA5NmExNiAxNiAwIDAxMjIgMGwyNCAyNGM2IDYgNiAxNiAwIDIyTDE0NiAyNDNjLTMgMy03IDUtMTIgNXptNzgtMTQ3bC00IDItMTAxIDEwMWE2IDYgMCAwMDAgOWwyMyAyM2E2IDYgMCAwMDkgMGwxMDEtMTAxYTYgNiAwIDAwMC05bC0yNC0yMy00LTJ6Ii8+PC9zdmc+)](https://github.com/renovatebot/renovate)
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
[![All Contributors](https://img.shields.io/badge/all_contributors-18-orange.svg?style=for-the-badge)](#contributors-)
<!-- ALL-CONTRIBUTORS-BADGE:END -->
---
Truecharts is an innitiative to provide high quality Apps to use with the TrueNAS SCALE App Ecosystem.
Our primary goals are:
- Freedom
- Micro-Service Centered
- Native Kubernetes
- Stability
- Consistancy
@@ -13,13 +20,10 @@ All our apps are supposed to work together, be easy to setup using the TrueNAS U
## Getting started using TrueCharts
Installing TrueCharts within TrueNAS SCALE, still requires the CLI. However it's not hard:
- Go to you shell of choice (either SSH or the TrueNAS webui shell)
- enter `cli`
- enter `app catalog create repository="https://github.com/truecharts/apps" label="TrueCharts"`
Installing TrueCharts within TrueNAS SCALE, is possible using the TrueNAS SCALE Catalog list.
For more information, please visit our website:
https://truecharts.org
For more information:
https://truecharts.org/manual/adding-truecharts/
## FAQ
@@ -30,9 +34,20 @@ There is a significant chance your issue has been reported before!
Creating charts takes some getting used to, as it's based on Helm charts. We highly suggest prior knowhow on creation/modifying Helm Charts, before taking on the challenge of creating SCALE Apps.
## Featured Projects
A lot of our work is based on the great effort of others. We would love to extend special thanks to these projects we owe a lot to:
| <a href="https://www.truenas.com/truenas-scale/"> <img src="https://user-images.githubusercontent.com/7613738/113836934-a1764e00-978d-11eb-8e19-a087c5c1f99b.png" width="150" height="150" /> </a> | <a href="https://k8s-at-home.com/"> <img src="https://user-images.githubusercontent.com/7613738/113837194-e26e6280-978d-11eb-9632-2e1529946302.png" width="150" height="150" /> </a> | <a href="https://traefik.io/traefik/"> <img src="https://user-images.githubusercontent.com/7613738/113837353-0b8ef300-978e-11eb-873e-14769acfe1f1.png" width="150" height="150" /> </a> |
| :---------------: | :---------------: | :---------------: |
| <a href="https://www.truenas.com/truenas-scale/">TrueNAS SCALE</a> | <a href="https://k8s-at-home.com/">K8S-At-Home</a> | <a href="https://traefik.io/traefik/">Traefik</a> |
## Licence
`SPDX-License-Identifier: BSD-3-Clause`
[![License](https://img.shields.io/badge/License-BSD%203--Clause-orange.svg?style=for-the-badge)](https://github.com/truecharts/apps/blob/master/docs/LICENSE.BSD3)
Truecharts as a whole, is based on a BSD-3-clause license, this ensures almost everyone can use and modify our charts. However: As a lot of Apps are based on upstream Helm Charts, Licences can vary on a per-App basis. This can easily be seen by the presence of a "LICENSE" file in the App rootfolder.
@@ -40,5 +55,7 @@ Some Apps may also contain parts in other licenses, such as libraries or templat
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Ftruecharts%2Ftruecharts.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Ftruecharts%2Ftruecharts?ref=badge_large)
`SPDX-License-Identifier: BSD-3-Clause`
---
![built-with-resentment](http://forthebadge.com/images/badges/built-with-resentment.svg) ![contains-technical-debt](http://forthebadge.com/images/badges/contains-technical-debt.svg)
+28 -9
View File
@@ -1,15 +1,34 @@
# Security Policy
## Supported Versions
## Supported Versions of TrueNAS SCALE
Our focus will always be on the latest version of TrueNAS SCALE.
However: We might provide extended support to older versions of TrueNAS SCALE as depicted in our Support Policy
## CVE's and you
As depicted in our guidelines, we do NOT accept containers and/or Apps with known `high` or `critical` CVE's present. Unless those CVE's have been thoroughly mitigated and said mitigation has been both desclosed and thoroughly reviewed.
## Response timeframe
The safety of our users is our prime concerns. We therefore aim to respond to any issues within 24 hours.
Though we hope that such situations will never happen, we will, in the most dire of circumstances, not hesitate with agressive responses to fix issues. This includes completely locking down/removing certain Apps or portions of the project from being installed.
## Compliance
As project owner is located in the Netherlands, we need to comply to all legal requirements and lawfull orders from the Government of the Netherlands.
**As of Today we have not recieved any data requests from the Dutch Government, that we are forbiden to make public. **
We are required to be fully GDPR compliant and fall under the sole authority of the Dutch Privacy Authority when it comes to GDPR compliance.
| Branch | TrueNAS version | Supported with updates |
| ------- | ------- |------------------ |
| MASTER | 21.02 ALPHA | :white_check_mark: |
| Charts | Standard Kubernetes/Helm | :white_check_mark: |
## Reporting a Vulnerability
If you find any security issue, please email the project maintainer.
Currently the Project Maintainer is:
[Ornias1993](https://github.com/Ornias1993)
If you find any security issue, please email the project directly:
info@truecharts.org
+9
View File
@@ -0,0 +1,9 @@
# Support Policy
## Supported Versions
| Branch | TrueNAS version | Supported with updates | Accepting Bugreports |
| ------- | ------- |------------------ | -------------- |
| `legacy_21.02ALPHA` | 21.02 ALPHA | :X: | :X: |
| MASTER | 21.04 ALPHA | :white_check_mark: | :white_check_mark: |
| MASTER | Nightly | :white_check_mark: | :white_check_mark: |
+2 -2
View File
@@ -8,10 +8,10 @@
"rebaseWhen": "conflicted",
"prConcurrentLimit": 5,
"helm-values": {
"fileMatch": ["charts/.+/.+/.*_values\\.yaml$"]
"fileMatch": ["stable/.+/.+/.*_values\\.yaml$", "incubator/.+/.+/.*_values\\.yaml$"]
},
"helmv3": {
"fileMatch": ["charts/.+/.+/Chart\\.yaml$"]
"fileMatch": ["stable/.+/.+/Chart\\.yaml$", "incubator/.+/.+/Chart\\.yaml$"]
},
"packageRules": [
// Setup datasources for dep updates
+9 -9
View File
@@ -14,13 +14,13 @@ on:
- '!stable/**/app-readme.md'
- '!stable/**/app-readme.md.gotmpl'
- '!stable/**/docs/*'
- 'beta/**'
- '!beta/**/*.md'
- '!beta/**/README.md'
- '!beta/**/README.md.gotmpl'
- '!beta/**/app-readme.md'
- '!beta/**/app-readme.md.gotmpl'
- '!beta/**/docs/*'
- 'incubator/**'
- '!incubator/**/*.md'
- '!incubator/**/README.md'
- '!incubator/**/README.md.gotmpl'
- '!incubator/**/app-readme.md'
- '!incubator/**/app-readme.md.gotmpl'
- '!incubator/**/docs/*'
- '.github/workflows/apps.test.yaml'
jobs:
@@ -227,7 +227,7 @@ jobs:
filters: |
changed:
- 'stable/**'
- 'beta/**'
- 'incubator/**'
- run: echo '${{ toJson(steps.filter.outputs) }}' > changes.json
- id: reduce
run: |
@@ -253,7 +253,7 @@ jobs:
if test -f "./stable/${{ matrix.app }}/item.yaml"; then
train="stable"
else
train="beta"
train="incubator"
fi
echo ::set-output name=train::${train}
maxfolderversion=$(ls -l ${train}/${{ matrix.app }} | grep ^d | awk '{print $9}' | tail -n 1)
+2 -2
View File
@@ -42,9 +42,9 @@ jobs:
fi
fi
done
- name: update folder names and dependencies for beta
- name: update folder names and dependencies for incubator
run: |
for chart in beta/*; do
for chart in incubator/*; do
if [ -d "${chart}" ]; then
maxfolderversion=$(ls -l ${chart} | grep ^d | awk '{print $9}' | tail -n 1)
maxchartversion=$(cat ${chart}/${maxfolderversion}/Chart.yaml | grep "^version: " | awk -F" " '{ print $2 }')
+17 -14
View File
@@ -5,12 +5,13 @@ on:
push:
branches:
- master
- staging
tags-ignore:
- '**'
paths:
- 'library/**/Chart.yaml'
- '.tools/gen-helm-docs.sh'
- '.tools/templates/docs/**'
- '.tools/templates/app/*.gotmpl'
- '**.gotmpl'
- '**/LICENSE'
- '**LICENSE'
@@ -43,7 +44,7 @@ jobs:
- name: Copy general readme to website
run: |
yes | cp -rf .github/README.md docs/about/index.md || echo "readme copy failed, continuing..."
yes | cp -rf .github/CODE_OF_CONDUCT docs/about/code_of_conduct.md || echo "CODE_OF_CONDUCT copy failed, continuing..."
yes | cp -rf .github/CODE_OF_CONDUCT docs/about/code_of_conduct.md || echo "CODE_OF_CONDUCT copy failed, continuing..."
yes | cp -rf .github/CONTRIBUTING docs/development/contributing.md || echo "CONTRIBUTING copy failed, continuing..."
yes | cp -rf LICENSE docs/about/LICENSE.md || echo "license copy failed, continuing..."
sed -i '1s/^/# License<br>\n\n/' docs/about/LICENSE.md
@@ -58,28 +59,30 @@ jobs:
maxfolderversion=$(ls -l ${chart} | grep ^d | awk '{print $9}' | tail -n 1)
chartname=$(basename ${chart})
echo "Processing: ${chart} - folder: ${maxfolderversion}"
mkdir -p docs/apps/${chartname} || echo "app path already exists, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/README.md docs/apps/${chartname}/index.md || echo "readme copy failed, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/LICENSE docs/apps/${chartname}/LICENSE.md || echo "license copy failed, continuing..."
sed -i '1s/^/# License<br>\n\n/' docs/apps/${chartname}/LICENSE.md || echo "license edit failed, continuing..."
mkdir -p docs/apps/stable/${chartname} || echo "app path already exists, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/README.md docs/apps/stable/${chartname}/index.md || echo "readme copy failed, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/CONFIG.md docs/apps/stable/${chartname}/CONFIG.md || echo "config copy failed, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/LICENSE docs/apps/stable/${chartname}/LICENSE.md || echo "license copy failed, continuing..."
sed -i '1s/^/# License<br>\n\n/' docs/apps/stable/${chartname}/LICENSE.md || echo "license edit failed, continuing..."
fi
done
ls docs/apps/
ls docs/apps/stable/
- name: Copy beta Apps readme to website
- name: Copy incubator Apps readme to website
run: |
for chart in beta/*; do
for chart in incubator/*; do
if [ -d "${chart}" ]; then
maxfolderversion=$(ls -l ${chart} | grep ^d | awk '{print $9}' | tail -n 1)
chartname=$(basename ${chart})
echo "Processing: ${chart} - folder: ${maxfolderversion}"
mkdir -p docs/apps/${chartname} || echo "app path already exists, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/README.md docs/apps/${chartname}/index.md || echo "readme copy failed, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/LICENSE docs/apps/${chartname}/LICENSE.md || echo "license copy failed, continuing..."
sed -i '1s/^/# License<br>\n\n/' docs/apps/${chartname}/LICENSE.md || echo "license edit failed, continuing..."
mkdir -p docs/apps/incubator/${chartname} || echo "app path already exists, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/README.md docs/apps/incubator/${chartname}/index.md || echo "readme copy failed, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/CONFIG.md docs/apps/incubator/${chartname}/CONFIG.md || echo "config copy failed, continuing..."
yes | cp -rf ${chart}/${maxfolderversion}/LICENSE docs/apps/incubator/${chartname}/LICENSE.md || echo "license copy failed, continuing..."
sed -i '1s/^/# License<br>\n\n/' docs/apps/incubator/${chartname}/LICENSE.md || echo "license edit failed, continuing..."
fi
done
ls docs/apps/
ls docs/apps/incubator/
- name: Commit and Push updated docs
run: |
+1 -1
View File
@@ -4,10 +4,10 @@ on:
push:
branches:
- master
- staging
paths:
- 'docs/**'
- '.github/workflows/docs.deploy.yaml'
- 'mkdocs.yml'
jobs:
build:
@@ -5,7 +5,6 @@ on:
push:
branches:
- main
- staging
paths:
- ".github/workflows/general.security-scan.yaml"
schedule: