agentikube/internal/manifest/templates/sandbox-template.yaml.tmpl
2026-02-07 14:39:14 -05:00

66 lines
2 KiB
Cheetah

apiVersion: extensions.agents.x-k8s.io/v1alpha1
kind: SandboxTemplate
metadata:
name: sandbox-template
namespace: {{ .Namespace }}
spec:
template:
spec:
containers:
- name: sandbox
image: {{ .Sandbox.Image }}
ports:
{{- range .Sandbox.Ports }}
- containerPort: {{ . }}
{{- end }}
resources:
requests:
cpu: {{ .Sandbox.Resources.Requests.CPU }}
memory: {{ .Sandbox.Resources.Requests.Memory }}
limits:
cpu: {{ .Sandbox.Resources.Limits.CPU }}
memory: {{ .Sandbox.Resources.Limits.Memory }}
securityContext:
runAsUser: {{ .Sandbox.SecurityContext.RunAsUser }}
runAsGroup: {{ .Sandbox.SecurityContext.RunAsGroup }}
runAsNonRoot: {{ .Sandbox.SecurityContext.RunAsNonRoot }}
env:
{{- range $key, $value := .Sandbox.Env }}
- name: {{ $key }}
value: "{{ $value }}"
{{- end }}
startupProbe:
tcpSocket:
port: {{ .Sandbox.Probes.Port }}
failureThreshold: {{ .Sandbox.Probes.StartupFailureThreshold }}
periodSeconds: 10
readinessProbe:
tcpSocket:
port: {{ .Sandbox.Probes.Port }}
periodSeconds: 10
volumeMounts:
- name: workspace
mountPath: {{ .Sandbox.MountPath }}
volumeClaimTemplates:
- metadata:
name: workspace
spec:
accessModes:
- ReadWriteMany
storageClassName: efs-sandbox
resources:
requests:
storage: "10Gi"
networkPolicy:
egress:
{{- if .Sandbox.NetworkPolicy.EgressAllowAll }}
- to:
- ipBlock:
cidr: 0.0.0.0/0
{{- end }}
ingress:
{{- range .Sandbox.NetworkPolicy.IngressPorts }}
- ports:
- port: {{ . }}
protocol: TCP
{{- end }}