This commit is contained in:
Mike McFetridge
2026-07-20 09:23:17 -04:00
parent c1315882da
commit 72272e4006
3179 changed files with 562960 additions and 14 deletions
@@ -0,0 +1,52 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: << resource_name >>
namespace: << namespace >>
spec:
replicas: << replicas >>
selector:
matchLabels:
app: << app_label >>
template:
metadata:
labels:
app: << app_label >>
spec:
<%- if service_account_name %>
serviceAccountName: << service_account_name >>
<%- endif %>
containers:
- name: << container_name >>
image: << image >>
imagePullPolicy: << image_pull_policy >>
<%- if ports_enabled %>
ports:
- containerPort: << container_port >>
protocol: << container_port_protocol >>
<%- if container_port_name %>
name: << container_port_name >>
<%- endif %>
<%- endif %>
<%- if env_literal_enabled or env_fieldref_enabled %>
env:
<%- if env_literal_enabled %>
- name: << env_literal_name >>
value: "<< env_literal_value >>"
<%- endif %>
<%- if env_fieldref_enabled %>
- name: << env_fieldref_name >>
valueFrom:
fieldRef:
fieldPath: << env_fieldref_field_path >>
<%- endif %>
<%- endif %>
<%- if resources_enabled %>
resources:
limits:
cpu: << resources_cpu_limit >>
memory: << resources_memory_limit >>
requests:
cpu: << resources_cpu_request >>
memory: << resources_memory_request >>
<%- endif %>
+276
View File
@@ -0,0 +1,276 @@
{
"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"
}
}
]
}
]
}