Public Access
- Updated Chart.yaml to version 0.2.0 and added annotations for changes. - Modified release-chart.yaml to trigger releases via Gitea and handle pre-releases. - Introduced ServiceAccount configuration in values.yaml and related templates. - Adjusted internal container ports to prevent conflicts between nginx and aptly. - Updated README.md and NOTES.txt to reflect new configurations and usage instructions.
441 lines
15 KiB
JSON
441 lines
15 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"title": "aptly",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"nameOverride": { "type": "string" },
|
|
"fullnameOverride": { "type": "string" },
|
|
"image": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"repository": { "type": "string" },
|
|
"tag": { "type": "string" },
|
|
"pullPolicy": { "type": "string", "enum": ["Always", "IfNotPresent", "Never"] },
|
|
"pullSecrets": { "type": "array" }
|
|
}
|
|
},
|
|
"nginx": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"image": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"repository": { "type": "string" },
|
|
"tag": { "type": "string" },
|
|
"pullPolicy": { "type": "string", "enum": ["Always", "IfNotPresent", "Never"] }
|
|
}
|
|
},
|
|
"resources": { "type": "object" },
|
|
"securityContext": { "type": "object" }
|
|
}
|
|
},
|
|
"aptly": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"architectures": { "type": "array", "items": { "type": "string" } },
|
|
"logLevel": { "type": "string", "enum": ["debug", "info", "warn", "error"] },
|
|
"logFormat": { "type": "string", "enum": ["default", "json"] },
|
|
"download": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"concurrency": { "type": "integer", "minimum": 1 },
|
|
"limit": { "type": "integer", "minimum": 0 },
|
|
"retries": { "type": "integer", "minimum": 0 },
|
|
"sourcePackages": { "type": "boolean" }
|
|
}
|
|
},
|
|
"publishing": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"skipContents": { "type": "boolean" },
|
|
"skipBz2": { "type": "boolean" }
|
|
}
|
|
},
|
|
"metrics": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": { "enabled": { "type": "boolean" } }
|
|
},
|
|
"swagger": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": { "enabled": { "type": "boolean" } }
|
|
},
|
|
"gpg": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"verify": { "type": "boolean" },
|
|
"provider": { "type": "string", "enum": ["gpg", "internal"] },
|
|
"signingKey": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"existingSecret": { "type": "string" },
|
|
"privateKey": { "type": "string" },
|
|
"passphrase": { "type": "string" }
|
|
}
|
|
},
|
|
"publishPublicKey": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"path": { "type": "string" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"gpgKeys": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["name", "armored"],
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"armored": { "type": "string" }
|
|
}
|
|
}
|
|
},
|
|
"localRepos": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["name"],
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"comment": { "type": "string" },
|
|
"defaultDistribution": { "type": "string" },
|
|
"defaultComponent": { "type": "string" }
|
|
}
|
|
}
|
|
},
|
|
"mirrors": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["name", "archiveURL", "distribution"],
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"archiveURL": { "type": "string" },
|
|
"distribution": { "type": "string" },
|
|
"components": { "type": "array", "items": { "type": "string" } },
|
|
"architectures": { "type": "array", "items": { "type": "string" } },
|
|
"filter": { "type": "string" },
|
|
"filterWithDeps": { "type": "boolean" },
|
|
"downloadSources": { "type": "boolean" },
|
|
"downloadUdebs": { "type": "boolean" },
|
|
"downloadInstaller": { "type": "boolean" },
|
|
"downloadAppStream": { "type": "boolean" },
|
|
"ignoreSignatures": { "type": "boolean" },
|
|
"keyrings": { "type": "array", "items": { "type": "string" } }
|
|
}
|
|
}
|
|
},
|
|
"publish": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["name", "distribution"],
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"prefix": { "type": "string" },
|
|
"distribution": { "type": "string" },
|
|
"sourceKind": { "type": "string", "enum": ["local", "snapshot"] },
|
|
"sources": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["name", "component"],
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"component": { "type": "string" }
|
|
}
|
|
}
|
|
},
|
|
"architectures": { "type": "array", "items": { "type": "string" } },
|
|
"acquireByHash": { "type": "boolean" },
|
|
"skipContents": { "type": "boolean" },
|
|
"skipBz2": { "type": "boolean" }
|
|
}
|
|
}
|
|
},
|
|
"configOverrides": { "type": "object", "additionalProperties": true },
|
|
"existingSecretEnv": { "type": "array", "items": { "type": "string" } }
|
|
}
|
|
},
|
|
"security": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"preset": { "type": "string", "enum": ["open", "publicRead", "authenticated", "readOnly"] },
|
|
"auth": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"users": { "type": "object", "additionalProperties": { "type": "string" } },
|
|
"existingSecret": { "type": "string" },
|
|
"internalUser": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"username": { "type": "string" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"trustedProxies": { "type": "array", "items": { "type": "string" } },
|
|
"read": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"requireAuth": { "type": ["boolean", "null"] },
|
|
"allowCIDRs": { "type": "array", "items": { "type": "string" } }
|
|
}
|
|
},
|
|
"write": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"requireAuth": { "type": ["boolean", "null"] },
|
|
"allowCIDRs": { "type": "array", "items": { "type": "string" } },
|
|
"inClusterOnly": { "type": "boolean" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"proxy": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"compatPaths": { "type": "boolean" },
|
|
"maxUploadSize": { "type": "string" },
|
|
"readTimeout": { "type": "string" },
|
|
"publishEndpointName": { "type": "string" }
|
|
}
|
|
},
|
|
"ports": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"aptly": { "type": "integer" },
|
|
"nginx": { "type": "integer" },
|
|
"metrics": { "type": "integer" }
|
|
}
|
|
},
|
|
"persistence": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"existingClaim": { "type": "string" },
|
|
"storageClass": { "type": "string" },
|
|
"accessMode": { "type": "string", "enum": ["ReadWriteOnce", "ReadWriteOncePod"] },
|
|
"size": { "type": "string" },
|
|
"annotations": { "type": "object" }
|
|
}
|
|
},
|
|
"workload": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"updateStrategy": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": { "type": { "type": "string", "enum": ["RollingUpdate", "OnDelete"] } }
|
|
},
|
|
"podManagementPolicy": { "type": "string", "enum": ["OrderedReady", "Parallel"] },
|
|
"revisionHistoryLimit": { "type": "integer", "minimum": 0 },
|
|
"terminationGracePeriodSeconds": { "type": "integer", "minimum": 0 },
|
|
"annotations": { "type": "object" },
|
|
"podAnnotations": { "type": "object" },
|
|
"podLabels": { "type": "object" }
|
|
}
|
|
},
|
|
"serviceAccount": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"create": { "type": "boolean" },
|
|
"name": { "type": "string" },
|
|
"annotations": { "type": "object" },
|
|
"automountServiceAccountToken": { "type": "boolean" }
|
|
}
|
|
},
|
|
"podSecurityContext": { "type": "object" },
|
|
"containerSecurityContext": { "type": "object" },
|
|
"resources": { "type": "object" },
|
|
"probes": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"startup": { "type": "object" },
|
|
"readiness": { "type": "object" },
|
|
"liveness": { "type": "object" }
|
|
}
|
|
},
|
|
"service": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"type": { "type": "string", "enum": ["ClusterIP", "NodePort", "LoadBalancer"] },
|
|
"port": { "type": "integer" },
|
|
"annotations": { "type": "object" }
|
|
}
|
|
},
|
|
"ingress": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"mode": { "type": "string", "enum": ["single", "split"] },
|
|
"className": { "type": "string" },
|
|
"annotations": { "type": "object", "additionalProperties": true },
|
|
"repo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"host": { "type": "string" },
|
|
"path": { "type": "string" },
|
|
"pathType": { "type": "string", "enum": ["Prefix", "Exact", "ImplementationSpecific"] },
|
|
"tls": { "type": "array" }
|
|
}
|
|
},
|
|
"api": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"host": { "type": "string" },
|
|
"className": { "type": "string" },
|
|
"annotations": { "type": "object", "additionalProperties": true },
|
|
"tls": { "type": "array" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"gateway": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"apiVersion": { "type": "string" },
|
|
"mode": { "type": "string", "enum": ["single", "split"] },
|
|
"parentRefs": { "type": "array" },
|
|
"repo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"hostnames": { "type": "array", "items": { "type": "string" } },
|
|
"path": { "type": "string" },
|
|
"pathType": { "type": "string", "enum": ["PathPrefix", "Exact", "RegularExpression"] }
|
|
}
|
|
},
|
|
"api": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"hostnames": { "type": "array", "items": { "type": "string" } },
|
|
"parentRefs": { "type": "array" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"metrics": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"service": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"port": { "type": "integer" },
|
|
"annotations": { "type": "object" }
|
|
}
|
|
},
|
|
"serviceMonitor": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"interval": { "type": "string" },
|
|
"labels": { "type": "object" },
|
|
"relabelings": { "type": "array" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"reconcile": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"mode": { "type": "string", "enum": ["hook", "job", "manual"] },
|
|
"failOnError": { "type": "boolean" },
|
|
"timeoutSeconds": { "type": "integer", "minimum": 1 },
|
|
"image": { "type": "object" },
|
|
"resources": { "type": "object" }
|
|
}
|
|
},
|
|
"podDisruptionBudget": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"maxUnavailable": { "type": "integer", "minimum": 0 }
|
|
}
|
|
},
|
|
"networkPolicy": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": { "type": "boolean" },
|
|
"allowedNamespaces": { "type": "array", "items": { "type": "string" } },
|
|
"extraIngress": { "type": "array" },
|
|
"egress": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"allowAll": { "type": "boolean" },
|
|
"extra": { "type": "array" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"extraEnv": { "type": "array" },
|
|
"extraEnvFrom": { "type": "array" },
|
|
"extraVolumes": { "type": "array" },
|
|
"extraVolumeMounts": { "type": "array" },
|
|
"extraInitContainers": { "type": "array" },
|
|
"extraContainers": { "type": "array" },
|
|
"nodeSelector": { "type": "object" },
|
|
"tolerations": { "type": "array" },
|
|
"affinity": { "type": "object" },
|
|
"topologySpreadConstraints": { "type": "array" },
|
|
"priorityClassName": { "type": "string" },
|
|
"global": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"imageRegistry": { "type": "string" },
|
|
"imagePullSecrets": { "type": "array" },
|
|
"defaultStorageClass": { "type": "string" }
|
|
}
|
|
}
|
|
}
|
|
}
|