Files
chart/community/webdav/app_versions.json
2025-03-06 08:28:05 +00:00

468 lines
26 KiB
JSON

{
"1.0.31": {
"healthy": true,
"supported": true,
"healthy_error": null,
"location": "/__w/charts/charts/community/webdav/1.0.31",
"last_update": "2025-03-06 08:26:26",
"required_features": [
"definitions/certificate"
],
"human_version": "2.4.63_1.0.31",
"version": "1.0.31",
"chart_metadata": {
"name": "webdav",
"description": "WebDAV is a set of extensions to the HTTP protocol which allows users to collaboratively edit and manage files on remote web servers.",
"annotations": {
"title": "WebDAV"
},
"type": "application",
"version": "1.0.31",
"apiVersion": "v2",
"appVersion": "2.4.63",
"kubeVersion": ">=1.16.0-0",
"maintainers": [
{
"name": "truenas",
"url": "https://www.truenas.com/",
"email": "dev@ixsystems.com"
}
],
"dependencies": [
{
"name": "common",
"repository": "file://../../../common",
"version": "1.2.9"
}
],
"home": "http://www.webdav.org/",
"icon": "https://media.sys.truenas.net/apps/webdav/icons/icon.png",
"sources": [
"http://www.webdav.org/",
"https://github.com/truenas/charts/tree/master/community/webdav"
],
"keywords": [
"webdav",
"file-sharing"
]
},
"app_metadata": {
"runAsContext": [
{
"userName": "webdav",
"groupName": "webdav",
"gid": 568,
"uid": 568,
"description": "WebDAV can run as any non-root user."
}
],
"capabilities": [],
"hostMounts": []
},
"schema": {
"groups": [
{
"name": "WebDAV Configuration",
"description": "Configure WebDAV"
},
{
"name": "User and Group Configuration",
"description": "Configure User and Group for WebDAV"
},
{
"name": "Network Configuration",
"description": "Configure Network for WebDAV"
},
{
"name": "Storage Configuration",
"description": "Configure Storage for WebDAV"
},
{
"name": "Resources Configuration",
"description": "Configure Resources for WebDAV"
}
],
"questions": [
{
"variable": "webdavConfig",
"label": "",
"group": "WebDAV Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "authType",
"label": "Authentication Type",
"description": "Select the authentication type for WebDAV.",
"schema": {
"type": "string",
"default": "none",
"enum": [
{
"value": "none",
"description": "No Authentication"
},
{
"value": "basic",
"description": "Basic Authentication"
}
]
}
},
{
"variable": "username",
"label": "Username",
"description": "The username for basic authentication.",
"schema": {
"type": "string",
"show_if": [
[
"authType",
"=",
"basic"
]
],
"required": true
}
},
{
"variable": "password",
"label": "Password",
"description": "The password for basic authentication.",
"schema": {
"type": "string",
"show_if": [
[
"authType",
"=",
"basic"
]
],
"private": true,
"required": true
}
},
{
"variable": "additionalBrowserMatches",
"label": "Additional Browser Matches",
"description": "Additional browser matches for WebDAV.</br>\nThis is useful if you want to use WebDAV with a browser\nthat is not supported by the default configuration.</br>\nExample: \"^some-regex\" </br>\nThis will create the following line in the configuration file:</br>\nBrowserMatch \"^some-regex\" redirect-carefully\n",
"schema": {
"type": "list",
"default": [],
"items": [
{
"variable": "match",
"label": "Match",
"schema": {
"type": "string",
"required": true
}
}
]
}
},
{
"variable": "additionalEnvs",
"label": "Additional Environment Variables",
"description": "Configure additional environment variables for WebDAV.",
"schema": {
"type": "list",
"default": [],
"items": [
{
"variable": "env",
"label": "Environment Variable",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "name",
"label": "Name",
"schema": {
"type": "string",
"required": true
}
},
{
"variable": "value",
"label": "Value",
"schema": {
"type": "string",
"required": true
}
}
]
}
}
]
}
}
]
}
},
{
"variable": "webdavRunAs",
"label": "",
"group": "User and Group Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "user",
"label": "User ID",
"description": "The user id that WebDAV will run as.",
"schema": {
"type": "int",
"min": 2,
"default": 666,
"required": true
}
},
{
"variable": "group",
"label": "Group ID",
"description": "The group id that WebDAV will run as.",
"schema": {
"type": "int",
"min": 2,
"default": 666,
"required": true
}
}
]
}
},
{
"variable": "webdavNetwork",
"label": "",
"group": "Network Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "http",
"label": "Enable HTTP",
"description": "Enable HTTP for WebDAV.",
"schema": {
"type": "boolean",
"default": true,
"show_subquestions_if": true,
"subquestions": [
{
"variable": "httpPort",
"label": "HTTP Port",
"description": "The port for HTTP WebDAV.",
"schema": {
"type": "int",
"default": 30034,
"min": 9000,
"max": 65535,
"required": true
}
}
]
}
},
{
"variable": "https",
"label": "Enable HTTPS",
"description": "Enable HTTPS for WebDAV.",
"schema": {
"type": "boolean",
"default": false,
"show_subquestions_if": true,
"subquestions": [
{
"variable": "httpsPort",
"label": "HTTPS Port",
"description": "The port for HTTPS WebDAV.",
"schema": {
"type": "int",
"default": 30035,
"min": 9000,
"max": 65535,
"required": true
}
},
{
"variable": "certificateID",
"label": "Certificate",
"description": "The certificate to use for HTTPS WebDAV.",
"schema": {
"type": "int",
"required": true,
"null": true,
"$ref": [
"definitions/certificate"
],
"enum": [
{
"value": null,
"description": "No Certificate"
}
],
"default": null
}
}
]
}
},
{
"variable": "hostNetwork",
"label": "Host Network",
"description": "Bind to the host network. It's recommended to keep this disabled.</br>\n",
"schema": {
"type": "boolean",
"default": false
}
}
]
}
},
{
"variable": "webdavStorage",
"label": "",
"group": "Storage Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "shares",
"label": "Shares",
"description": "Shares for WebDAV.",
"schema": {
"type": "list",
"required": true,
"default": [],
"items": [
{
"variable": "shareEntry",
"label": "Share Entry",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "enabled",
"label": "Enable the share",
"description": "Enable the share.",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "name",
"label": "Share Name",
"description": "The name of the share.</br>\nAlso serves as the endpoint for the share.</br>\nExample: [share1] will be available at [http://<webdav-ip>:<webdav-port>/share1]\n",
"schema": {
"type": "string",
"valid_chars": "^[a-zA-Z0-9_-]+$",
"valid_chars_error": "Share name can only consist of [Letters(a-z, A-Z), Numbers(0-9), Underscores(_), Dashes(-)]",
"required": true
}
},
{
"variable": "description",
"label": "Description",
"description": "Share description. Only used for documentation.",
"schema": {
"type": "string"
}
},
{
"variable": "hostPath",
"label": "Host Path",
"description": "The host path to use for the share.",
"schema": {
"type": "hostpath",
"required": true
}
},
{
"variable": "readOnly",
"label": "Read Only",
"description": "Enable read only access to the share.</br>\nThis will disable write access to the share.</br>\nData will be mounted as read only.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "maxRequestBodySizeInGB",
"label": "Max Request Body Size (in GB)",
"description": "The maximum size of the request body in GB.\nIf the request body size exceeds this value, the request will fail.\nValue of 0 means no limit.\n",
"schema": {
"type": "int",
"default": 1
}
},
{
"variable": "fixPermissions",
"label": "Fix Permissions",
"description": "Enable permission fix for the share.</br>\nThis will fix the permissions of the share on startup.</br>\nThis will change the owner of the share to the user and group specified in [User and Group Configuration].</br>\nNote: This will still change permissions even if [Read Only] for the share is enabled.\n",
"schema": {
"type": "boolean",
"default": false
}
}
]
}
}
]
}
}
]
}
},
{
"variable": "resources",
"group": "Resources Configuration",
"label": "",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "limits",
"label": "Limits",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "cpu",
"label": "CPU",
"description": "CPU limit for WebDAV.",
"schema": {
"type": "string",
"max_length": 6,
"valid_chars": "^(0\\.[1-9]|[1-9][0-9]*)(\\.[0-9]|m?)$",
"valid_chars_error": "Valid CPU limit formats are</br>\n- Plain Integer - eg. 1</br>\n- Float - eg. 0.5</br>\n- Milicpu - eg. 500m\n",
"default": "4000m",
"required": true
}
},
{
"variable": "memory",
"label": "Memory",
"description": "Memory limit for WebDAV.",
"schema": {
"type": "string",
"max_length": 12,
"valid_chars": "^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$",
"valid_chars_error": "Valid Memory limit formats are</br>\n- Suffixed with E/P/T/G/M/K - eg. 1G</br>\n- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>\n- Plain Integer in bytes - eg. 1024</br>\n- Exponent - eg. 134e6\n",
"default": "8Gi",
"required": true
}
}
]
}
}
]
}
}
]
},
"app_readme": "<h1>WebDAV</h1>\n<p><a href=\"http://webdav.org/\">WebDAV</a> is a set of extensions to the HTTP protocol which allows users to collaboratively edit and manage files on remote web servers.</p>\n<blockquote>\n<p>When application is installed and <code>Fix Permissions</code> is selected on at least 1 share\na container will be launched with <strong>root</strong> privileges. This is required in order to apply\nthe correct permissions to the <code>WebDAV</code> shares/directories.\nAfterward, the <code>WebDAV</code> container will run as a <strong>non</strong>-root user (Default: <code>666</code>).\n<code>Chown</code> will only apply if the parent directory does not match the configured user and group.</p>\n</blockquote>",
"detailed_readme": "<h1>WebDAV</h1>\n<p><a href=\"http://webdav.org/\">WebDAV</a> is a set of extensions to the HTTP protocol which allows users to collaboratively edit and manage files on remote web servers.</p>\n<blockquote>\n<p>When application is installed and <code>Fix Permissions</code> is selected on at least 1 share\na container will be launched with <strong>root</strong> privileges. This is required in order to apply\nthe correct permissions to the selected <code>WebDAV</code> shares/directories.\nAfterward, the <code>WebDAV</code> container will run as a <strong>non</strong>-root user (Default: <code>666</code>).\nNote that <code>chown</code> will only apply if the parent directory does not match the configured user and group.</p>\n</blockquote>",
"changelog": null
}
}