Skip to content

Commit

Permalink
[blog] Add values.schema.json
Browse files Browse the repository at this point in the history
- Bump common to 0.1.13
- Simplify values.yaml
- Change tag to version-v1.3 in order to reduce the number of chart updates.

Signed-off-by: nιcнolaѕ wιlde <[email protected]>
  • Loading branch information
nicholaswilde committed Jun 27, 2021
1 parent 0a1c5dc commit afb1823
Show file tree
Hide file tree
Showing 4 changed files with 238 additions and 37 deletions.
15 changes: 11 additions & 4 deletions charts/blog/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
---
apiVersion: v2
appVersion: "v1.3"
version: 0.1.2
version: 1.0.0
name: blog
description: Lightweight self-hosted facebook-styled PHP blog.
type: application
home: "https://github.com/nicholaswilde/helm-charts/tree/main/charts/blog"
icon: ""
dependencies:
- name: common
version: ~0.1.8
version: ~0.1.13
repository: https://nicholaswilde.github.io/helm-charts/
keywords:
- blog
Expand All @@ -25,7 +25,14 @@ maintainers:
email: [email protected]
annotations:
artifacthub.io/changes: |
- Bump tag to v1.3-ls2
- kind: added
description: values.schema.json
- kind: changed
description: Bump common to 0.1.13
- kind: changed
description: Simplify values.yaml
- kind: changed
description: Change tag to version-v1.3 in order to reduce the number of chart updates.
artifacthub.io/images: |
- name: blog
image: ghcr.io/nicholaswilde/blog:v1.3-ls2
image: ghcr.io/nicholaswilde/blog:version-v1.3
4 changes: 2 additions & 2 deletions charts/blog/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# blog

