updated helm chart catalogue
This commit is contained in:
parent
a4414711f2
commit
b1cea515c7
|
@ -0,0 +1,758 @@
|
|||
{
|
||||
"$schema": "http://json-schema.org/schema#",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"resources": {
|
||||
"description": "Your service will have at least the requested resources and never more than its limits. No limit for a resource and you can consume everything left on the host machine.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requests": {
|
||||
"description": "Guaranteed resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The amount of cpu guaranteed",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "100m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "cpu",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.cpuRequest",
|
||||
"useRegionSliderConfig": "cpu"
|
||||
}
|
||||
},
|
||||
"memory": {
|
||||
"description": "The amount of memory guaranteed",
|
||||
"title": "memory",
|
||||
"type": "string",
|
||||
"default": "2Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "memory",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.memoryRequest",
|
||||
"useRegionSliderConfig": "memory"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"limits": {
|
||||
"description": "max resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The maximum amount of cpu",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "30000m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "cpu",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.cpuLimit",
|
||||
"useRegionSliderConfig": "cpu"
|
||||
}
|
||||
},
|
||||
"memory": {
|
||||
"description": "The maximum amount of memory",
|
||||
"title": "Memory",
|
||||
"type": "string",
|
||||
"default": "50Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "memory",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.memoryLimit",
|
||||
"useRegionSliderConfig": "memory"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"discovery": {
|
||||
"description": "configure your service to autodetect some ressources.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"hive": {
|
||||
"type": "boolean",
|
||||
"title": "Enable hive metastore discovery",
|
||||
"description": "discover your hive metastore service",
|
||||
"default": true
|
||||
},
|
||||
"mlflow": {
|
||||
"type": "boolean",
|
||||
"title": "Enable mlflow discovery",
|
||||
"description": "discover your mlflow service",
|
||||
"default": true
|
||||
},
|
||||
"metaflow": {
|
||||
"type": "boolean",
|
||||
"title": "Enable metaflow discovery",
|
||||
"description": "discover your metaflow service",
|
||||
"default": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"description": "spark-history specific configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"image": {
|
||||
"description": "image docker",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"pullPolicy": {
|
||||
"type": "string",
|
||||
"description": "option when pulling the docker image",
|
||||
"default": "IfNotPresent",
|
||||
"enum": [
|
||||
"IfNotPresent",
|
||||
"Always",
|
||||
"Never"
|
||||
]
|
||||
},
|
||||
"version": {
|
||||
"description": "vscode supported version",
|
||||
"type": "string",
|
||||
"default": "inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"listEnum": [
|
||||
"inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"inseefrlab/onyxia-vscode-python:py3.10.13"
|
||||
],
|
||||
"render": "list",
|
||||
"hidden": {
|
||||
"value": true,
|
||||
"path": "service/image/custom/enabled"
|
||||
}
|
||||
},
|
||||
"custom": {
|
||||
"description": "use a custom vscode docker image",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"title": "custom image",
|
||||
"type": "boolean",
|
||||
"description": "use a custom vscode docker images",
|
||||
"default": false
|
||||
},
|
||||
"version": {
|
||||
"description": "vscode unsupported version",
|
||||
"type": "string",
|
||||
"default": "inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "service/image/custom/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"persistence": {
|
||||
"description": "Configuration for persistence",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Create a persistent volume",
|
||||
"default": true
|
||||
},
|
||||
"size": {
|
||||
"type": "string",
|
||||
"title": "Persistent volume size",
|
||||
"description": "Size of the persistent volume",
|
||||
"default": "10Gi",
|
||||
"form": true,
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 100,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.disk",
|
||||
"useRegionSliderConfig": "disk"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "persistence/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"security": {
|
||||
"description": "security specific configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"password": {
|
||||
"type": "string",
|
||||
"description": "Password",
|
||||
"default": "changeme",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{project.password}}"
|
||||
}
|
||||
},
|
||||
"allowlist": {
|
||||
"type": "object",
|
||||
"description": "IP protection",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable IP protection",
|
||||
"description": "Only the configured set of IPs will be able to reach the service",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultIpProtection"
|
||||
}
|
||||
},
|
||||
"ip": {
|
||||
"type": "string",
|
||||
"description": "the white list of IP is whitespace",
|
||||
"title": "Whitelist of IP",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{user.ip}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"networkPolicy": {
|
||||
"type": "object",
|
||||
"description": "Define access policy to the service",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable network policy",
|
||||
"description": "Only pod from the same namespace will be allowed",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultNetworkPolicy"
|
||||
}
|
||||
},
|
||||
"from": {
|
||||
"type": "array",
|
||||
"description": "Array of source allowed to have network access to your service",
|
||||
"default": [],
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.from"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"kubernetes": {
|
||||
"description": "configuration of your kubernetes access",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "allow your service to access your namespace ressources",
|
||||
"default": true
|
||||
},
|
||||
"role": {
|
||||
"type": "string",
|
||||
"description": "bind your service account to this kubernetes default role",
|
||||
"default": "view",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "kubernetes/enabled"
|
||||
},
|
||||
"enum": [
|
||||
"view",
|
||||
"edit",
|
||||
"admin"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"git": {
|
||||
"description": "Git user configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add git config inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "user name for git",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.name}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"email": {
|
||||
"type": "string",
|
||||
"description": "user email for git",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.email}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"cache": {
|
||||
"type": "string",
|
||||
"description": "duration in seconds of the credentials cache duration",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.credentials_cache_duration}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"token": {
|
||||
"type": "string",
|
||||
"description": "personal access token",
|
||||
"default": "",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.token}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"repository": {
|
||||
"type": "string",
|
||||
"description": "projet",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.project}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"branch": {
|
||||
"type": "string",
|
||||
"description": "Branch automatically checked out",
|
||||
"default": "",
|
||||
"hidden": {
|
||||
"value": "",
|
||||
"path": "git/repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"vault": {
|
||||
"description": "Configuration of vault client",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add vault temporary identity inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"token": {
|
||||
"description": "token vault",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_TOKEN}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"url": {
|
||||
"description": "url of vault server",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_ADDR}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"mount": {
|
||||
"description": "mount of the v2 secret engine",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_MOUNT}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"directory": {
|
||||
"description": "top level directory",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_TOP_DIR}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"secret": {
|
||||
"description": "the path of the secret to convert into a list of environment variables",
|
||||
"type": "string",
|
||||
"default": "",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"s3": {
|
||||
"description": "Configuration of temporary identity",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add S3 temporary identity inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"accessKeyId": {
|
||||
"description": "AWS Access Key",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "s3.AWS_ACCESS_KEY_ID"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"endpoint": {
|
||||
"description": "AWS S3 Endpoint",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_S3_ENDPOINT}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"defaultRegion": {
|
||||
"description": "AWS S3 default region",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_DEFAULT_REGION}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"secretAccessKey": {
|
||||
"description": "AWS S3 secret access key",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SECRET_ACCESS_KEY}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"sessionToken": {
|
||||
"description": "AWS S3 session Token",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SESSION_TOKEN}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"ingress": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Ingress Details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable Ingress",
|
||||
"type": "boolean",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.ingress"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"userHostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"ingressClassName": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "ingressClassName",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.ingressClassName}}"
|
||||
}
|
||||
},
|
||||
"useCertManager": {
|
||||
"type": "boolean",
|
||||
"description": "Whether CertManager should be used to generate a certificate",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.useCertManager"
|
||||
}
|
||||
},
|
||||
"certManagerClusterIssuer":{
|
||||
"type": "string",
|
||||
"description": "certManager cluster issuer",
|
||||
"title": "CertManager Cluster Issuer",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.certManagerClusterIssuer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"route": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Route details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable route",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.route"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"userHostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"networking": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Networking detail",
|
||||
"properties": {
|
||||
"user": {
|
||||
"type": "object",
|
||||
"description": "user defined port",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable a custom service port",
|
||||
"description": "Enable a custom service port",
|
||||
"default": false
|
||||
},
|
||||
"port": {
|
||||
"type": "integer",
|
||||
"description": "port of the custom service",
|
||||
"title": "Custom service port",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "networking/user/enabled"
|
||||
},
|
||||
"default": 5000
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"init": {
|
||||
"description": "Init parameters",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"regionInit": {
|
||||
"type": "string",
|
||||
"description": "region initialization script",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.initScriptUrl}}"
|
||||
}
|
||||
},
|
||||
"regionInitCheckSum": {
|
||||
"type": "string",
|
||||
"description": "region initialization script",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.initScriptCheckSum}}"
|
||||
}
|
||||
},
|
||||
"personalInit": {
|
||||
"type": "string",
|
||||
"description": "user initialization script",
|
||||
"default": ""
|
||||
},
|
||||
"personalInitArgs": {
|
||||
"type": "string",
|
||||
"description": "args for user initialization script",
|
||||
"default": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"repository": {
|
||||
"description": "python repositories for pip and conda",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"pipRepository": {
|
||||
"type": "string",
|
||||
"description": "python repository for pip",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{packageRepositoryInjection.pypiProxyUrl}}"
|
||||
}
|
||||
},
|
||||
"condaRepository": {
|
||||
"type": "string",
|
||||
"description": "python repository for pip",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{packageRepositoryInjection.condaProxyUrl}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"startupProbe": {
|
||||
"type": "object",
|
||||
"description": "Start up probe",
|
||||
"default": {},
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.startupProbe"
|
||||
}
|
||||
},
|
||||
"tolerations": {
|
||||
"type": "array",
|
||||
"description": "Array of tolerations",
|
||||
"default": [],
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.tolerations"
|
||||
}
|
||||
},
|
||||
"nodeSelector": {
|
||||
"type": "object",
|
||||
"description": "NodeSelector",
|
||||
"default": {},
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.nodeSelector"
|
||||
}
|
||||
},
|
||||
"userPreferences": {
|
||||
"description": "User Preferences",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"darkMode": {
|
||||
"type": "boolean",
|
||||
"description": "dark mode is or is not enabled",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "user.darkMode"
|
||||
}
|
||||
},
|
||||
"language": {
|
||||
"type": "string",
|
||||
"description": "Preferred language",
|
||||
"default": "en",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "user.lang"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"global": {
|
||||
"description": "Suspend",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"suspend": {
|
||||
"type": "boolean",
|
||||
"description": "Suspend this service",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Binary file not shown.
|
@ -2,38 +2,302 @@
|
|||
"$schema": "http://json-schema.org/schema#",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"wordpressUsername": {
|
||||
"type": "string",
|
||||
"title": "Username",
|
||||
"form": true
|
||||
"wordpress": {
|
||||
"wordpressUsername": {
|
||||
"type": "string",
|
||||
"title": "Username",
|
||||
"form": true
|
||||
},
|
||||
"wordpressPassword": {
|
||||
"type": "string",
|
||||
"title": "Password",
|
||||
"form": true,
|
||||
"description": "Defaults to a random 10-character alphanumeric string if not set"
|
||||
},
|
||||
"wordpressEmail": {
|
||||
"type": "string",
|
||||
"title": "Admin email",
|
||||
"form": true
|
||||
},
|
||||
"wordpressBlogName": {
|
||||
"type": "string",
|
||||
"title": "Blog Name",
|
||||
"form": true
|
||||
}
|
||||
},
|
||||
"wordpressPassword": {
|
||||
"type": "string",
|
||||
"title": "Password",
|
||||
"form": true,
|
||||
"description": "Defaults to a random 10-character alphanumeric string if not set"
|
||||
},
|
||||
"wordpressEmail": {
|
||||
"type": "string",
|
||||
"title": "Admin email",
|
||||
"form": true
|
||||
},
|
||||
"wordpressBlogName": {
|
||||
"type": "string",
|
||||
"title": "Blog Name",
|
||||
"form": true
|
||||
},
|
||||
"persistence": {
|
||||
"s3": {
|
||||
"description": "Configuration of temporary identity",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"size": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add S3 temporary identity inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"accessKeyId": {
|
||||
"description": "AWS Access Key",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_ACCESS_KEY_ID}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"endpoint": {
|
||||
"description": "AWS S3 Endpoint",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_S3_ENDPOINT}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"defaultRegion": {
|
||||
"description": "AWS S3 default region",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_DEFAULT_REGION}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"secretAccessKey": {
|
||||
"description": "AWS S3 secret access key",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SECRET_ACCESS_KEY}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"sessionToken": {
|
||||
"description": "AWS S3 session Token",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SESSION_TOKEN}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"ingress": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Ingress Details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable Ingress",
|
||||
"type": "boolean",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.ingress"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"title": "Persistent Volume Size",
|
||||
"form": true,
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 100,
|
||||
"sliderUnit": "Gi"
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": false,
|
||||
"overwriteDefaultWith": "{{project.id}}-mlflow.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"ingressClassName": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "ingressClassName",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.ingressClassName}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"route": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Route details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable route",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": false,
|
||||
"overwriteDefaultWith": "k8s.route"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": false,
|
||||
"overwriteDefaultWith": "{{project.id}}-mlflow.{{k8s.domain}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"security": {
|
||||
"description": "security specific configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"password": {
|
||||
"type": "string",
|
||||
"description": "Password",
|
||||
"default": "changeme",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{project.password}}"
|
||||
}
|
||||
},
|
||||
"allowlist": {
|
||||
"type": "object",
|
||||
"description": "IP protection",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable IP protection",
|
||||
"description": "Only the configured set of IPs will be able to reach the service",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultIpProtection"
|
||||
}
|
||||
},
|
||||
"ip": {
|
||||
"type": "string",
|
||||
"description": "the white list of IP is whitespace",
|
||||
"title": "Whitelist of IP",
|
||||
"default": "0.0.0.0",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{user.ip}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "security/allowlist/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"networkPolicy": {
|
||||
"type": "object",
|
||||
"description": "Define access policy to the service",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable network policy",
|
||||
"description": "Only pod from the same namespace will be allowed",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultNetworkPolicy"
|
||||
}
|
||||
},
|
||||
"from": {
|
||||
"type": "array",
|
||||
"description": "Array of source allowed to have network access to your service",
|
||||
"default": [
|
||||
{
|
||||
"namespaceSelector": {
|
||||
"matchLabels": {
|
||||
"kubernetes.io/metadata.name": "ingress"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.from"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"resources": {
|
||||
"description": "Your service will have at least the requested resources and never more than its limits. No limit for a resource and you can consume everything left on the host machine.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requests": {
|
||||
"description": "Guaranteed resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The amount of cpu guaranteed",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "100m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "cpu"
|
||||
},
|
||||
"memory": {
|
||||
"description": "The amount of memory guaranteed",
|
||||
"title": "memory",
|
||||
"type": "string",
|
||||
"default": "2Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "memory"
|
||||
}
|
||||
}
|
||||
},
|
||||
"limits": {
|
||||
"description": "max resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The maximum amount of cpu",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "30000m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "cpu"
|
||||
},
|
||||
"memory": {
|
||||
"description": "The maximum amount of memory",
|
||||
"title": "Memory",
|
||||
"type": "string",
|
||||
"default": "50Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "memory"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -0,0 +1,839 @@
|
|||
{
|
||||
"$schema": "http://json-schema.org/schema#",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"wordpressUsername": {
|
||||
"type": "string",
|
||||
"title": "Username",
|
||||
"form": true
|
||||
},
|
||||
"wordpressPassword": {
|
||||
"type": "string",
|
||||
"title": "Password",
|
||||
"form": true,
|
||||
"description": "Defaults to a random 10-character alphanumeric string if not set"
|
||||
},
|
||||
"wordpressEmail": {
|
||||
"type": "string",
|
||||
"title": "Admin email",
|
||||
"form": true
|
||||
},
|
||||
"wordpressBlogName": {
|
||||
"type": "string",
|
||||
"title": "Blog Name",
|
||||
"form": true
|
||||
},
|
||||
"persistence": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"size": {
|
||||
"type": "string",
|
||||
"title": "Persistent Volume Size",
|
||||
"form": true,
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 100,
|
||||
"sliderUnit": "Gi"
|
||||
}
|
||||
}
|
||||
},
|
||||
"mariadb": {
|
||||
"type": "object",
|
||||
"title": "MariaDB Details",
|
||||
"form": true,
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Use a new MariaDB database hosted in the cluster",
|
||||
"form": true,
|
||||
"description": "Whether to deploy a mariadb server to satisfy the applications database requirements. To use an external database switch this off and configure the external database details"
|
||||
},
|
||||
"primary": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"persistence": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"size": {
|
||||
"type": "string",
|
||||
"title": "Volume Size",
|
||||
"form": true,
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "mariadb/primary/persistence/enabled"
|
||||
},
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 100,
|
||||
"sliderUnit": "Gi"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
"resources": {
|
||||
"description": "Your service will have at least the requested resources and never more than its limits. No limit for a resource and you can consume everything left on the host machine.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requests": {
|
||||
"description": "Guaranteed resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The amount of cpu guaranteed",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "100m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "cpu",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.cpuRequest",
|
||||
"useRegionSliderConfig": "cpu"
|
||||
}
|
||||
},
|
||||
"memory": {
|
||||
"description": "The amount of memory guaranteed",
|
||||
"title": "memory",
|
||||
"type": "string",
|
||||
"default": "2Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "memory",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.memoryRequest",
|
||||
"useRegionSliderConfig": "memory"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"limits": {
|
||||
"description": "max resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The maximum amount of cpu",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "30000m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "cpu",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.cpuLimit",
|
||||
"useRegionSliderConfig": "cpu"
|
||||
}
|
||||
},
|
||||
"memory": {
|
||||
"description": "The maximum amount of memory",
|
||||
"title": "Memory",
|
||||
"type": "string",
|
||||
"default": "50Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "memory",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.memoryLimit",
|
||||
"useRegionSliderConfig": "memory"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"discovery": {
|
||||
"description": "configure your service to autodetect some ressources.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"hive": {
|
||||
"type": "boolean",
|
||||
"title": "Enable hive metastore discovery",
|
||||
"description": "discover your hive metastore service",
|
||||
"default": true
|
||||
},
|
||||
"mlflow": {
|
||||
"type": "boolean",
|
||||
"title": "Enable mlflow discovery",
|
||||
"description": "discover your mlflow service",
|
||||
"default": true
|
||||
},
|
||||
"metaflow": {
|
||||
"type": "boolean",
|
||||
"title": "Enable metaflow discovery",
|
||||
"description": "discover your metaflow service",
|
||||
"default": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"description": "spark-history specific configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"image": {
|
||||
"description": "image docker",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"pullPolicy": {
|
||||
"type": "string",
|
||||
"description": "option when pulling the docker image",
|
||||
"default": "IfNotPresent",
|
||||
"enum": [
|
||||
"IfNotPresent",
|
||||
"Always",
|
||||
"Never"
|
||||
]
|
||||
},
|
||||
"version": {
|
||||
"description": "vscode supported version",
|
||||
"type": "string",
|
||||
"default": "inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"listEnum": [
|
||||
"inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"inseefrlab/onyxia-vscode-python:py3.10.13"
|
||||
],
|
||||
"render": "list",
|
||||
"hidden": {
|
||||
"value": true,
|
||||
"path": "service/image/custom/enabled"
|
||||
}
|
||||
},
|
||||
"custom": {
|
||||
"description": "use a custom vscode docker image",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"title": "custom image",
|
||||
"type": "boolean",
|
||||
"description": "use a custom vscode docker images",
|
||||
"default": false
|
||||
},
|
||||
"version": {
|
||||
"description": "vscode unsupported version",
|
||||
"type": "string",
|
||||
"default": "inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "service/image/custom/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"persistence": {
|
||||
"description": "Configuration for persistence",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Create a persistent volume",
|
||||
"default": true
|
||||
},
|
||||
"size": {
|
||||
"type": "string",
|
||||
"title": "Persistent volume size",
|
||||
"description": "Size of the persistent volume",
|
||||
"default": "10Gi",
|
||||
"form": true,
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 100,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.disk",
|
||||
"useRegionSliderConfig": "disk"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "persistence/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"security": {
|
||||
"description": "security specific configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"password": {
|
||||
"type": "string",
|
||||
"description": "Password",
|
||||
"default": "changeme",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{project.password}}"
|
||||
}
|
||||
},
|
||||
"allowlist": {
|
||||
"type": "object",
|
||||
"description": "IP protection",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable IP protection",
|
||||
"description": "Only the configured set of IPs will be able to reach the service",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultIpProtection"
|
||||
}
|
||||
},
|
||||
"ip": {
|
||||
"type": "string",
|
||||
"description": "the white list of IP is whitespace",
|
||||
"title": "Whitelist of IP",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{user.ip}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"networkPolicy": {
|
||||
"type": "object",
|
||||
"description": "Define access policy to the service",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable network policy",
|
||||
"description": "Only pod from the same namespace will be allowed",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultNetworkPolicy"
|
||||
}
|
||||
},
|
||||
"from": {
|
||||
"type": "array",
|
||||
"description": "Array of source allowed to have network access to your service",
|
||||
"default": [],
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.from"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"kubernetes": {
|
||||
"description": "configuration of your kubernetes access",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "allow your service to access your namespace ressources",
|
||||
"default": true
|
||||
},
|
||||
"role": {
|
||||
"type": "string",
|
||||
"description": "bind your service account to this kubernetes default role",
|
||||
"default": "view",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "kubernetes/enabled"
|
||||
},
|
||||
"enum": [
|
||||
"view",
|
||||
"edit",
|
||||
"admin"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"git": {
|
||||
"description": "Git user configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add git config inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "user name for git",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.name}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"email": {
|
||||
"type": "string",
|
||||
"description": "user email for git",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.email}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"cache": {
|
||||
"type": "string",
|
||||
"description": "duration in seconds of the credentials cache duration",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.credentials_cache_duration}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"token": {
|
||||
"type": "string",
|
||||
"description": "personal access token",
|
||||
"default": "",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.token}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"repository": {
|
||||
"type": "string",
|
||||
"description": "projet",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.project}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"branch": {
|
||||
"type": "string",
|
||||
"description": "Branch automatically checked out",
|
||||
"default": "",
|
||||
"hidden": {
|
||||
"value": "",
|
||||
"path": "git/repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"vault": {
|
||||
"description": "Configuration of vault client",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add vault temporary identity inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"token": {
|
||||
"description": "token vault",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_TOKEN}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"url": {
|
||||
"description": "url of vault server",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_ADDR}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"mount": {
|
||||
"description": "mount of the v2 secret engine",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_MOUNT}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"directory": {
|
||||
"description": "top level directory",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_TOP_DIR}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"secret": {
|
||||
"description": "the path of the secret to convert into a list of environment variables",
|
||||
"type": "string",
|
||||
"default": "",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"s3": {
|
||||
"description": "Configuration of temporary identity",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add S3 temporary identity inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"accessKeyId": {
|
||||
"description": "AWS Access Key",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "s3.AWS_ACCESS_KEY_ID"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"endpoint": {
|
||||
"description": "AWS S3 Endpoint",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_S3_ENDPOINT}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"defaultRegion": {
|
||||
"description": "AWS S3 default region",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_DEFAULT_REGION}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"secretAccessKey": {
|
||||
"description": "AWS S3 secret access key",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SECRET_ACCESS_KEY}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"sessionToken": {
|
||||
"description": "AWS S3 session Token",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SESSION_TOKEN}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"ingress": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Ingress Details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable Ingress",
|
||||
"type": "boolean",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.ingress"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"userHostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"ingressClassName": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "ingressClassName",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.ingressClassName}}"
|
||||
}
|
||||
},
|
||||
"useCertManager": {
|
||||
"type": "boolean",
|
||||
"description": "Whether CertManager should be used to generate a certificate",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.useCertManager"
|
||||
}
|
||||
},
|
||||
"certManagerClusterIssuer":{
|
||||
"type": "string",
|
||||
"description": "certManager cluster issuer",
|
||||
"title": "CertManager Cluster Issuer",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.certManagerClusterIssuer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"route": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Route details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable route",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.route"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"userHostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"networking": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Networking detail",
|
||||
"properties": {
|
||||
"user": {
|
||||
"type": "object",
|
||||
"description": "user defined port",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable a custom service port",
|
||||
"description": "Enable a custom service port",
|
||||
"default": false
|
||||
},
|
||||
"port": {
|
||||
"type": "integer",
|
||||
"description": "port of the custom service",
|
||||
"title": "Custom service port",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "networking/user/enabled"
|
||||
},
|
||||
"default": 5000
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"init": {
|
||||
"description": "Init parameters",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"regionInit": {
|
||||
"type": "string",
|
||||
"description": "region initialization script",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.initScriptUrl}}"
|
||||
}
|
||||
},
|
||||
"regionInitCheckSum": {
|
||||
"type": "string",
|
||||
"description": "region initialization script",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.initScriptCheckSum}}"
|
||||
}
|
||||
},
|
||||
"personalInit": {
|
||||
"type": "string",
|
||||
"description": "user initialization script",
|
||||
"default": ""
|
||||
},
|
||||
"personalInitArgs": {
|
||||
"type": "string",
|
||||
"description": "args for user initialization script",
|
||||
"default": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"repository": {
|
||||
"description": "python repositories for pip and conda",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"pipRepository": {
|
||||
"type": "string",
|
||||
"description": "python repository for pip",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{packageRepositoryInjection.pypiProxyUrl}}"
|
||||
}
|
||||
},
|
||||
"condaRepository": {
|
||||
"type": "string",
|
||||
"description": "python repository for pip",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{packageRepositoryInjection.condaProxyUrl}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"startupProbe": {
|
||||
"type": "object",
|
||||
"description": "Start up probe",
|
||||
"default": {},
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.startupProbe"
|
||||
}
|
||||
},
|
||||
"tolerations": {
|
||||
"type": "array",
|
||||
"description": "Array of tolerations",
|
||||
"default": [],
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.tolerations"
|
||||
}
|
||||
},
|
||||
"nodeSelector": {
|
||||
"type": "object",
|
||||
"description": "NodeSelector",
|
||||
"default": {},
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.nodeSelector"
|
||||
}
|
||||
},
|
||||
"userPreferences": {
|
||||
"description": "User Preferences",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"darkMode": {
|
||||
"type": "boolean",
|
||||
"description": "dark mode is or is not enabled",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "user.darkMode"
|
||||
}
|
||||
},
|
||||
"language": {
|
||||
"type": "string",
|
||||
"description": "Preferred language",
|
||||
"default": "en",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "user.lang"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"global": {
|
||||
"description": "Suspend",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"suspend": {
|
||||
"type": "boolean",
|
||||
"description": "Suspend this service",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
875
charts/wordpress+valuesjson de VScode/values.schema1.json
Normal file
875
charts/wordpress+valuesjson de VScode/values.schema1.json
Normal file
|
@ -0,0 +1,875 @@
|
|||
{
|
||||
"$schema": "http://json-schema.org/schema#",
|
||||
"wordpress": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"wordpressUsername": {
|
||||
"type": "string",
|
||||
"title": "Username",
|
||||
"form": true
|
||||
},
|
||||
"wordpressPassword": {
|
||||
"type": "string",
|
||||
"title": "Password",
|
||||
"form": true,
|
||||
"description": "Defaults to a random 10-character alphanumeric string if not set"
|
||||
},
|
||||
"wordpressEmail": {
|
||||
"type": "string",
|
||||
"title": "Admin email",
|
||||
"form": true
|
||||
},
|
||||
"wordpressBlogName": {
|
||||
"type": "string",
|
||||
"title": "Blog Name",
|
||||
"form": true
|
||||
},
|
||||
"persistence": {
|
||||
"description": "Configuration for persistence",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Create a persistent volume",
|
||||
"default": true
|
||||
},
|
||||
"size": {
|
||||
"type": "string",
|
||||
"title": "Persistent volume size",
|
||||
"description": "Size of the persistent volume",
|
||||
"default": "10Gi",
|
||||
"form": true,
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 100,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.disk",
|
||||
"useRegionSliderConfig": "disk"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "persistence/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"mariadb": {
|
||||
"type": "object",
|
||||
"title": "MariaDB Details",
|
||||
"form": true,
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Use a new MariaDB database hosted in the cluster",
|
||||
"form": true,
|
||||
"description": "Whether to deploy a mariadb server to satisfy the applications database requirements. To use an external database switch this off and configure the external database details"
|
||||
},
|
||||
"primary": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"persistence": {
|
||||
"description": "Configuration for persistence",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Create a persistent volume",
|
||||
"default": true
|
||||
},
|
||||
"size": {
|
||||
"type": "string",
|
||||
"title": "Persistent volume size",
|
||||
"description": "Size of the persistent volume",
|
||||
"default": "10Gi",
|
||||
"form": true,
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "mariadb/primary/persistence/enabled"
|
||||
},
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 100,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.disk",
|
||||
"useRegionSliderConfig": "disk"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "persistence/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
"resources": {
|
||||
"description": "Your service will have at least the requested resources and never more than its limits. No limit for a resource and you can consume everything left on the host machine.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requests": {
|
||||
"description": "Guaranteed resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The amount of cpu guaranteed",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "100m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "cpu",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.cpuRequest",
|
||||
"useRegionSliderConfig": "cpu"
|
||||
}
|
||||
},
|
||||
"memory": {
|
||||
"description": "The amount of memory guaranteed",
|
||||
"title": "memory",
|
||||
"type": "string",
|
||||
"default": "2Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "memory",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.memoryRequest",
|
||||
"useRegionSliderConfig": "memory"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"limits": {
|
||||
"description": "max resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The maximum amount of cpu",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "30000m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "cpu",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.cpuLimit",
|
||||
"useRegionSliderConfig": "cpu"
|
||||
}
|
||||
},
|
||||
"memory": {
|
||||
"description": "The maximum amount of memory",
|
||||
"title": "Memory",
|
||||
"type": "string",
|
||||
"default": "50Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "memory",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.memoryLimit",
|
||||
"useRegionSliderConfig": "memory"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"discovery": {
|
||||
"description": "configure your service to autodetect some ressources.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"hive": {
|
||||
"type": "boolean",
|
||||
"title": "Enable hive metastore discovery",
|
||||
"description": "discover your hive metastore service",
|
||||
"default": true
|
||||
},
|
||||
"mlflow": {
|
||||
"type": "boolean",
|
||||
"title": "Enable mlflow discovery",
|
||||
"description": "discover your mlflow service",
|
||||
"default": true
|
||||
},
|
||||
"metaflow": {
|
||||
"type": "boolean",
|
||||
"title": "Enable metaflow discovery",
|
||||
"description": "discover your metaflow service",
|
||||
"default": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"description": "spark-history specific configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"image": {
|
||||
"description": "image docker",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"pullPolicy": {
|
||||
"type": "string",
|
||||
"description": "option when pulling the docker image",
|
||||
"default": "IfNotPresent",
|
||||
"enum": [
|
||||
"IfNotPresent",
|
||||
"Always",
|
||||
"Never"
|
||||
]
|
||||
},
|
||||
"version": {
|
||||
"description": "vscode supported version",
|
||||
"type": "string",
|
||||
"default": "inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"listEnum": [
|
||||
"inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"inseefrlab/onyxia-vscode-python:py3.10.13"
|
||||
],
|
||||
"render": "list",
|
||||
"hidden": {
|
||||
"value": true,
|
||||
"path": "service/image/custom/enabled"
|
||||
}
|
||||
},
|
||||
"custom": {
|
||||
"description": "use a custom vscode docker image",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"title": "custom image",
|
||||
"type": "boolean",
|
||||
"description": "use a custom vscode docker images",
|
||||
"default": false
|
||||
},
|
||||
"version": {
|
||||
"description": "vscode unsupported version",
|
||||
"type": "string",
|
||||
"default": "inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "service/image/custom/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"persistence": {
|
||||
"description": "Configuration for persistence",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Create a persistent volume",
|
||||
"default": true
|
||||
},
|
||||
"size": {
|
||||
"type": "string",
|
||||
"title": "Persistent volume size",
|
||||
"description": "Size of the persistent volume",
|
||||
"default": "10Gi",
|
||||
"form": true,
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 100,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.disk",
|
||||
"useRegionSliderConfig": "disk"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "persistence/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"security": {
|
||||
"description": "security specific configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"password": {
|
||||
"type": "string",
|
||||
"description": "Password",
|
||||
"default": "changeme",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{project.password}}"
|
||||
}
|
||||
},
|
||||
"allowlist": {
|
||||
"type": "object",
|
||||
"description": "IP protection",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable IP protection",
|
||||
"description": "Only the configured set of IPs will be able to reach the service",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultIpProtection"
|
||||
}
|
||||
},
|
||||
"ip": {
|
||||
"type": "string",
|
||||
"description": "the white list of IP is whitespace",
|
||||
"title": "Whitelist of IP",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{user.ip}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"networkPolicy": {
|
||||
"type": "object",
|
||||
"description": "Define access policy to the service",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable network policy",
|
||||
"description": "Only pod from the same namespace will be allowed",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultNetworkPolicy"
|
||||
}
|
||||
},
|
||||
"from": {
|
||||
"type": "array",
|
||||
"description": "Array of source allowed to have network access to your service",
|
||||
"default": [],
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.from"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"kubernetes": {
|
||||
"description": "configuration of your kubernetes access",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "allow your service to access your namespace ressources",
|
||||
"default": true
|
||||
},
|
||||
"role": {
|
||||
"type": "string",
|
||||
"description": "bind your service account to this kubernetes default role",
|
||||
"default": "view",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "kubernetes/enabled"
|
||||
},
|
||||
"enum": [
|
||||
"view",
|
||||
"edit",
|
||||
"admin"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"git": {
|
||||
"description": "Git user configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add git config inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "user name for git",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.name}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"email": {
|
||||
"type": "string",
|
||||
"description": "user email for git",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.email}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"cache": {
|
||||
"type": "string",
|
||||
"description": "duration in seconds of the credentials cache duration",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.credentials_cache_duration}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"token": {
|
||||
"type": "string",
|
||||
"description": "personal access token",
|
||||
"default": "",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.token}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"repository": {
|
||||
"type": "string",
|
||||
"description": "projet",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.project}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"branch": {
|
||||
"type": "string",
|
||||
"description": "Branch automatically checked out",
|
||||
"default": "",
|
||||
"hidden": {
|
||||
"value": "",
|
||||
"path": "git/repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"vault": {
|
||||
"description": "Configuration of vault client",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add vault temporary identity inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"token": {
|
||||
"description": "token vault",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_TOKEN}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"url": {
|
||||
"description": "url of vault server",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_ADDR}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"mount": {
|
||||
"description": "mount of the v2 secret engine",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_MOUNT}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"directory": {
|
||||
"description": "top level directory",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_TOP_DIR}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"secret": {
|
||||
"description": "the path of the secret to convert into a list of environment variables",
|
||||
"type": "string",
|
||||
"default": "",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"s3": {
|
||||
"description": "Configuration of temporary identity",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add S3 temporary identity inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"accessKeyId": {
|
||||
"description": "AWS Access Key",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "s3.AWS_ACCESS_KEY_ID"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"endpoint": {
|
||||
"description": "AWS S3 Endpoint",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_S3_ENDPOINT}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"defaultRegion": {
|
||||
"description": "AWS S3 default region",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_DEFAULT_REGION}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"secretAccessKey": {
|
||||
"description": "AWS S3 secret access key",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SECRET_ACCESS_KEY}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"sessionToken": {
|
||||
"description": "AWS S3 session Token",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SESSION_TOKEN}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"ingress": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Ingress Details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable Ingress",
|
||||
"type": "boolean",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.ingress"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"userHostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"ingressClassName": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "ingressClassName",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.ingressClassName}}"
|
||||
}
|
||||
},
|
||||
"useCertManager": {
|
||||
"type": "boolean",
|
||||
"description": "Whether CertManager should be used to generate a certificate",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.useCertManager"
|
||||
}
|
||||
},
|
||||
"certManagerClusterIssuer":{
|
||||
"type": "string",
|
||||
"description": "certManager cluster issuer",
|
||||
"title": "CertManager Cluster Issuer",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.certManagerClusterIssuer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"route": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Route details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable route",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.route"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"userHostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"networking": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Networking detail",
|
||||
"properties": {
|
||||
"user": {
|
||||
"type": "object",
|
||||
"description": "user defined port",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable a custom service port",
|
||||
"description": "Enable a custom service port",
|
||||
"default": false
|
||||
},
|
||||
"port": {
|
||||
"type": "integer",
|
||||
"description": "port of the custom service",
|
||||
"title": "Custom service port",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "networking/user/enabled"
|
||||
},
|
||||
"default": 5000
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"init": {
|
||||
"description": "Init parameters",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"regionInit": {
|
||||
"type": "string",
|
||||
"description": "region initialization script",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.initScriptUrl}}"
|
||||
}
|
||||
},
|
||||
"regionInitCheckSum": {
|
||||
"type": "string",
|
||||
"description": "region initialization script",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.initScriptCheckSum}}"
|
||||
}
|
||||
},
|
||||
"personalInit": {
|
||||
"type": "string",
|
||||
"description": "user initialization script",
|
||||
"default": ""
|
||||
},
|
||||
"personalInitArgs": {
|
||||
"type": "string",
|
||||
"description": "args for user initialization script",
|
||||
"default": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"repository": {
|
||||
"description": "python repositories for pip and conda",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"pipRepository": {
|
||||
"type": "string",
|
||||
"description": "python repository for pip",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{packageRepositoryInjection.pypiProxyUrl}}"
|
||||
}
|
||||
},
|
||||
"condaRepository": {
|
||||
"type": "string",
|
||||
"description": "python repository for pip",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{packageRepositoryInjection.condaProxyUrl}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"startupProbe": {
|
||||
"type": "object",
|
||||
"description": "Start up probe",
|
||||
"default": {},
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.startupProbe"
|
||||
}
|
||||
},
|
||||
"tolerations": {
|
||||
"type": "array",
|
||||
"description": "Array of tolerations",
|
||||
"default": [],
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.tolerations"
|
||||
}
|
||||
},
|
||||
"nodeSelector": {
|
||||
"type": "object",
|
||||
"description": "NodeSelector",
|
||||
"default": {},
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.nodeSelector"
|
||||
}
|
||||
},
|
||||
"userPreferences": {
|
||||
"description": "User Preferences",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"darkMode": {
|
||||
"type": "boolean",
|
||||
"description": "dark mode is or is not enabled",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "user.darkMode"
|
||||
}
|
||||
},
|
||||
"language": {
|
||||
"type": "string",
|
||||
"description": "Preferred language",
|
||||
"default": "en",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "user.lang"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"global": {
|
||||
"description": "Suspend",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"suspend": {
|
||||
"type": "boolean",
|
||||
"description": "Suspend this service",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Binary file not shown.
23
charts/wordpress-not-binami/.helmignore
Normal file
23
charts/wordpress-not-binami/.helmignore
Normal file
|
@ -0,0 +1,23 @@
|
|||
# Patterns to ignore when building packages.
|
||||
# This supports shell glob matching, relative path matching, and
|
||||
# negation (prefixed with !). Only one pattern per line.
|
||||
.DS_Store
|
||||
# Common VCS dirs
|
||||
.git/
|
||||
.gitignore
|
||||
.bzr/
|
||||
.bzrignore
|
||||
.hg/
|
||||
.hgignore
|
||||
.svn/
|
||||
# Common backup files
|
||||
*.swp
|
||||
*.bak
|
||||
*.tmp
|
||||
*.orig
|
||||
*~
|
||||
# Various IDEs
|
||||
.project
|
||||
.idea/
|
||||
*.tmproj
|
||||
.vscode/
|
6
charts/wordpress-not-binami/Chart.lock
Normal file
6
charts/wordpress-not-binami/Chart.lock
Normal file
|
@ -0,0 +1,6 @@
|
|||
dependencies:
|
||||
- name: mariadb
|
||||
repository: https://groundhog2k.github.io/helm-charts
|
||||
version: 0.3.14
|
||||
digest: sha256:375cfa874809b30e37b4459addf6bfbe413bdb58862246e64260f3011f3ad448
|
||||
generated: "2023-08-15T19:41:56.623332511+02:00"
|
20
charts/wordpress-not-binami/Chart.yaml
Normal file
20
charts/wordpress-not-binami/Chart.yaml
Normal file
|
@ -0,0 +1,20 @@
|
|||
apiVersion: v2
|
||||
name: wordpress
|
||||
description: A Helm chart for Wordpress on Kubernetes
|
||||
|
||||
maintainers:
|
||||
- name: groundhog2k
|
||||
|
||||
type: application
|
||||
|
||||
# This is the chart version.
|
||||
version: "0.11.0"
|
||||
|
||||
# This is the version number of the application being deployed.
|
||||
appVersion: "6.5.0-apache"
|
||||
|
||||
dependencies:
|
||||
- name: mariadb
|
||||
version: "0.3.14"
|
||||
repository: "https://groundhog2k.github.io/helm-charts"
|
||||
condition: mariadb.enabled
|
176
charts/wordpress-not-binami/README.md
Normal file
176
charts/wordpress-not-binami/README.md
Normal file
|
@ -0,0 +1,176 @@
|
|||
# Wordpress
|
||||
|
||||
  
|
||||
|
||||
## Changelog
|
||||
|
||||
see [RELEASENOTES.md](RELEASENOTES.md)
|
||||
|
||||
A Helm chart for Wordpress on Kubernetes
|
||||
|
||||
## TL;DR
|
||||
|
||||
```bash
|
||||
helm repo add groundhog2k https://groundhog2k.github.io/helm-charts/
|
||||
helm install my-release groundhog2k/wordpress
|
||||
```
|
||||
|
||||
## Introduction
|
||||
|
||||
This chart uses the original [Wordpress from Docker](https://hub.docker.com/_/wordpress) to deploy Wordpress in Kubernetes.
|
||||
|
||||
It fully supports deployment of the multi-architecture docker image.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Kubernetes 1.12+
|
||||
- Helm 3.x
|
||||
- PV provisioner support in the underlying infrastructure
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `my-release`:
|
||||
|
||||
```bash
|
||||
helm install my-release groundhog2k/wordpress
|
||||
```
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall/delete the `my-release` deployment:
|
||||
|
||||
```bash
|
||||
helm uninstall my-release
|
||||
```
|
||||
|
||||
## Requirements
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| @groundhog2k | mariadb | 0.3.14 |
|
||||
|
||||
## Common parameters
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| fullnameOverride | string | `""` | Fully override the deployment name |
|
||||
| nameOverride | string | `""` | Partially override the deployment name |
|
||||
|
||||
## Deployment parameters
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
|
||||
| image.registry | string | `"docker.io"` | Image registry |
|
||||
| image.repository | string | `"wordpress"` | Image name |
|
||||
| image.tag | string | `""` | Image tag |
|
||||
| imagePullSecrets | list | `[]` | Image pull secrets |
|
||||
| extraInitContainers | list | `[]` | Extra init containers |
|
||||
| extaContainers | list | `[]` | Extra containers for usage as sidecars |
|
||||
| strategy | object | `{}` | Pod deployment strategy |
|
||||
| livenessProbe | object | `see values.yaml` | Liveness probe configuration |
|
||||
| startupProbe | object | `see values.yaml` | Startup probe configuration |
|
||||
| readinessProbe | object | `see values.yaml` | Readiness probe configuration |
|
||||
| customLivenessProbe | object | `{}` | Custom liveness probe (overwrites default liveness probe configuration) |
|
||||
| customStartupProbe | object | `{}` | Custom startup probe (overwrites default startup probe configuration) |
|
||||
| customReadinessProbe | object | `{}` | Custom readiness probe (overwrites default readiness probe configuration) |
|
||||
| resources | object | `{}` | Resource limits and requests |
|
||||
| nodeSelector | object | `{}` | Deployment node selector |
|
||||
| customLabels | object | `{}` | Additional labels for Deployment or StatefulSet |
|
||||
| customAnnotations | object | `{}` | Additional annotations for Deployment or StatefulSet |
|
||||
| podAnnotations | object | `{}` | Additional pod annotations |
|
||||
| podLabels | object | `{}` | Additional pod labels |
|
||||
| podSecurityContext | object | `see values.yaml` | Pod security context |
|
||||
| securityContext | object | `see values.yaml` | Container security context |
|
||||
| env | list | `[]` | Additional container environmment variables |
|
||||
| args | list | `[]` | Arguments for the container entrypoint process |
|
||||
| serviceAccount.create | bool | `false` | Enable service account creation |
|
||||
| serviceAccount.name | string | `""` | Optional name of the service account |
|
||||
| serviceAccount.annotations | object | `{}` | Additional service account annotations |
|
||||
| affinity | object | `{}` | Affinity for pod assignment |
|
||||
| tolerations | list | `[]` | Tolerations for pod assignment |
|
||||
| topologySpreadConstraints | object | `{}` | Topology spread constraints for pods |
|
||||
| containerPort | int | `8000` | Internal http container port |
|
||||
| replicaCount | int | `1` | Number of replicas |
|
||||
| revisionHistoryLimit | int | `nil` | Maximum number of revisions maintained in revision history
|
||||
| podDisruptionBudget | object | `{}` | Pod disruption budget |
|
||||
| podDisruptionBudget.minAvailable | int | `nil` | Minimum number of pods that must be available after eviction |
|
||||
| podDisruptionBudget.maxUnavailable | int | `nil` | Maximum number of pods that can be unavailable after eviction |
|
||||
|
||||
## Service paramters
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| service.port | int | `80` | Wordpress HTTP service port |
|
||||
| service.type | string | `"ClusterIP"` | Service type |
|
||||
| service.nodePort | int | `nil` | The node port (only relevant for type LoadBalancer or NodePort) |
|
||||
| service.clusterIP | string | `nil` | The cluster ip address (only relevant for type LoadBalancer or NodePort) |
|
||||
| service.loadBalancerIP | string | `nil` | The load balancer ip address (only relevant for type LoadBalancer) |
|
||||
| service.annotations | object | `{}` | Additional service annotations |
|
||||
| service.labels | object | `{}` | Additional service labels |
|
||||
|
||||
## Ingress parameters
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| ingress.enabled | bool | `false` | Enable ingress for Wordpress service |
|
||||
| ingress.className | string | `nil` | Optional ingress class name |
|
||||
| ingress.annotations | object | `{}` | Additional annotations for ingress |
|
||||
| ingress.labels | object | `{}` | Additional ingress lables |
|
||||
| ingress.hosts[0].host | string | `""` | Hostname for the ingress endpoint |
|
||||
| ingress.hosts[0].host.paths[0].path | string | `"/"` | Default root path |
|
||||
| ingress.hosts[0].host.paths[0].pathType | string | `ImplementationSpecific` | Ingress path type (ImplementationSpecific, Prefix, Exact) |
|
||||
| ingress.tls | list | `[]` | Ingress TLS parameters |
|
||||
| ingress.maxBodySize | string | `"64m"` | Maximum body size for post requests |
|
||||
|
||||
## Network policies
|
||||
|
||||
Allows to define optional network policies for [ingress and egress](https://kubernetes.io/docs/concepts/services-networking/network-policies/)
|
||||
The policyTypes will be automatically set
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| networkPolicy.ingress | object | `{}` | Ingress network policies |
|
||||
| networkPolicy.egress | object | `{}` | Egress network policies |
|
||||
|
||||
## Database settings
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| externalDatabase.host | string | `nil` | External database host |
|
||||
| externalDatabase.name | string | `"wordpress"` | External database name |
|
||||
| externalDatabase.user | string | `nil` | External database user name |
|
||||
| externalDatabase.password | string | `nil` | External database user password |
|
||||
| mariadb.enabled | bool | `false` | Enable MariaDB deployment (will disable external database settings) |
|
||||
| mariadb.settings.rootPassword | string | `nil` | MariaDB root user password |
|
||||
| mariadb.storage | string | `nil` | MariaDB storage settings |
|
||||
| mariadb.userDatabase.name | string | `nil` | MariaDB wordpress database name |
|
||||
| mariadb.userDatabase.password | string | `nil` | MariaDB wordpress database user |
|
||||
| mariadb.userDatabase.user | string | `nil` | MariaDB wordpress database user password |
|
||||
|
||||
## Wordpress parameters
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| apacheDefaultSiteConfig | string | `""` | Overwrite default apache 000-default.conf |
|
||||
| apachePortsConfig | string | `""` | Overwrite default apache ports.conf |
|
||||
| customPhpConfig | string | `""` | Additional PHP custom.ini |
|
||||
| settings.tablePrefix | string | `nil` | Database table name prefix |
|
||||
| settings.maxFileUploadSize | string | `64M` | Maximum file upload size |
|
||||
| settings.memoryLimit | string | `128M` | PHP memory limit |
|
||||
| settings.configExtra | string | `nil` | Extra values embedded inside wp-config.php |
|
||||
| extraEnvSecrets | list | `[]` | A list of existing secrets that will be mounted into the container as environment variables |
|
||||
| extraEnvConfigs | list | `[]` | A list of existing configmaps that will be mounted into the container as environment variables |
|
||||
| extraSecrets | list | `[]` | A list of additional existing secrets that will be mounted into the container |
|
||||
|
||||
## Storage parameters
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| storage.accessModes[0] | string | `"ReadWriteOnce"` | Storage access mode |
|
||||
| storage.persistentVolumeClaimName | string | `nil` | PVC name when existing storage volume should be used |
|
||||
| storage.requestedSize | string | `nil` | Size for new PVC, when no existing PVC is used |
|
||||
| storage.className | string | `nil` | Storage class name |
|
||||
| storage.keepPvc | bool | `false` | Keep a created Persistent volume claim when uninstalling the helm chart |
|
||||
| storage.annotations | object | `{}` | Additional storage annotations |
|
||||
| storage.labels | object | `{}` | Additional storage labels |
|
46
charts/wordpress-not-binami/RELEASENOTES.md
Normal file
46
charts/wordpress-not-binami/RELEASENOTES.md
Normal file
|
@ -0,0 +1,46 @@
|
|||
# Changelog
|
||||
|
||||
| Chart version | App version | Change description |
|
||||
| :------------ | :---------- | :----------------- |
|
||||
| 0.4.9 | 5.8.3-apache | Implemented startupProbe support |
|
||||
| 0.4.10 | 5.8.3-apache | Updated chart dependencies |
|
||||
| 0.5.0 | 5.9.0-apache | Upgraded to Wordpress 5.9.0 |
|
||||
| 0.5.1 | 5.9.0-apache | Updated chart dependencies (mariadb 0.2.18) |
|
||||
| 0.5.2 | 5.9.2-apache | Upgraded to Wordpress 5.9.2 |
|
||||
| 0.5.3 | 5.9.2-apache | Updated chart dependencies (mariadb 0.2.20) |
|
||||
| 0.5.4 | 5.9.3-apache | Upgraded to Wordpress 5.9.3 |
|
||||
| 0.6.0 | 6.0.0-apache | Upgraded to Wordpress 6.0.0 |
|
||||
| 0.6.1 | 6.0.0-apache | Updated chart dependencies (mariadb 0.2.21) |
|
||||
| 0.6.2 | 6.0.1-apache | Upgraded to Wordpress 6.0.1 |
|
||||
| 0.6.3 | 6.0.1-apache | Updated chart dependencies (mariadb 0.2.22) |
|
||||
| 0.6.4 | 6.0.2-apache | Upgraded to Wordpress 6.0.2 |
|
||||
| 0.6.5 | 6.0.2-apache | Implemented support for image.registry option |
|
||||
| 0.6.6 | 6.0.2-apache | Updated chart dependencies (mariadb 0.2.23) |
|
||||
| 0.6.7 | 6.0.3-apache | Upgraded to Wordpress 6.0.3 |
|
||||
| 0.7.0 | 6.1.0-apache | Upgraded to Wordpress 6.1.0 |
|
||||
| 0.7.1 | 6.1.1-apache | Upgraded to Wordpress 6.1.1 |
|
||||
| 0.7.2 | 6.1.1-apache | Updated chart dependencies (mariadb 0.2.24) |
|
||||
| 0.7.3 | 6.1.1-apache | Fixed values documentation - thx @generalovmaksim |
|
||||
| 0.7.4 | 6.1.1-apache | Updated version detection for pod disruption budget |
|
||||
| 0.7.5 | 6.1.1-apache | Updated chart dependencies (mariadb 0.2.25) |
|
||||
| 0.7.6 | 6.1.1-apache | Fixed health probe warnings |
|
||||
| 0.8.0 | 6.2.0-apache | Upgraded to Wordpress 6.2.0 |
|
||||
| 0.8.1 | 6.2.0-apache | Updated chart dependencies (mariadb 0.3.11) |
|
||||
| 0.8.2 | 6.2.0-apache | Added support for extra configuration (WORDPRESS_CONFIG_EXTRA) - thx @MihaiMoldovanu |
|
||||
| 0.8.3 | 6.2.0-apache | Updated chart dependencies (mariadb 0.3.12) |
|
||||
| 0.8.4 | 6.2.1-apache | Upgraded to Wordpress 6.2.1 |
|
||||
| 0.8.5 | 6.2.2-apache | Upgraded to Wordpress 6.2.2 |
|
||||
| 0.8.6 | 6.2.2-apache | Updated chart dependencies (mariadb 0.3.13) |
|
||||
| 0.8.7 | 6.2.2-apache | Updated chart dependencies (mariadb 0.3.14) |
|
||||
| 0.9.0 | 6.3.0-apache | Upgraded to Wordpress 6.3.0 |
|
||||
| 0.9.1 | 6.3.1-apache | Upgraded to Wordpress 6.3.1 |
|
||||
| 0.9.2 | 6.3.2-apache | Upgraded to Wordpress 6.3.2 |
|
||||
| 0.10.0 | 6.4.0-apache | Upgraded to Wordpress 6.4.0 |
|
||||
| 0.10.1 | 6.4.1-apache | Upgraded to Wordpress 6.4.1 |
|
||||
| 0.10.2 | 6.4.2-apache | Upgraded to Wordpress 6.4.2 |
|
||||
| 0.10.3 | 6.4.2-apache | Added optional ingressClassName and removed deprecated api support |
|
||||
| 0.10.4 | 6.4.2-apache | Refactored ingress configuration and added optional labels |
|
||||
| 0.10.5 | 6.4.2-apache | Added support for network policies and additional labels and annotations |
|
||||
| 0.10.6 | 6.4.3-apache | Upgraded to Wordpress 6.4.3 |
|
||||
| 0.11.0 | 6.5.0-apache | Upgraded to Wordpress 6.5.0 |
|
||||
| | | |
|
BIN
charts/wordpress-not-binami/charts/mariadb-0.3.14.tgz
Normal file
BIN
charts/wordpress-not-binami/charts/mariadb-0.3.14.tgz
Normal file
Binary file not shown.
88
charts/wordpress-not-binami/templates/_helpers.tpl
Normal file
88
charts/wordpress-not-binami/templates/_helpers.tpl
Normal file
|
@ -0,0 +1,88 @@
|
|||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "wordpress.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "wordpress.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- define "mariadb.servicename" -}}
|
||||
{{- if .Values.mariadb.fullnameOverride }}
|
||||
{{- .Values.mariadb.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default "mariadb" .Values.mariadb.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- define "redis.servicename" -}}
|
||||
{{- if .Values.redis.fullnameOverride }}
|
||||
{{- .Values.redis.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default "redis" .Values.redis.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "wordpress.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "wordpress.labels" -}}
|
||||
helm.sh/chart: {{ include "wordpress.chart" . }}
|
||||
{{ include "wordpress.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "wordpress.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "wordpress.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "wordpress.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "wordpress.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
223
charts/wordpress-not-binami/templates/deployment.yaml
Normal file
223
charts/wordpress-not-binami/templates/deployment.yaml
Normal file
|
@ -0,0 +1,223 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "wordpress.fullname" . }}
|
||||
labels:
|
||||
{{- include "wordpress.labels" . | nindent 4 }}
|
||||
{{- with .Values.customLabels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.customAnnotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
{{- if .Values.revisionHistoryLimit }}
|
||||
revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "wordpress.selectorLabels" . | nindent 6 }}
|
||||
{{- with .Values.strategy }}
|
||||
strategy:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
checksum/secureconfig: {{ include (print $.Template.BasePath "/secureconfig.yaml") . | sha256sum }}
|
||||
checksum/extendedconfig: {{ include (print $.Template.BasePath "/extendedconfig.yaml") . | sha256sum }}
|
||||
{{- with .Values.podAnnotations }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "wordpress.selectorLabels" . | nindent 8 }}
|
||||
{{- with .Values.podLabels }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "wordpress.serviceAccountName" . }}
|
||||
{{- with .Values.podSecurityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.extraInitContainers }}
|
||||
initContainers:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
{{- with .Values.securityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
envFrom:
|
||||
- secretRef:
|
||||
name: {{ include "wordpress.fullname" . }}
|
||||
{{- range .Values.extraEnvSecrets }}
|
||||
- secretRef:
|
||||
name: {{ . }}
|
||||
{{- end }}
|
||||
{{- range .Values.extraEnvConfigs }}
|
||||
- configMapRef:
|
||||
name: {{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.env }}
|
||||
env:
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.args }}
|
||||
args:
|
||||
{{- range .Values.args }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.containerPort }}
|
||||
protocol: TCP
|
||||
{{- if .Values.customStartupProbe }}
|
||||
startupProbe:
|
||||
{{- toYaml .Values.customStartupProbe | nindent 12 }}
|
||||
{{- else }}
|
||||
{{- if .Values.startupProbe.enabled }}
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /wp-login.php
|
||||
port: http
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: localhost:{{ .Values.containerPort }}
|
||||
- name: x-forwarded-proto
|
||||
value: https
|
||||
{{- with .Values.startupProbe }}
|
||||
initialDelaySeconds: {{ .initialDelaySeconds }}
|
||||
timeoutSeconds: {{ .timeoutSeconds }}
|
||||
failureThreshold: {{ .failureThreshold }}
|
||||
successThreshold: {{ .successThreshold }}
|
||||
periodSeconds: {{ .periodSeconds }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .Values.customLivenessProbe }}
|
||||
livenessProbe:
|
||||
{{- toYaml .Values.customLivenessProbe | nindent 12 }}
|
||||
{{- else }}
|
||||
{{- if .Values.livenessProbe.enabled }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /wp-admin/install.php
|
||||
port: http
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: localhost:{{ .Values.containerPort }}
|
||||
- name: x-forwarded-proto
|
||||
value: https
|
||||
{{- with .Values.livenessProbe }}
|
||||
initialDelaySeconds: {{ .initialDelaySeconds }}
|
||||
timeoutSeconds: {{ .timeoutSeconds }}
|
||||
failureThreshold: {{ .failureThreshold }}
|
||||
successThreshold: {{ .successThreshold }}
|
||||
periodSeconds: {{ .periodSeconds }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .Values.customReadinessProbe }}
|
||||
readinessProbe:
|
||||
{{- toYaml .Values.customReadinessProbe | nindent 12 }}
|
||||
{{- else }}
|
||||
{{- if .Values.readinessProbe.enabled }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /wp-login.php
|
||||
port: http
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: localhost:{{ .Values.containerPort }}
|
||||
- name: x-forwarded-proto
|
||||
value: https
|
||||
{{- with .Values.readinessProbe }}
|
||||
initialDelaySeconds: {{ .initialDelaySeconds }}
|
||||
timeoutSeconds: {{ .timeoutSeconds }}
|
||||
failureThreshold: {{ .failureThreshold }}
|
||||
successThreshold: {{ .successThreshold }}
|
||||
periodSeconds: {{ .periodSeconds }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- with .Values.resources }}
|
||||
resources:
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- mountPath: /var/www/html
|
||||
name: wordpress-vol
|
||||
- mountPath: /tmp
|
||||
name: tmp
|
||||
- mountPath: /var/run
|
||||
name: run
|
||||
- mountPath: /etc/apache2/ports.conf
|
||||
subPath: ports.conf
|
||||
name: extended
|
||||
- mountPath: /etc/apache2/000-default.conf
|
||||
subPath: 000-default.conf
|
||||
name: extended
|
||||
- mountPath: /usr/local/etc/php/conf.d/custom.ini
|
||||
subPath: custom.ini
|
||||
name: extended
|
||||
{{- range $secret := .Values.extraSecrets }}
|
||||
- mountPath: {{ $secret.mountPath }}
|
||||
name: {{ $secret.name }}
|
||||
{{- end }}
|
||||
{{- with .Values.extraContainers }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.topologySpreadConstraints }}
|
||||
topologySpreadConstraints:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
- name: tmp
|
||||
emptyDir: {}
|
||||
- name: run
|
||||
emptyDir: {}
|
||||
- name: extended
|
||||
configMap:
|
||||
name: {{ include "wordpress.fullname" . }}-extended
|
||||
{{- range $secret := .Values.extraSecrets }}
|
||||
- name: {{ $secret.name }}
|
||||
secret:
|
||||
secretName: {{ $secret.name }}
|
||||
defaultMode: 0440
|
||||
{{- end }}
|
||||
- name: wordpress-vol
|
||||
{{- if .Values.storage.persistentVolumeClaimName }}
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ .Values.storage.persistentVolumeClaimName }}
|
||||
{{- else }}
|
||||
{{- if .Values.storage.requestedSize }}
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ include "wordpress.fullname" . }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
{{- end }}
|
33
charts/wordpress-not-binami/templates/extendedconfig.yaml
Normal file
33
charts/wordpress-not-binami/templates/extendedconfig.yaml
Normal file
|
@ -0,0 +1,33 @@
|
|||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "wordpress.fullname" . }}-extended
|
||||
labels:
|
||||
{{- include "wordpress.labels" . | nindent 4 }}
|
||||
data:
|
||||
000-default.conf: |
|
||||
{{- if .Values.apacheDefaultSiteConfig }}
|
||||
{{ .Values.apacheDefaultSiteConfig | nindent 4 }}
|
||||
{{- else }}
|
||||
<VirtualHost *:{{ .Values.containerPort }}>
|
||||
ServerAdmin webmaster@localhost
|
||||
DocumentRoot /var/www/html
|
||||
|
||||
ErrorLog ${APACHE_LOG_DIR}/error.log
|
||||
CustomLog ${APACHE_LOG_DIR}/access.log combined
|
||||
</VirtualHost>
|
||||
{{- end }}
|
||||
ports.conf: |
|
||||
{{- if .Values.apachePortsConfig }}
|
||||
{{ .Values.apachePortsConfig | nindent 4 }}
|
||||
{{- else }}
|
||||
Listen {{ .Values.containerPort }}
|
||||
{{- end }}
|
||||
custom.ini: |
|
||||
{{- if .Values.customPhpConfig }}
|
||||
{{ .Values.customPhpConfig | nindent 4 }}
|
||||
{{- else }}
|
||||
upload_max_filesize = {{ .Values.settings.maxFileUploadSize }}
|
||||
post_max_size = {{ .Values.settings.maxFileUploadSize }}
|
||||
memory_limit = {{ .Values.settings.memoryLimit }}
|
||||
{{- end }}
|
52
charts/wordpress-not-binami/templates/ingress.yaml
Normal file
52
charts/wordpress-not-binami/templates/ingress.yaml
Normal file
|
@ -0,0 +1,52 @@
|
|||
{{- if .Values.ingress.enabled }}
|
||||
{{- $fullName := include "wordpress.fullname" . -}}
|
||||
{{- $labels := include "wordpress.labels" . -}}
|
||||
{{- $svcPort := .Values.service.port -}}
|
||||
{{- with .Values.ingress }}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
{{- $labels | nindent 4 }}
|
||||
{{- with .labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
annotations:
|
||||
{{- if .maxBodySize }}
|
||||
nginx.ingress.kubernetes.io/proxy-body-size: {{ .maxBodySize }}
|
||||
{{- end }}
|
||||
{{- with .annotations }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .className }}
|
||||
ingressClassName: {{ .className }}
|
||||
{{- end }}
|
||||
{{- if .tls }}
|
||||
tls:
|
||||
{{- range .tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . | quote }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .hosts }}
|
||||
- host: {{ .host | quote }}
|
||||
http:
|
||||
paths:
|
||||
{{- range .paths }}
|
||||
- path: {{ .path }}
|
||||
pathType: {{ .pathType }}
|
||||
backend:
|
||||
service:
|
||||
name: {{ $fullName }}
|
||||
port:
|
||||
number: {{ $svcPort }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
25
charts/wordpress-not-binami/templates/networkpolicy.yaml
Normal file
25
charts/wordpress-not-binami/templates/networkpolicy.yaml
Normal file
|
@ -0,0 +1,25 @@
|
|||
{{- with .Values.networkPolicy }}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: NetworkPolicy
|
||||
metadata:
|
||||
name: {{ include "wordpress.fullname" $ }}
|
||||
spec:
|
||||
podSelector:
|
||||
matchLabels:
|
||||
{{- include "wordpress.selectorLabels" $ | nindent 6 }}
|
||||
policyTypes:
|
||||
{{- if .ingress }}
|
||||
- Ingress
|
||||
{{- end }}
|
||||
{{- if .egress }}
|
||||
- Egress
|
||||
{{- end }}
|
||||
{{- with .ingress }}
|
||||
ingress:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .egress }}
|
||||
egress:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
22
charts/wordpress-not-binami/templates/pdp.yaml
Normal file
22
charts/wordpress-not-binami/templates/pdp.yaml
Normal file
|
@ -0,0 +1,22 @@
|
|||
{{- if and (.Values.podDisruptionBudget) (or .Values.podDisruptionBudget.minAvailable .Values.podDisruptionBudget.maxUnavailable) }}
|
||||
{{- if .Capabilities.APIVersions.Has "policy/v1" }}
|
||||
apiVersion: policy/v1
|
||||
{{- else }}
|
||||
apiVersion: policy/v1beta1
|
||||
{{- end }}
|
||||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
name: {{ include "wordpress.fullname" . }}
|
||||
labels:
|
||||
{{- include "wordpress.labels" . | nindent 4 }}
|
||||
spec:
|
||||
{{- if .Values.podDisruptionBudget.minAvailable }}
|
||||
minAvailable: {{ .Values.podDisruptionBudget.minAvailable }}
|
||||
{{- end }}
|
||||
{{- if .Values.podDisruptionBudget.maxUnavailable }}
|
||||
maxUnavailable: {{ .Values.podDisruptionBudget.maxUnavailable }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "wordpress.selectorLabels" . | nindent 6 }}
|
||||
{{- end }}
|
33
charts/wordpress-not-binami/templates/pvc.yaml
Normal file
33
charts/wordpress-not-binami/templates/pvc.yaml
Normal file
|
@ -0,0 +1,33 @@
|
|||
{{- $createNcPvc := and (empty .Values.storage.persistentVolumeClaimName) (.Values.storage.requestedSize) }}
|
||||
{{- if $createNcPvc }}
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ include "wordpress.fullname" . }}
|
||||
labels:
|
||||
{{- include "wordpress.labels" . | nindent 4 }}
|
||||
{{- with .Values.storage.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if or .Values.storage.keepPvc .Values.storage.annotations }}
|
||||
annotations:
|
||||
{{- if .Values.storage.keepPvc }}
|
||||
"helm.sh/resource-policy": keep
|
||||
{{- end }}
|
||||
{{- with .Values.storage.annotations }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.storage }}
|
||||
accessModes:
|
||||
{{- toYaml .accessModes | nindent 4 }}
|
||||
volumeMode: Filesystem
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .requestedSize }}
|
||||
{{- if .className }}
|
||||
storageClassName: {{ .className }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
30
charts/wordpress-not-binami/templates/secureconfig.yaml
Normal file
30
charts/wordpress-not-binami/templates/secureconfig.yaml
Normal file
|
@ -0,0 +1,30 @@
|
|||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ include "wordpress.fullname" . }}
|
||||
labels:
|
||||
{{- include "wordpress.labels" . | nindent 4 }}
|
||||
data:
|
||||
{{- if .Values.mariadb.enabled }}
|
||||
WORDPRESS_DB_HOST: {{ (include "mariadb.servicename" .) | b64enc }}
|
||||
{{- with .Values.mariadb.userDatabase }}
|
||||
WORDPRESS_DB_NAME: {{ .name | b64enc }}
|
||||
WORDPRESS_DB_USER: {{ .user | b64enc }}
|
||||
WORDPRESS_DB_PASSWORD: {{ .password | b64enc }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
{{- with .Values.externalDatabase }}
|
||||
WORDPRESS_DB_NAME: {{ .name | b64enc }}
|
||||
WORDPRESS_DB_USER: {{ .user | b64enc }}
|
||||
WORDPRESS_DB_PASSWORD: {{ .password | b64enc }}
|
||||
WORDPRESS_DB_HOST: {{ .host | b64enc }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- with .Values.settings }}
|
||||
{{- if .tablePrefix }}
|
||||
WORDPRESS_TABLE_PREFIX: {{ .tablePrefix | b64enc }}
|
||||
{{- end }}
|
||||
{{- if .configExtra }}
|
||||
WORDPRESS_CONFIG_EXTRA: {{ .configExtra | b64enc }}
|
||||
{{- end }}
|
||||
{{- end }}
|
31
charts/wordpress-not-binami/templates/service.yaml
Normal file
31
charts/wordpress-not-binami/templates/service.yaml
Normal file
|
@ -0,0 +1,31 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "wordpress.fullname" . }}
|
||||
labels:
|
||||
{{- include "wordpress.labels" . | nindent 4 }}
|
||||
{{- with .Values.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.service.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
name: http
|
||||
{{- if and ( or (eq .Values.service.type "LoadBalancer") (eq .Values.service.type "NodePort") ) (.Values.service.nodePort) }}
|
||||
nodePort: {{ .Values.service.nodePort }}
|
||||
{{- end }}
|
||||
{{- if and (eq .Values.service.type "LoadBalancer") (.Values.service.loadBalancerIP) }}
|
||||
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if .Values.service.clusterIP }}
|
||||
clusterIP: {{ .Values.service.clusterIP }}
|
||||
{{- end }}
|
||||
selector:
|
||||
{{- include "wordpress.selectorLabels" . | nindent 4 }}
|
12
charts/wordpress-not-binami/templates/serviceaccount.yaml
Normal file
12
charts/wordpress-not-binami/templates/serviceaccount.yaml
Normal file
|
@ -0,0 +1,12 @@
|
|||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "wordpress.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "wordpress.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -0,0 +1,15 @@
|
|||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: "{{ include "wordpress.fullname" . }}-test-connection"
|
||||
labels:
|
||||
{{- include "wordpress.labels" . | nindent 4 }}
|
||||
annotations:
|
||||
"helm.sh/hook": test-success
|
||||
spec:
|
||||
containers:
|
||||
- name: wget
|
||||
image: busybox
|
||||
command: ['wget']
|
||||
args: ['{{ include "wordpress.fullname" . }}:{{ .Values.service.port }}']
|
||||
restartPolicy: Never
|
758
charts/wordpress-not-binami/values.schema.json
Normal file
758
charts/wordpress-not-binami/values.schema.json
Normal file
|
@ -0,0 +1,758 @@
|
|||
{
|
||||
"$schema": "http://json-schema.org/schema#",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"resources": {
|
||||
"description": "Your service will have at least the requested resources and never more than its limits. No limit for a resource and you can consume everything left on the host machine.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requests": {
|
||||
"description": "Guaranteed resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The amount of cpu guaranteed",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "100m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "cpu",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.cpuRequest",
|
||||
"useRegionSliderConfig": "cpu"
|
||||
}
|
||||
},
|
||||
"memory": {
|
||||
"description": "The amount of memory guaranteed",
|
||||
"title": "memory",
|
||||
"type": "string",
|
||||
"default": "2Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "down",
|
||||
"sliderExtremitySemantic": "guaranteed",
|
||||
"sliderRangeId": "memory",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.memoryRequest",
|
||||
"useRegionSliderConfig": "memory"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"limits": {
|
||||
"description": "max resources",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"description": "The maximum amount of cpu",
|
||||
"title": "CPU",
|
||||
"type": "string",
|
||||
"default": "30000m",
|
||||
"render": "slider",
|
||||
"sliderMin": 50,
|
||||
"sliderMax": 40000,
|
||||
"sliderStep": 50,
|
||||
"sliderUnit": "m",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "cpu",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.cpuLimit",
|
||||
"useRegionSliderConfig": "cpu"
|
||||
}
|
||||
},
|
||||
"memory": {
|
||||
"description": "The maximum amount of memory",
|
||||
"title": "Memory",
|
||||
"type": "string",
|
||||
"default": "50Gi",
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 200,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"sliderExtremity": "up",
|
||||
"sliderExtremitySemantic": "Maximum",
|
||||
"sliderRangeId": "memory",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.memoryLimit",
|
||||
"useRegionSliderConfig": "memory"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"discovery": {
|
||||
"description": "configure your service to autodetect some ressources.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"hive": {
|
||||
"type": "boolean",
|
||||
"title": "Enable hive metastore discovery",
|
||||
"description": "discover your hive metastore service",
|
||||
"default": true
|
||||
},
|
||||
"mlflow": {
|
||||
"type": "boolean",
|
||||
"title": "Enable mlflow discovery",
|
||||
"description": "discover your mlflow service",
|
||||
"default": true
|
||||
},
|
||||
"metaflow": {
|
||||
"type": "boolean",
|
||||
"title": "Enable metaflow discovery",
|
||||
"description": "discover your metaflow service",
|
||||
"default": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"description": "spark-history specific configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"image": {
|
||||
"description": "image docker",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"pullPolicy": {
|
||||
"type": "string",
|
||||
"description": "option when pulling the docker image",
|
||||
"default": "IfNotPresent",
|
||||
"enum": [
|
||||
"IfNotPresent",
|
||||
"Always",
|
||||
"Never"
|
||||
]
|
||||
},
|
||||
"version": {
|
||||
"description": "vscode supported version",
|
||||
"type": "string",
|
||||
"default": "inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"listEnum": [
|
||||
"inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"inseefrlab/onyxia-vscode-python:py3.10.13"
|
||||
],
|
||||
"render": "list",
|
||||
"hidden": {
|
||||
"value": true,
|
||||
"path": "service/image/custom/enabled"
|
||||
}
|
||||
},
|
||||
"custom": {
|
||||
"description": "use a custom vscode docker image",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"title": "custom image",
|
||||
"type": "boolean",
|
||||
"description": "use a custom vscode docker images",
|
||||
"default": false
|
||||
},
|
||||
"version": {
|
||||
"description": "vscode unsupported version",
|
||||
"type": "string",
|
||||
"default": "inseefrlab/onyxia-vscode-python:py3.11.6",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "service/image/custom/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"persistence": {
|
||||
"description": "Configuration for persistence",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Create a persistent volume",
|
||||
"default": true
|
||||
},
|
||||
"size": {
|
||||
"type": "string",
|
||||
"title": "Persistent volume size",
|
||||
"description": "Size of the persistent volume",
|
||||
"default": "10Gi",
|
||||
"form": true,
|
||||
"render": "slider",
|
||||
"sliderMin": 1,
|
||||
"sliderMax": 100,
|
||||
"sliderStep": 1,
|
||||
"sliderUnit": "Gi",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.resources.disk",
|
||||
"useRegionSliderConfig": "disk"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "persistence/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"security": {
|
||||
"description": "security specific configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"password": {
|
||||
"type": "string",
|
||||
"description": "Password",
|
||||
"default": "changeme",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{project.password}}"
|
||||
}
|
||||
},
|
||||
"allowlist": {
|
||||
"type": "object",
|
||||
"description": "IP protection",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable IP protection",
|
||||
"description": "Only the configured set of IPs will be able to reach the service",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultIpProtection"
|
||||
}
|
||||
},
|
||||
"ip": {
|
||||
"type": "string",
|
||||
"description": "the white list of IP is whitespace",
|
||||
"title": "Whitelist of IP",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{user.ip}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"networkPolicy": {
|
||||
"type": "object",
|
||||
"description": "Define access policy to the service",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable network policy",
|
||||
"description": "Only pod from the same namespace will be allowed",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "region.defaultNetworkPolicy"
|
||||
}
|
||||
},
|
||||
"from": {
|
||||
"type": "array",
|
||||
"description": "Array of source allowed to have network access to your service",
|
||||
"default": [],
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.from"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"kubernetes": {
|
||||
"description": "configuration of your kubernetes access",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "allow your service to access your namespace ressources",
|
||||
"default": true
|
||||
},
|
||||
"role": {
|
||||
"type": "string",
|
||||
"description": "bind your service account to this kubernetes default role",
|
||||
"default": "view",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "kubernetes/enabled"
|
||||
},
|
||||
"enum": [
|
||||
"view",
|
||||
"edit",
|
||||
"admin"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"git": {
|
||||
"description": "Git user configuration",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add git config inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "user name for git",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.name}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"email": {
|
||||
"type": "string",
|
||||
"description": "user email for git",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.email}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"cache": {
|
||||
"type": "string",
|
||||
"description": "duration in seconds of the credentials cache duration",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.credentials_cache_duration}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"token": {
|
||||
"type": "string",
|
||||
"description": "personal access token",
|
||||
"default": "",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.token}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"repository": {
|
||||
"type": "string",
|
||||
"description": "projet",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{git.project}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "git/enabled"
|
||||
}
|
||||
},
|
||||
"branch": {
|
||||
"type": "string",
|
||||
"description": "Branch automatically checked out",
|
||||
"default": "",
|
||||
"hidden": {
|
||||
"value": "",
|
||||
"path": "git/repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"vault": {
|
||||
"description": "Configuration of vault client",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add vault temporary identity inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"token": {
|
||||
"description": "token vault",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_TOKEN}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"url": {
|
||||
"description": "url of vault server",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_ADDR}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"mount": {
|
||||
"description": "mount of the v2 secret engine",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_MOUNT}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"directory": {
|
||||
"description": "top level directory",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{vault.VAULT_TOP_DIR}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
},
|
||||
"secret": {
|
||||
"description": "the path of the secret to convert into a list of environment variables",
|
||||
"type": "string",
|
||||
"default": "",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "vault/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"s3": {
|
||||
"description": "Configuration of temporary identity",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Add S3 temporary identity inside your environment",
|
||||
"default": true
|
||||
},
|
||||
"accessKeyId": {
|
||||
"description": "AWS Access Key",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "s3.AWS_ACCESS_KEY_ID"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"endpoint": {
|
||||
"description": "AWS S3 Endpoint",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_S3_ENDPOINT}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"defaultRegion": {
|
||||
"description": "AWS S3 default region",
|
||||
"type": "string",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_DEFAULT_REGION}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"secretAccessKey": {
|
||||
"description": "AWS S3 secret access key",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SECRET_ACCESS_KEY}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
},
|
||||
"sessionToken": {
|
||||
"description": "AWS S3 session Token",
|
||||
"type": "string",
|
||||
"render": "password",
|
||||
"x-onyxia": {
|
||||
"overwriteDefaultWith": "{{s3.AWS_SESSION_TOKEN}}"
|
||||
},
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "s3/enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"ingress": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Ingress Details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable Ingress",
|
||||
"type": "boolean",
|
||||
"default": true,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.ingress"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"userHostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"ingressClassName": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "ingressClassName",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.ingressClassName}}"
|
||||
}
|
||||
},
|
||||
"useCertManager": {
|
||||
"type": "boolean",
|
||||
"description": "Whether CertManager should be used to generate a certificate",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.useCertManager"
|
||||
}
|
||||
},
|
||||
"certManagerClusterIssuer":{
|
||||
"type": "string",
|
||||
"description": "certManager cluster issuer",
|
||||
"title": "CertManager Cluster Issuer",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.certManagerClusterIssuer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"route": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Route details",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"description": "Enable route",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "k8s.route"
|
||||
}
|
||||
},
|
||||
"hostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
|
||||
}
|
||||
},
|
||||
"userHostname": {
|
||||
"type": "string",
|
||||
"form": true,
|
||||
"title": "Hostname",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"networking": {
|
||||
"type": "object",
|
||||
"form": true,
|
||||
"title": "Networking detail",
|
||||
"properties": {
|
||||
"user": {
|
||||
"type": "object",
|
||||
"description": "user defined port",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"title": "Enable a custom service port",
|
||||
"description": "Enable a custom service port",
|
||||
"default": false
|
||||
},
|
||||
"port": {
|
||||
"type": "integer",
|
||||
"description": "port of the custom service",
|
||||
"title": "Custom service port",
|
||||
"hidden": {
|
||||
"value": false,
|
||||
"path": "networking/user/enabled"
|
||||
},
|
||||
"default": 5000
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"init": {
|
||||
"description": "Init parameters",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"regionInit": {
|
||||
"type": "string",
|
||||
"description": "region initialization script",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.initScriptUrl}}"
|
||||
}
|
||||
},
|
||||
"regionInitCheckSum": {
|
||||
"type": "string",
|
||||
"description": "region initialization script",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{k8s.initScriptCheckSum}}"
|
||||
}
|
||||
},
|
||||
"personalInit": {
|
||||
"type": "string",
|
||||
"description": "user initialization script",
|
||||
"default": ""
|
||||
},
|
||||
"personalInitArgs": {
|
||||
"type": "string",
|
||||
"description": "args for user initialization script",
|
||||
"default": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"repository": {
|
||||
"description": "python repositories for pip and conda",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"pipRepository": {
|
||||
"type": "string",
|
||||
"description": "python repository for pip",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{packageRepositoryInjection.pypiProxyUrl}}"
|
||||
}
|
||||
},
|
||||
"condaRepository": {
|
||||
"type": "string",
|
||||
"description": "python repository for pip",
|
||||
"default": "",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "{{packageRepositoryInjection.condaProxyUrl}}"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"startupProbe": {
|
||||
"type": "object",
|
||||
"description": "Start up probe",
|
||||
"default": {},
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.startupProbe"
|
||||
}
|
||||
},
|
||||
"tolerations": {
|
||||
"type": "array",
|
||||
"description": "Array of tolerations",
|
||||
"default": [],
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.tolerations"
|
||||
}
|
||||
},
|
||||
"nodeSelector": {
|
||||
"type": "object",
|
||||
"description": "NodeSelector",
|
||||
"default": {},
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "region.nodeSelector"
|
||||
}
|
||||
},
|
||||
"userPreferences": {
|
||||
"description": "User Preferences",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"darkMode": {
|
||||
"type": "boolean",
|
||||
"description": "dark mode is or is not enabled",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "user.darkMode"
|
||||
}
|
||||
},
|
||||
"language": {
|
||||
"type": "string",
|
||||
"description": "Preferred language",
|
||||
"default": "en",
|
||||
"x-onyxia": {
|
||||
"hidden": true,
|
||||
"overwriteDefaultWith": "user.lang"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"global": {
|
||||
"description": "Suspend",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"suspend": {
|
||||
"type": "boolean",
|
||||
"description": "Suspend this service",
|
||||
"default": false,
|
||||
"x-onyxia": {
|
||||
"hidden": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
296
charts/wordpress-not-binami/values.yaml
Normal file
296
charts/wordpress-not-binami/values.yaml
Normal file
|
@ -0,0 +1,296 @@
|
|||
## Default values for Wordpress deployment
|
||||
|
||||
## Number of wordpress replicas
|
||||
replicaCount: 1
|
||||
|
||||
## Netxcloud docker image
|
||||
image:
|
||||
registry: "docker.io"
|
||||
repository: "wordpress"
|
||||
pullPolicy: IfNotPresent
|
||||
# Overrides the image tag whose default is the chart appVersion.
|
||||
tag: ""
|
||||
|
||||
## Pull secrets and name override options
|
||||
imagePullSecrets: []
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
|
||||
## Additional labels for Deployment or StatefulSet
|
||||
customLabels: {}
|
||||
|
||||
## Additional annotations for Deployment or StatefulSet
|
||||
customAnnotations: {}
|
||||
|
||||
## Pod deployment strategy
|
||||
strategy: {}
|
||||
|
||||
## Optional service account
|
||||
serviceAccount:
|
||||
# Specifies whether a service account should be created
|
||||
create: false
|
||||
# Annotations to add to the service account
|
||||
annotations: {}
|
||||
# The name of the service account to use.
|
||||
# If not set and create is true, a name is generated using the fullname template
|
||||
name: ""
|
||||
|
||||
## Additional pod annotations
|
||||
podAnnotations: {}
|
||||
|
||||
## Additional pod labels
|
||||
podLabels: {}
|
||||
|
||||
## Pod security options (default: www-data as fsGroup and user running as non-root)
|
||||
podSecurityContext:
|
||||
fsGroup: 33
|
||||
runAsUser: 33
|
||||
runAsNonRoot: true
|
||||
|
||||
## Default security options to run Wordpress as read only container without privilege escalation
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
allowPrivilegeEscalation: false
|
||||
privileged: false
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 80
|
||||
## The node port (only relevant for type LoadBalancer or NodePort)
|
||||
nodePort:
|
||||
## The cluster ip address (only relevant for type LoadBalancer or NodePort)
|
||||
clusterIP:
|
||||
## The loadbalancer ip address (only relevant for type LoadBalancer)
|
||||
loadBalancerIP:
|
||||
## Annotations to add to the service
|
||||
annotations: {}
|
||||
## Labels to add to the service
|
||||
labels: {}
|
||||
|
||||
## Ingress configuration
|
||||
ingress:
|
||||
## Enable ingress endpoint
|
||||
enabled: false
|
||||
|
||||
## Optional ingress class name
|
||||
className:
|
||||
|
||||
## Maximal body size (default: 64m - increase if uploads to Wordpress failing)
|
||||
maxBodySize: 64m
|
||||
|
||||
## Additional ingress annotations
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
|
||||
## Additional ingress labels
|
||||
labels: {}
|
||||
|
||||
## Hosts
|
||||
hosts:
|
||||
- host:
|
||||
paths:
|
||||
- path: /
|
||||
pathType: ImplementationSpecific
|
||||
|
||||
## TLS settings for hosts
|
||||
tls: []
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - chart-example.local
|
||||
|
||||
## Resource limits and requests
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
## Custom startup probe (overwrites default startup probe)
|
||||
customStartupProbe: {}
|
||||
|
||||
## Default startup probe
|
||||
startupProbe:
|
||||
enabled: true
|
||||
initialDelaySeconds: 10
|
||||
timeoutSeconds: 5
|
||||
failureThreshold: 30
|
||||
successThreshold: 1
|
||||
periodSeconds: 10
|
||||
|
||||
## Custom liveness probe (overwrites default liveness probe)
|
||||
customLivenessProbe: {}
|
||||
|
||||
## Default liveness probe
|
||||
livenessProbe:
|
||||
enabled: true
|
||||
initialDelaySeconds: 30
|
||||
timeoutSeconds: 5
|
||||
failureThreshold: 5
|
||||
successThreshold: 1
|
||||
periodSeconds: 10
|
||||
|
||||
## Custom readiness probe (overwrites default readiness probe)
|
||||
customReadinessProbe: {}
|
||||
|
||||
## Default readiness probe
|
||||
readinessProbe:
|
||||
enabled: true
|
||||
initialDelaySeconds: 30
|
||||
timeoutSeconds: 5
|
||||
failureThreshold: 5
|
||||
successThreshold: 1
|
||||
periodSeconds: 10
|
||||
|
||||
## Extra init containers
|
||||
extraInitContainers: []
|
||||
|
||||
## Extra containers for usage as sidecars
|
||||
extraContainers:
|
||||
|
||||
## Additional node selector
|
||||
nodeSelector: {}
|
||||
|
||||
## Tolerations for pod assignment
|
||||
tolerations: []
|
||||
|
||||
## Affinity for pod assignment
|
||||
affinity: {}
|
||||
|
||||
## Topology spread constraints for pods
|
||||
topologySpreadConstraints: {}
|
||||
|
||||
## Maximum number of revisions maintained in revision history
|
||||
revisionHistoryLimit:
|
||||
|
||||
## Pod disruption budget
|
||||
podDisruptionBudget: {}
|
||||
## Minimum number of pods that must be available after eviction
|
||||
# minAvailable:
|
||||
## Maximum number of pods that can be unavailable after eviction
|
||||
# maxUnavailable:
|
||||
|
||||
## Internal container port (default: 8000)
|
||||
containerPort: 8000
|
||||
|
||||
## Additional environment variables
|
||||
env: []
|
||||
|
||||
## Additional arguments for the container entrypoint process
|
||||
args: []
|
||||
|
||||
## External database settings (is used when mariadb.enabled is false)
|
||||
externalDatabase: {}
|
||||
## Name of the database (default: wordpress)
|
||||
# name: wordpress
|
||||
|
||||
## Database user
|
||||
# user:
|
||||
|
||||
## Database password
|
||||
# password:
|
||||
|
||||
## Database host
|
||||
# host:
|
||||
|
||||
## Wordpress specific settings
|
||||
settings:
|
||||
## Database table name prefix
|
||||
tablePrefix:
|
||||
## Maximum file upload size (default: 64M)
|
||||
maxFileUploadSize: 64M
|
||||
## PHP memory limit (default: 128M)
|
||||
memoryLimit: 128M
|
||||
## Extra values embedded inside wp-config.php
|
||||
configExtra:
|
||||
|
||||
## Additional PHP custom.ini
|
||||
customPhpConfig: |
|
||||
|
||||
## Overwrite default apache ports.conf
|
||||
apachePortsConfig: |
|
||||
|
||||
## Overwrite default apache 000-default.conf
|
||||
apacheDefaultSiteConfig: |
|
||||
|
||||
## A list of existing secrets that will be mounted into the container as environment variables
|
||||
extraEnvSecrets: []
|
||||
|
||||
## A list of existing configmaps that will be mounted into the container as environment variables
|
||||
extraEnvConfigs: []
|
||||
|
||||
## A list of additional existing secrets that will be mounted into the container
|
||||
## The mounted files of the secrets can be used for advanced configuration - f.e. TLS
|
||||
extraSecrets: []
|
||||
## Name of the existing K8s secret
|
||||
# - name:
|
||||
## Mount path where the secret should be mounted into the container (f.e. /mysecretfolder)
|
||||
# mountPath:
|
||||
|
||||
## Storage parameters
|
||||
storage:
|
||||
## Set persistentVolumenClaimName to reference an existing PVC
|
||||
persistentVolumeClaimName:
|
||||
|
||||
## Alternative set requestedSize to define a size for a dynmaically created PVC
|
||||
requestedSize:
|
||||
|
||||
## the storage class name
|
||||
className:
|
||||
|
||||
## Default access mode (ReadWriteOnce)
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
|
||||
## Keep a created Persistent volume claim when uninstalling the helm chart
|
||||
keepPvc: false
|
||||
|
||||
## Additional storage annotations
|
||||
annotations: {}
|
||||
|
||||
## Additional storage labels
|
||||
labels: {}
|
||||
|
||||
## MariaDB configuration
|
||||
mariadb:
|
||||
## Enable MariaDB helm chart for deployment (default: false)
|
||||
enabled: false
|
||||
|
||||
## Database configuration
|
||||
settings:
|
||||
## The root user password
|
||||
rootPassword:
|
||||
|
||||
## Optional user database which is created during first startup with user and password
|
||||
userDatabase: {}
|
||||
## Name of the user database
|
||||
# name:
|
||||
## Database user with full access rights
|
||||
# user:
|
||||
## Password of the database user
|
||||
# password:
|
||||
|
||||
# Storage parameters
|
||||
storage:
|
||||
## Set persistentVolumenClaimName to reference an existing PVC
|
||||
persistentVolumeClaimName:
|
||||
|
||||
## Alternative set requestedSize to define a size for a dynmaically created PVC
|
||||
requestedSize:
|
||||
|
||||
## the storage class name
|
||||
className:
|
||||
|
||||
## Additional storage annotations
|
||||
annotations: {}
|
||||
|
||||
## Additional storage labels
|
||||
labels: {}
|
||||
|
||||
## Network policies
|
||||
networkPolicy: {}
|
||||
## Ingress and Egress policies
|
||||
# ingress: {}
|
||||
# egress: {}
|
BIN
charts/wordpress-not-binami/wordpress-0.11.0.tgz
Normal file
BIN
charts/wordpress-not-binami/wordpress-0.11.0.tgz
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user