Files
Compose-Files/kubernetes/core-deployment/template.json
T
2026-07-20 09:23:17 -04:00

277 lines
6.7 KiB
JSON

{
"slug": "core-deployment",
"kind": "kubernetes",
"metadata": {
"name": "Kubernetes Deployment",
"description": "Creates a Kubernetes Deployment with configurable image, replicas, service account, container port, simple environment variables, and optional resource requests and limits.",
"tags": [],
"icon": {
"provider": "simple-icons",
"id": "kubernetes"
},
"draft": false,
"version": {
"name": "1.31.0",
"source_dep_name": "manual/core-deployment"
}
},
"variables": [
{
"title": "General",
"name": "general",
"items": [
{
"name": "resource_name",
"type": "str",
"title": "Deployment name",
"required": false,
"default": "app-deployment",
"config": {
"placeholder": "app-deployment"
}
},
{
"name": "namespace",
"type": "str",
"title": "Namespace",
"required": false,
"default": "default",
"config": {
"placeholder": "default"
}
},
{
"name": "app_label",
"type": "str",
"title": "App Label",
"required": false,
"default": "app",
"config": {
"placeholder": "app"
}
},
{
"name": "replicas",
"type": "int",
"title": "Replicas",
"required": false,
"default": 1,
"config": {
"slider": true,
"min": 1,
"max": 20,
"step": 1,
"placeholder": "1"
}
},
{
"name": "service_account_name",
"type": "str",
"title": "ServiceAccount Name",
"required": false,
"config": {
"placeholder": "app-serviceaccount"
}
}
]
},
{
"title": "Container",
"name": "container",
"items": [
{
"name": "container_name",
"type": "str",
"title": "Container name",
"required": false,
"default": "app",
"config": {
"placeholder": "app"
}
},
{
"name": "image",
"type": "str",
"title": "Container image reference",
"required": true,
"config": {
"placeholder": "nginx:stable"
}
},
{
"name": "image_pull_policy",
"type": "enum",
"title": "Image pull policy",
"required": false,
"default": "IfNotPresent",
"config": {
"options": [
"Always",
"IfNotPresent",
"Never"
]
}
},
{
"name": "ports_enabled",
"type": "bool",
"title": "Container Port",
"required": false,
"default": true
},
{
"name": "container_port",
"type": "int",
"title": "Container port number",
"required": false,
"default": 8080,
"config": {
"placeholder": "8080"
}
},
{
"name": "container_port_name",
"type": "str",
"title": "Port name",
"required": false,
"default": "http",
"config": {
"placeholder": "http"
}
},
{
"name": "container_port_protocol",
"type": "enum",
"title": "Port protocol",
"required": false,
"default": "TCP",
"config": {
"options": [
"TCP",
"UDP",
"SCTP"
]
}
}
]
},
{
"title": "Environment",
"name": "environment",
"items": [
{
"name": "env_literal_enabled",
"type": "bool",
"title": "Env Var",
"required": false,
"default": false,
"description": "Add one literal environment variable"
},
{
"name": "env_literal_name",
"type": "str",
"title": "Env Name",
"required": false,
"default": "APP_ENV",
"config": {
"placeholder": "APP_ENV"
}
},
{
"name": "env_literal_value",
"type": "str",
"title": "Env Value",
"required": false,
"default": "production",
"config": {
"placeholder": "production"
}
},
{
"name": "env_fieldref_enabled",
"type": "bool",
"title": "FieldRef Var",
"required": false,
"default": false,
"description": "Add one fieldRef environment variable"
},
{
"name": "env_fieldref_name",
"type": "str",
"title": "FieldRef Name",
"required": false,
"default": "POD_IP",
"config": {
"placeholder": "POD_IP"
}
},
{
"name": "env_fieldref_field_path",
"type": "str",
"title": "Field Path",
"required": false,
"default": "status.podIP",
"description": "Kubernetes field path for the fieldRef environment variable",
"config": {
"placeholder": "status.podIP"
}
}
]
},
{
"title": "Resources",
"toggle": "resources_enabled",
"name": "resources",
"items": [
{
"name": "resources_enabled",
"type": "bool",
"title": "Resources",
"required": false,
"default": false
},
{
"name": "resources_cpu_limit",
"type": "str",
"title": "CPU limit",
"required": false,
"default": "500m",
"config": {
"placeholder": "500m"
}
},
{
"name": "resources_cpu_request",
"type": "str",
"title": "CPU request",
"required": false,
"default": "100m",
"config": {
"placeholder": "100m"
}
},
{
"name": "resources_memory_limit",
"type": "str",
"title": "Memory limit",
"required": false,
"default": "512Mi",
"config": {
"placeholder": "512Mi"
}
},
{
"name": "resources_memory_request",
"type": "str",
"title": "Memory request",
"required": false,
"default": "128Mi",
"config": {
"placeholder": "128Mi"
}
}
]
}
]
}