move more standard questions.yaml portions to includes
This commit is contained in:
@@ -24,4 +24,4 @@ name: testbed
|
|||||||
sources:
|
sources:
|
||||||
- https://github.com/Jackett/Jackett
|
- https://github.com/Jackett/Jackett
|
||||||
type: application
|
type: application
|
||||||
version: 7.0.14
|
version: 7.0.15
|
||||||
|
|||||||
@@ -1,26 +1,4 @@
|
|||||||
groups:
|
# Include{groups}
|
||||||
- name: "Container Image"
|
|
||||||
description: "Image to be used for container"
|
|
||||||
- name: "Controller"
|
|
||||||
description: "Configure workload deployment"
|
|
||||||
- name: "Container Configuration"
|
|
||||||
description: "additional container configuration"
|
|
||||||
- name: "App Configuration"
|
|
||||||
description: "App specific config options"
|
|
||||||
- name: "Networking and Services"
|
|
||||||
description: "Configure Network and Services for container"
|
|
||||||
- name: "Storage and Persistence"
|
|
||||||
description: "Persist and share data that is separate from the container"
|
|
||||||
- name: "Ingress"
|
|
||||||
description: "Ingress Configuration"
|
|
||||||
- name: "Security and Permissions"
|
|
||||||
description: "Configure security context and permissions"
|
|
||||||
- name: "Resources and Devices"
|
|
||||||
description: "Specify resources/devices to be allocated to workload"
|
|
||||||
- name: "Addons"
|
|
||||||
description: "Addon Configuration"
|
|
||||||
- name: "Advanced"
|
|
||||||
description: "Advanced Configuration"
|
|
||||||
portals:
|
portals:
|
||||||
web_portal:
|
web_portal:
|
||||||
protocols:
|
protocols:
|
||||||
@@ -86,70 +64,7 @@ questions:
|
|||||||
description: "RollingUpdate: Create new pods and then kill old ones"
|
description: "RollingUpdate: Create new pods and then kill old ones"
|
||||||
- value: "OnDelete"
|
- value: "OnDelete"
|
||||||
description: "(Legacy) OnDelete: ignore .spec.template changes"
|
description: "(Legacy) OnDelete: ignore .spec.template changes"
|
||||||
- variable: advanced
|
# Include{controllerExpert}
|
||||||
label: "Show Expert Configuration Options"
|
|
||||||
schema:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
show_subquestions_if: true
|
|
||||||
subquestions:
|
|
||||||
- variable: extraArgs
|
|
||||||
label: "Extra Args"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: argItem
|
|
||||||
label: "Arg"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: labelsList
|
|
||||||
label: "Controller Labels"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: labelItem
|
|
||||||
label: "Label"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: annotationsList
|
|
||||||
label: " Controller Annotations"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: annotationItem
|
|
||||||
label: "Label"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
|
|
||||||
- variable: env
|
- variable: env
|
||||||
group: "Container Configuration"
|
group: "Container Configuration"
|
||||||
@@ -171,88 +86,7 @@ questions:
|
|||||||
type: string
|
type: string
|
||||||
default: "002"
|
default: "002"
|
||||||
|
|
||||||
# Configure Enviroment Variables
|
# Include{containerConfig}
|
||||||
- variable: envList
|
|
||||||
label: "Image environment"
|
|
||||||
group: "Container Configuration"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: envItem
|
|
||||||
label: "Environment Variable"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
|
|
||||||
- variable: expertpodconf
|
|
||||||
group: "Container Configuration"
|
|
||||||
label: "Show Expert Config"
|
|
||||||
schema:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
show_subquestions_if: true
|
|
||||||
subquestions:
|
|
||||||
- variable: termination
|
|
||||||
group: "Container Configuration"
|
|
||||||
label: "Termination settings"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: gracePeriodSeconds
|
|
||||||
label: "Grace Period Seconds"
|
|
||||||
schema:
|
|
||||||
type: int
|
|
||||||
default: 10
|
|
||||||
- variable: podLabelsList
|
|
||||||
group: "Container Configuration"
|
|
||||||
label: "Pod Labels"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: podLabelItem
|
|
||||||
label: "Label"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
|
|
||||||
- variable: podAnnotationsList
|
|
||||||
group: "Container Configuration"
|
|
||||||
label: "Pod Annotations"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: podAnnotationItem
|
|
||||||
label: "Label"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
|
|
||||||
- variable: service
|
- variable: service
|
||||||
group: "Networking and Services"
|
group: "Networking and Services"
|
||||||
@@ -427,117 +261,7 @@ questions:
|
|||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
|
||||||
|
# Include{serviceList}
|
||||||
|
|
||||||
- variable: serviceList
|
|
||||||
label: "Add Manual Custom Services"
|
|
||||||
group: "Networking and Services"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: serviceListEntry
|
|
||||||
label: "Custom Service"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: enabled
|
|
||||||
label: "Enable the service"
|
|
||||||
schema:
|
|
||||||
type: boolean
|
|
||||||
default: true
|
|
||||||
hidden: true
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
- variable: type
|
|
||||||
label: "Service Type"
|
|
||||||
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: "NodePort"
|
|
||||||
enum:
|
|
||||||
- value: "NodePort"
|
|
||||||
description: "NodePort"
|
|
||||||
- value: "ClusterIP"
|
|
||||||
description: "ClusterIP"
|
|
||||||
- value: "LoadBalancer"
|
|
||||||
description: "LoadBalancer"
|
|
||||||
- variable: loadBalancerIP
|
|
||||||
label: "LoadBalancer IP"
|
|
||||||
description: "LoadBalancerIP"
|
|
||||||
schema:
|
|
||||||
show_if: [["type", "=", "LoadBalancer"]]
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
- variable: externalIPs
|
|
||||||
label: "External IP's"
|
|
||||||
description: "External IP's"
|
|
||||||
schema:
|
|
||||||
show_if: [["type", "=", "LoadBalancer"]]
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: externalIP
|
|
||||||
label: "External IP"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: portsList
|
|
||||||
label: "Additional Service Ports"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: portsListEntry
|
|
||||||
label: "Custom ports"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: enabled
|
|
||||||
label: "Enable the port"
|
|
||||||
schema:
|
|
||||||
type: boolean
|
|
||||||
default: true
|
|
||||||
hidden: true
|
|
||||||
- variable: name
|
|
||||||
label: "Port Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
- variable: protocol
|
|
||||||
label: "Port Type"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: "TCP"
|
|
||||||
enum:
|
|
||||||
- value: HTTP
|
|
||||||
description: "HTTP"
|
|
||||||
- value: "HTTPS"
|
|
||||||
description: "HTTPS"
|
|
||||||
- value: TCP
|
|
||||||
description: "TCP"
|
|
||||||
- value: "UDP"
|
|
||||||
description: "UDP"
|
|
||||||
- variable: targetPort
|
|
||||||
label: "Target Port"
|
|
||||||
description: "This port exposes the container port on the service"
|
|
||||||
schema:
|
|
||||||
type: int
|
|
||||||
required: true
|
|
||||||
- variable: port
|
|
||||||
label: "Container Port"
|
|
||||||
schema:
|
|
||||||
type: int
|
|
||||||
required: true
|
|
||||||
- variable: nodePort
|
|
||||||
label: "Node Port (Optional)"
|
|
||||||
description: "This port gets exposed to the node. Only considered when service type is NodePort"
|
|
||||||
schema:
|
|
||||||
type: int
|
|
||||||
min: 9000
|
|
||||||
max: 65535
|
|
||||||
|
|
||||||
- variable: persistence
|
- variable: persistence
|
||||||
label: "Integrated Persistent Storage"
|
label: "Integrated Persistent Storage"
|
||||||
@@ -701,168 +425,8 @@ questions:
|
|||||||
label: "Value"
|
label: "Value"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
- variable: persistenceList
|
|
||||||
label: "Additional app storage"
|
# Include{persistenceList}
|
||||||
group: "Storage and Persistence"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: persistenceListEntry
|
|
||||||
label: "Custom Storage"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: enabled
|
|
||||||
label: "Enable the storage"
|
|
||||||
schema:
|
|
||||||
type: boolean
|
|
||||||
default: true
|
|
||||||
hidden: true
|
|
||||||
- variable: advanced
|
|
||||||
label: "Show Advanced Options"
|
|
||||||
schema:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
show_subquestions_if: true
|
|
||||||
subquestions:
|
|
||||||
- variable: labelsList
|
|
||||||
label: "Labels"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: labelItem
|
|
||||||
label: "Label"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: annotationsList
|
|
||||||
label: "Annotations"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: annotationItem
|
|
||||||
label: "Label"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: type
|
|
||||||
label: "(Advanced) Type of Storage"
|
|
||||||
description: "Sets the persistence type"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: "hostPath"
|
|
||||||
enum:
|
|
||||||
- value: "pvc"
|
|
||||||
description: "pvc"
|
|
||||||
- value: "emptyDir"
|
|
||||||
description: "emptyDir"
|
|
||||||
- value: "hostPath"
|
|
||||||
description: "hostPath"
|
|
||||||
- variable: storageClass
|
|
||||||
label: "(Advanced) storageClass"
|
|
||||||
description: "Warning: Anything other than SCALE-ZFS will break rollback!"
|
|
||||||
schema:
|
|
||||||
show_if: [["type", "=", "pvc"]]
|
|
||||||
type: string
|
|
||||||
default: "SCALE-ZFS"
|
|
||||||
- variable: setPermissions
|
|
||||||
label: "Automatic Permissions"
|
|
||||||
description: "Automatically set permissions on install"
|
|
||||||
schema:
|
|
||||||
show_if: [["type", "=", "hostPath"]]
|
|
||||||
type: boolean
|
|
||||||
default: true
|
|
||||||
- variable: readOnly
|
|
||||||
label: "readOnly"
|
|
||||||
schema:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
- variable: hostPath
|
|
||||||
label: "hostPath"
|
|
||||||
description: "Path inside the container the storage is mounted"
|
|
||||||
schema:
|
|
||||||
show_if: [["type", "=", "hostPath"]]
|
|
||||||
type: hostpath
|
|
||||||
- variable: hostPathType
|
|
||||||
label: "(Advanced) hostPath Type"
|
|
||||||
schema:
|
|
||||||
show_if: [["type", "=", "hostPath"]]
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
enum:
|
|
||||||
- value: ""
|
|
||||||
description: "Default"
|
|
||||||
- value: "DirectoryOrCreate"
|
|
||||||
description: "DirectoryOrCreate"
|
|
||||||
- value: "Directory"
|
|
||||||
description: "Directory"
|
|
||||||
- value: "FileOrCreate"
|
|
||||||
description: "FileOrCreate"
|
|
||||||
- value: "File"
|
|
||||||
description: "File"
|
|
||||||
- value: "Socket"
|
|
||||||
description: "Socket"
|
|
||||||
- value: "CharDevice"
|
|
||||||
description: "CharDevice"
|
|
||||||
- value: "BlockDevice"
|
|
||||||
description: "BlockDevice"
|
|
||||||
- variable: mountPath
|
|
||||||
label: "mountPath"
|
|
||||||
description: "Path inside the container the storage is mounted"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
required: true
|
|
||||||
- variable: medium
|
|
||||||
label: "EmptyDir Medium"
|
|
||||||
schema:
|
|
||||||
show_if: [["type", "=", "emptyDir"]]
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
enum:
|
|
||||||
- value: ""
|
|
||||||
description: "Default"
|
|
||||||
- value: "Memory"
|
|
||||||
description: "Memory"
|
|
||||||
- variable: accessMode
|
|
||||||
label: "(Advanced) Access Mode"
|
|
||||||
description: "Allow or disallow multiple PVC's writhing to the same PV"
|
|
||||||
schema:
|
|
||||||
show_if: [["type", "=", "pvc"]]
|
|
||||||
type: string
|
|
||||||
default: "ReadWriteOnce"
|
|
||||||
enum:
|
|
||||||
- value: "ReadWriteOnce"
|
|
||||||
description: "ReadWriteOnce"
|
|
||||||
- value: "ReadOnlyMany"
|
|
||||||
description: "ReadOnlyMany"
|
|
||||||
- value: "ReadWriteMany"
|
|
||||||
description: "ReadWriteMany"
|
|
||||||
- variable: size
|
|
||||||
label: "Size quotum of storage"
|
|
||||||
schema:
|
|
||||||
show_if: [["type", "=", "pvc"]]
|
|
||||||
type: string
|
|
||||||
default: "100Gi"
|
|
||||||
|
|
||||||
- variable: ingress
|
- variable: ingress
|
||||||
label: ""
|
label: ""
|
||||||
@@ -1022,175 +586,7 @@ questions:
|
|||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
|
||||||
- variable: ingressList
|
# Include{ingressList}
|
||||||
label: "Add Manual Custom Ingresses"
|
|
||||||
group: "Ingress"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: ingressListEntry
|
|
||||||
label: "Custom Ingress"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: enabled
|
|
||||||
label: "Enable Ingress"
|
|
||||||
schema:
|
|
||||||
type: boolean
|
|
||||||
default: true
|
|
||||||
hidden: true
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
- variable: ingressClassName
|
|
||||||
label: "IngressClass Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
- variable: labelsList
|
|
||||||
label: "Labels"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: labelItem
|
|
||||||
label: "Label"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: annotationsList
|
|
||||||
label: "Annotations"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: annotationItem
|
|
||||||
label: "Label"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: value
|
|
||||||
label: "Value"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
- variable: hosts
|
|
||||||
label: "Hosts"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: hostEntry
|
|
||||||
label: "Host"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: host
|
|
||||||
label: "HostName"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
required: true
|
|
||||||
- variable: paths
|
|
||||||
label: "Paths"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: pathEntry
|
|
||||||
label: "Host"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: path
|
|
||||||
label: "path"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
required: true
|
|
||||||
default: "/"
|
|
||||||
- variable: pathType
|
|
||||||
label: "pathType"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
required: true
|
|
||||||
default: "Prefix"
|
|
||||||
- variable: service
|
|
||||||
label: "Linked Service"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: name
|
|
||||||
label: "Service Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
- variable: port
|
|
||||||
label: "Service Port"
|
|
||||||
schema:
|
|
||||||
type: int
|
|
||||||
- variable: tls
|
|
||||||
label: "TLS-Settings"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: tlsEntry
|
|
||||||
label: "Host"
|
|
||||||
schema:
|
|
||||||
type: dict
|
|
||||||
attrs:
|
|
||||||
- variable: hosts
|
|
||||||
label: "Certificate Hosts"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: host
|
|
||||||
label: "Host"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
required: true
|
|
||||||
- variable: scaleCert
|
|
||||||
label: "Select TrueNAS SCALE Certificate"
|
|
||||||
schema:
|
|
||||||
type: int
|
|
||||||
$ref:
|
|
||||||
- "definitions/certificate"
|
|
||||||
- variable: entrypoint
|
|
||||||
label: "Traefik Entrypoint"
|
|
||||||
description: "Entrypoint used by Traefik when using Traefik as Ingress Provider"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: "websecure"
|
|
||||||
required: true
|
|
||||||
- variable: middlewares
|
|
||||||
label: "Traefik Middlewares"
|
|
||||||
description: "Add previously created Traefik Middlewares to this Ingress"
|
|
||||||
schema:
|
|
||||||
type: list
|
|
||||||
default: []
|
|
||||||
items:
|
|
||||||
- variable: name
|
|
||||||
label: "Name"
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: ""
|
|
||||||
required: true
|
|
||||||
|
|
||||||
|
|
||||||
- variable: securityContext
|
- variable: securityContext
|
||||||
@@ -1345,4 +741,4 @@ questions:
|
|||||||
type: int
|
type: int
|
||||||
default: 80
|
default: 80
|
||||||
|
|
||||||
# Include{VPN}
|
# Include{addons}
|
||||||
|
|||||||
@@ -0,0 +1,81 @@
|
|||||||
|
- variable: envList
|
||||||
|
label: "Image environment"
|
||||||
|
group: "Container Configuration"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: envItem
|
||||||
|
label: "Environment Variable"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
|
||||||
|
- variable: expertpodconf
|
||||||
|
group: "Container Configuration"
|
||||||
|
label: "Show Expert Config"
|
||||||
|
schema:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
show_subquestions_if: true
|
||||||
|
subquestions:
|
||||||
|
- variable: termination
|
||||||
|
group: "Container Configuration"
|
||||||
|
label: "Termination settings"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: gracePeriodSeconds
|
||||||
|
label: "Grace Period Seconds"
|
||||||
|
schema:
|
||||||
|
type: int
|
||||||
|
default: 10
|
||||||
|
- variable: podLabelsList
|
||||||
|
group: "Container Configuration"
|
||||||
|
label: "Pod Labels"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: podLabelItem
|
||||||
|
label: "Label"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
|
||||||
|
- variable: podAnnotationsList
|
||||||
|
group: "Container Configuration"
|
||||||
|
label: "Pod Annotations"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: podAnnotationItem
|
||||||
|
label: "Label"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
@@ -0,0 +1,64 @@
|
|||||||
|
- variable: advanced
|
||||||
|
label: "Show Expert Configuration Options"
|
||||||
|
schema:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
show_subquestions_if: true
|
||||||
|
subquestions:
|
||||||
|
- variable: extraArgs
|
||||||
|
label: "Extra Args"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: argItem
|
||||||
|
label: "Arg"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: labelsList
|
||||||
|
label: "Controller Labels"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: labelItem
|
||||||
|
label: "Label"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: annotationsList
|
||||||
|
label: " Controller Annotations"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: annotationItem
|
||||||
|
label: "Label"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
groups:
|
||||||
|
- name: "Container Image"
|
||||||
|
description: "Image to be used for container"
|
||||||
|
- name: "Controller"
|
||||||
|
description: "Configure workload deployment"
|
||||||
|
- name: "Container Configuration"
|
||||||
|
description: "additional container configuration"
|
||||||
|
- name: "App Configuration"
|
||||||
|
description: "App specific config options"
|
||||||
|
- name: "Networking and Services"
|
||||||
|
description: "Configure Network and Services for container"
|
||||||
|
- name: "Storage and Persistence"
|
||||||
|
description: "Persist and share data that is separate from the container"
|
||||||
|
- name: "Ingress"
|
||||||
|
description: "Ingress Configuration"
|
||||||
|
- name: "Security and Permissions"
|
||||||
|
description: "Configure security context and permissions"
|
||||||
|
- name: "Resources and Devices"
|
||||||
|
description: "Specify resources/devices to be allocated to workload"
|
||||||
|
- name: "Addons"
|
||||||
|
description: "Addon Configuration"
|
||||||
|
- name: "Advanced"
|
||||||
|
description: "Advanced Configuration"
|
||||||
@@ -0,0 +1,169 @@
|
|||||||
|
- variable: ingressList
|
||||||
|
label: "Add Manual Custom Ingresses"
|
||||||
|
group: "Ingress"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: ingressListEntry
|
||||||
|
label: "Custom Ingress"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: enabled
|
||||||
|
label: "Enable Ingress"
|
||||||
|
schema:
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
hidden: true
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
- variable: ingressClassName
|
||||||
|
label: "IngressClass Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
- variable: labelsList
|
||||||
|
label: "Labels"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: labelItem
|
||||||
|
label: "Label"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: annotationsList
|
||||||
|
label: "Annotations"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: annotationItem
|
||||||
|
label: "Label"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: hosts
|
||||||
|
label: "Hosts"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: hostEntry
|
||||||
|
label: "Host"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: host
|
||||||
|
label: "HostName"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
required: true
|
||||||
|
- variable: paths
|
||||||
|
label: "Paths"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: pathEntry
|
||||||
|
label: "Host"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: path
|
||||||
|
label: "path"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
default: "/"
|
||||||
|
- variable: pathType
|
||||||
|
label: "pathType"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
default: "Prefix"
|
||||||
|
- variable: service
|
||||||
|
label: "Linked Service"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Service Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
- variable: port
|
||||||
|
label: "Service Port"
|
||||||
|
schema:
|
||||||
|
type: int
|
||||||
|
- variable: tls
|
||||||
|
label: "TLS-Settings"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: tlsEntry
|
||||||
|
label: "Host"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: hosts
|
||||||
|
label: "Certificate Hosts"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: host
|
||||||
|
label: "Host"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
required: true
|
||||||
|
- variable: scaleCert
|
||||||
|
label: "Select TrueNAS SCALE Certificate"
|
||||||
|
schema:
|
||||||
|
type: int
|
||||||
|
$ref:
|
||||||
|
- "definitions/certificate"
|
||||||
|
- variable: entrypoint
|
||||||
|
label: "Traefik Entrypoint"
|
||||||
|
description: "Entrypoint used by Traefik when using Traefik as Ingress Provider"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: "websecure"
|
||||||
|
required: true
|
||||||
|
- variable: middlewares
|
||||||
|
label: "Traefik Middlewares"
|
||||||
|
description: "Add previously created Traefik Middlewares to this Ingress"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
required: true
|
||||||
@@ -0,0 +1,162 @@
|
|||||||
|
- variable: persistenceList
|
||||||
|
label: "Additional app storage"
|
||||||
|
group: "Storage and Persistence"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: persistenceListEntry
|
||||||
|
label: "Custom Storage"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: enabled
|
||||||
|
label: "Enable the storage"
|
||||||
|
schema:
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
hidden: true
|
||||||
|
- variable: advanced
|
||||||
|
label: "Show Advanced Options"
|
||||||
|
schema:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
show_subquestions_if: true
|
||||||
|
subquestions:
|
||||||
|
- variable: labelsList
|
||||||
|
label: "Labels"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: labelItem
|
||||||
|
label: "Label"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: annotationsList
|
||||||
|
label: "Annotations"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: annotationItem
|
||||||
|
label: "Label"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: value
|
||||||
|
label: "Value"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: type
|
||||||
|
label: "(Advanced) Type of Storage"
|
||||||
|
description: "Sets the persistence type"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: "hostPath"
|
||||||
|
enum:
|
||||||
|
- value: "pvc"
|
||||||
|
description: "pvc"
|
||||||
|
- value: "emptyDir"
|
||||||
|
description: "emptyDir"
|
||||||
|
- value: "hostPath"
|
||||||
|
description: "hostPath"
|
||||||
|
- variable: storageClass
|
||||||
|
label: "(Advanced) storageClass"
|
||||||
|
description: "Warning: Anything other than SCALE-ZFS will break rollback!"
|
||||||
|
schema:
|
||||||
|
show_if: [["type", "=", "pvc"]]
|
||||||
|
type: string
|
||||||
|
default: "SCALE-ZFS"
|
||||||
|
- variable: setPermissions
|
||||||
|
label: "Automatic Permissions"
|
||||||
|
description: "Automatically set permissions on install"
|
||||||
|
schema:
|
||||||
|
show_if: [["type", "=", "hostPath"]]
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
- variable: readOnly
|
||||||
|
label: "readOnly"
|
||||||
|
schema:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
- variable: hostPath
|
||||||
|
label: "hostPath"
|
||||||
|
description: "Path inside the container the storage is mounted"
|
||||||
|
schema:
|
||||||
|
show_if: [["type", "=", "hostPath"]]
|
||||||
|
type: hostpath
|
||||||
|
- variable: hostPathType
|
||||||
|
label: "(Advanced) hostPath Type"
|
||||||
|
schema:
|
||||||
|
show_if: [["type", "=", "hostPath"]]
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
enum:
|
||||||
|
- value: ""
|
||||||
|
description: "Default"
|
||||||
|
- value: "DirectoryOrCreate"
|
||||||
|
description: "DirectoryOrCreate"
|
||||||
|
- value: "Directory"
|
||||||
|
description: "Directory"
|
||||||
|
- value: "FileOrCreate"
|
||||||
|
description: "FileOrCreate"
|
||||||
|
- value: "File"
|
||||||
|
description: "File"
|
||||||
|
- value: "Socket"
|
||||||
|
description: "Socket"
|
||||||
|
- value: "CharDevice"
|
||||||
|
description: "CharDevice"
|
||||||
|
- value: "BlockDevice"
|
||||||
|
description: "BlockDevice"
|
||||||
|
- variable: mountPath
|
||||||
|
label: "mountPath"
|
||||||
|
description: "Path inside the container the storage is mounted"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
required: true
|
||||||
|
- variable: medium
|
||||||
|
label: "EmptyDir Medium"
|
||||||
|
schema:
|
||||||
|
show_if: [["type", "=", "emptyDir"]]
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
enum:
|
||||||
|
- value: ""
|
||||||
|
description: "Default"
|
||||||
|
- value: "Memory"
|
||||||
|
description: "Memory"
|
||||||
|
- variable: accessMode
|
||||||
|
label: "(Advanced) Access Mode"
|
||||||
|
description: "Allow or disallow multiple PVC's writhing to the same PV"
|
||||||
|
schema:
|
||||||
|
show_if: [["type", "=", "pvc"]]
|
||||||
|
type: string
|
||||||
|
default: "ReadWriteOnce"
|
||||||
|
enum:
|
||||||
|
- value: "ReadWriteOnce"
|
||||||
|
description: "ReadWriteOnce"
|
||||||
|
- value: "ReadOnlyMany"
|
||||||
|
description: "ReadOnlyMany"
|
||||||
|
- value: "ReadWriteMany"
|
||||||
|
description: "ReadWriteMany"
|
||||||
|
- variable: size
|
||||||
|
label: "Size quotum of storage"
|
||||||
|
schema:
|
||||||
|
show_if: [["type", "=", "pvc"]]
|
||||||
|
type: string
|
||||||
|
default: "100Gi"
|
||||||
@@ -0,0 +1,109 @@
|
|||||||
|
- variable: serviceList
|
||||||
|
label: "Add Manual Custom Services"
|
||||||
|
group: "Networking and Services"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: serviceListEntry
|
||||||
|
label: "Custom Service"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: enabled
|
||||||
|
label: "Enable the service"
|
||||||
|
schema:
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
hidden: true
|
||||||
|
- variable: name
|
||||||
|
label: "Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
- variable: type
|
||||||
|
label: "Service Type"
|
||||||
|
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: "NodePort"
|
||||||
|
enum:
|
||||||
|
- value: "NodePort"
|
||||||
|
description: "NodePort"
|
||||||
|
- value: "ClusterIP"
|
||||||
|
description: "ClusterIP"
|
||||||
|
- value: "LoadBalancer"
|
||||||
|
description: "LoadBalancer"
|
||||||
|
- variable: loadBalancerIP
|
||||||
|
label: "LoadBalancer IP"
|
||||||
|
description: "LoadBalancerIP"
|
||||||
|
schema:
|
||||||
|
show_if: [["type", "=", "LoadBalancer"]]
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
- variable: externalIPs
|
||||||
|
label: "External IP's"
|
||||||
|
description: "External IP's"
|
||||||
|
schema:
|
||||||
|
show_if: [["type", "=", "LoadBalancer"]]
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: externalIP
|
||||||
|
label: "External IP"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- variable: portsList
|
||||||
|
label: "Additional Service Ports"
|
||||||
|
schema:
|
||||||
|
type: list
|
||||||
|
default: []
|
||||||
|
items:
|
||||||
|
- variable: portsListEntry
|
||||||
|
label: "Custom ports"
|
||||||
|
schema:
|
||||||
|
type: dict
|
||||||
|
attrs:
|
||||||
|
- variable: enabled
|
||||||
|
label: "Enable the port"
|
||||||
|
schema:
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
hidden: true
|
||||||
|
- variable: name
|
||||||
|
label: "Port Name"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
- variable: protocol
|
||||||
|
label: "Port Type"
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: "TCP"
|
||||||
|
enum:
|
||||||
|
- value: HTTP
|
||||||
|
description: "HTTP"
|
||||||
|
- value: "HTTPS"
|
||||||
|
description: "HTTPS"
|
||||||
|
- value: TCP
|
||||||
|
description: "TCP"
|
||||||
|
- value: "UDP"
|
||||||
|
description: "UDP"
|
||||||
|
- variable: targetPort
|
||||||
|
label: "Target Port"
|
||||||
|
description: "This port exposes the container port on the service"
|
||||||
|
schema:
|
||||||
|
type: int
|
||||||
|
required: true
|
||||||
|
- variable: port
|
||||||
|
label: "Container Port"
|
||||||
|
schema:
|
||||||
|
type: int
|
||||||
|
required: true
|
||||||
|
- variable: nodePort
|
||||||
|
label: "Node Port (Optional)"
|
||||||
|
description: "This port gets exposed to the node. Only considered when service type is NodePort"
|
||||||
|
schema:
|
||||||
|
type: int
|
||||||
|
min: 9000
|
||||||
|
max: 65535
|
||||||
+34
-3
@@ -125,10 +125,41 @@ include_questions(){
|
|||||||
local chartversion="$4"
|
local chartversion="$4"
|
||||||
local target="catalog/${train}/${chartname}/${chartversion}"
|
local target="catalog/${train}/${chartname}/${chartversion}"
|
||||||
echo "Including standardised questions.yaml includes for: ${chartname}"
|
echo "Including standardised questions.yaml includes for: ${chartname}"
|
||||||
# Replace # Include{VPN} with the standard VPN codesnippet
|
|
||||||
|
# Replace # Include{groups} with the standard groups codesnippet
|
||||||
awk 'NR==FNR { a[n++]=$0; next }
|
awk 'NR==FNR { a[n++]=$0; next }
|
||||||
/# Include{VPN}/ { for (i=0;i<n;++i) print a[i]; next }
|
/# Include{groups}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||||
1' templates/questions/vpn.yaml ${target}/questions.yaml > tmp && mv tmp ${target}/questions.yaml
|
1' templates/questions/groups.yaml ${target}/questions.yaml > tmp && mv tmp ${target}/questions.yaml
|
||||||
|
|
||||||
|
# Replace # Include{controllerExpert} with the standard VPN codesnippet
|
||||||
|
awk 'NR==FNR { a[n++]=$0; next }
|
||||||
|
/# Include{controllerExpert}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||||
|
1' templates/questions/controllerExpert.yaml ${target}/questions.yaml > tmp && mv tmp ${target}/questions.yaml
|
||||||
|
|
||||||
|
# Replace # Include{containerConfig} with the standard VPN codesnippet
|
||||||
|
awk 'NR==FNR { a[n++]=$0; next }
|
||||||
|
/# Include{containerConfig}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||||
|
1' templates/questions/containerConfig.yaml ${target}/questions.yaml > tmp && mv tmp ${target}/questions.yaml
|
||||||
|
|
||||||
|
# Replace # Include{serviceList} with the standard VPN codesnippet
|
||||||
|
awk 'NR==FNR { a[n++]=$0; next }
|
||||||
|
/# Include{serviceList}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||||
|
1' templates/questions/serviceList.yaml ${target}/questions.yaml > tmp && mv tmp ${target}/questions.yaml
|
||||||
|
|
||||||
|
# Replace # Include{persistenceList} with the standard VPN codesnippet
|
||||||
|
awk 'NR==FNR { a[n++]=$0; next }
|
||||||
|
/# Include{persistenceList}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||||
|
1' templates/questions/persistenceList.yaml ${target}/questions.yaml > tmp && mv tmp ${target}/questions.yaml
|
||||||
|
|
||||||
|
# Replace # Include{ingressList} with the standard VPN codesnippet
|
||||||
|
awk 'NR==FNR { a[n++]=$0; next }
|
||||||
|
/# Include{ingressList}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||||
|
1' templates/questions/ingressList.yaml ${target}/questions.yaml > tmp && mv tmp ${target}/questions.yaml
|
||||||
|
|
||||||
|
# Replace # Include{addons} with the standard VPN codesnippet
|
||||||
|
awk 'NR==FNR { a[n++]=$0; next }
|
||||||
|
/# Include{addons}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||||
|
1' templates/questions/addons.yaml ${target}/questions.yaml > tmp && mv tmp ${target}/questions.yaml
|
||||||
}
|
}
|
||||||
|
|
||||||
clean_catalog() {
|
clean_catalog() {
|
||||||
|
|||||||
Reference in New Issue
Block a user