![Version: 0.1.2](https://img.shields.io/badge/Version-0.1.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v1.3](https://img.shields.io/badge/AppVersion-v1.3-informational?style=flat-square)
![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v1.3](https://img.shields.io/badge/AppVersion-v1.3-informational?style=flat-square)

Lightweight self-hosted facebook-styled PHP blog.

Expand All @@ -11,7 +11,7 @@ Lightweight self-hosted facebook-styled PHP blog.

| Repository | Name | Version |
|------------|------|---------|
| https://nicholaswilde.github.io/helm-charts/ | common | ~0.1.8 |
| https://nicholaswilde.github.io/helm-charts/ | common | ~0.1.13 |

## TL;DR
```console
Expand Down
214 changes: 214 additions & 0 deletions charts/blog/values.schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,214 @@
{
"$schema": "http://json-schema.org/schema#",
"required": [
"image",
"service",
"ingress"
],
"title": "blog Chart JSON Schema",
"type": "object",
"properties": {
"image": {
"$id": "#/properties/image",
"type": "object",
"title": "Chart image object",
"description": "An explanation about the purpose of this instance.",
"required": [
"repository",
"pullPolicy",
"tag"
],
"properties": {
"repository": {
"$id": "#/properties/image/properties/repository",
"default": "ghcr.io/nicholaswilde/blog",
"description": "An explanation about the purpose of this instance.",
"title": "Image repository",
"type": "string"
},
"pullPolicy": {
"$id": "#/properties/image/properties/pullPolicy",
"default": "IfNotPresent",
"description": "An explanation about the purpose of this instance.",
"title": "Image pull policy",
"type": "string"
},
"tag": {
"$id": "#/properties/image/properties/tag",
"default": "version-v1.3",
"description": "An explanation about the purpose of this instance.",
"title": "Image tag",
"type": "string"
}
}
},
"secret": {
"$id": "#/properties/secret",
"default": {},
"description": "An explanation about the purpose of this instance.",
"required": [],
"title": "Chart secret",
"type": "object",
"properties": {
"BLOG_NICK": {
"$id": "#/properties/secret/properties/BLOG_NICK",
"default": "username",
"description": "An explanation about the purpose of this instance.",
"title": "Blog user name",
"type": "string"
},
"BLOG_PASS": {
"$id": "#/properties/secret/properties/BLOG_PASS",
"default": "password",
"description": "An explanation about the purpose of this instance.",
"title": "Blog password",
"type": "string"
}
}
},
"env": {
"$id": "#/properties/env",
"default": {},
"description": "An explanation about the purpose of this instance.",
"required": [],
"title": "Environmental variables",
"type": "object",
"properties": {
"TZ": {
"$id": "#/properties/env/properties/TZ",
"default": "America/Los_Angeles",
"description": "An explanation about the purpose of this instance.",
"title": "Container timezone",
"type": "string"
},
"BLOG_TITLE": {
"$id": "#/properties/env/properties/BLOG_TITLE",
"default": "Blog",
"description": "An explanation about the purpose of this instance.",
"title": "Blog title",
"type": "string"
},
"BLOG_NAME": {
"$id": "#/properties/env/properties/BLOG_NAME",
"default": "Max Musermann",
"description": "An explanation about the purpose of this instance.",
"examples": [],
"title": "Blog name",
"type": "string"
},
"BLOG_LANG": {
"$id": "#/properties/env/properties/BLOG_LANG",
"default": "en",
"description": "An explanation about the purpose of this instance.",
"examples": [],
"title": "Blog language",
"type": "string"
}
}
},
"service": {
"$id": "#/properties/service",
"description": "An explanation about the purpose of this instance.",
"required": [
"port"
],
"title": "Service object",
"type": "object",
"properties": {
"port": {
"$id": "#/properties/service/properties/port",
"description": "An explanation about the purpose of this instance.",
"required": [
"port"
],
"title": "Service port object",
"type": "object",
"properties": {
"port": {
"$id": "#/properties/service/properties/port/properties/port",
"default": 80,
"description": "An explanation about the purpose of this instance.",
"title": "Service port number",
"type": "integer"
}
}
}
}
},
"ingress": {
"$id": "#/properties/ingress",
"description": "An explanation about the purpose of this instance.",
"required": [
"enabled"
],
"title": "Ingress object",
"type": "object",
"properties": {
"enabled": {
"$id": "#/properties/ingress/properties/enabled",
"default": false,
"description": "An explanation about the purpose of this instance.",
"title": "Enable ingress",
"type": "boolean"
}
}
},
"persistence": {
"$id": "#/properties/persistence",
"description": "An explanation about the purpose of this instance.",
"required": [],
"title": "Persistence object",
"type": "object",
"properties": {
"data": {
"$id": "#/properties/persistence/properties/data",
"type": "object",
"title": "data PVC",
"description": "An explanation about the purpose of this instance.",
"required": [
"enabled",
"emptyDir",
"mountPath"
],
"properties": {
"enabled": {
"$id": "#/properties/persistence/properties/data/properties/enabled",
"type": "boolean",
"title": "Enable data PVC",
"description": "An explanation about the purpose of this instance.",
"default": false
},
"emptyDir": {
"$id": "#/properties/persistence/properties/data/properties/emptyDir",
"type": "boolean",
"title": "data emptyDir",
"description": "An explanation about the purpose of this instance.",
"default": false
},
"mountPath": {
"$id": "#/properties/persistence/properties/data/properties/mountPath",
"default": "/var/www/html/data",
"description": "An explanation about the purpose of this instance.",
"title": "data mount path",
"type": "string"
},
"accessMode": {
"$id": "#/properties/persistence/properties/data/properties/accessMode",
"default": "ReadWriteOnce",
"description": "An explanation about the purpose of this instance.",
"title": "data access mode",
"type": "string"
},
"size": {
"$id": "#/properties/persistence/properties/data/properties/size",
"default": "1Gi",
"description": "An explanation about the purpose of this instance.",
"title": "data size",
"type": "string"
}
}
}
}
}
}
}
42 changes: 11 additions & 31 deletions charts/blog/values.yaml
Original file line number Diff line number Diff line change
@@ -1,19 +1,23 @@
---
# Default values for blog.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/nicholaswilde/helm-charts/tree/main/charts/common/values.yaml
#

image:
repository: ghcr.io/nicholaswilde/blog
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: "v1.3-ls2"
tag: "version-v1.3"

secret:
BLOG_NICK: username
BLOG_PASS: password

# See more environment variables in the blog documentation
# https://github.com/nicholaswilde/docker-blog
env:
# https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
TZ: "America/Los_Angeles"
BLOG_TITLE: Blog
BLOG_NAME: Max Musermann
Expand All @@ -24,36 +28,12 @@ service:
port: 80

ingress:
enabled: true
hosts:
- host: "blog.192.168.1.203.nip.io"
paths:
- path: /
# Ignored if not kubeVersion >= 1.14-0
pathType: Prefix
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
enabled: false

persistence:
data:
enabled: false
emptyDir: false
mountPath: /var/www/html/data
## Template downloads data Persistent Volume Storage Class
## If defined, storageClassName: <storageClass>
## If set to "-", storageClassName: "", which disables dynamic provisioning
## If undefined (the default) or set to null, no storageClassName spec is
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
##
# storageClass: "-"
##
## If you want to reuse an existing claim, you can pass the name of the PVC using
## the existingClaim variable
# existingClaim: your-claim
accessMode: ReadWriteOnce
size: 1Gi
## Do not delete the pvc upon helm uninstall
skipuninstall: false

0 comments on commit afb1823

Please sign in to comment.