Home >Backend Development >Golang >How to evaluate a field within a scope?
In project management, assessing the scope of the project is a critical task that helps determine the project's feasibility and likelihood of success. Evaluating in-scope sites requires consideration of several factors, including project goals, resource availability, time constraints, cost budgets, and more. During the evaluation process, the project manager needs to conduct detailed analysis and investigation in order to develop reasonable plans and strategies. This article will introduce some methods and techniques for evaluating in-scope fields to help project managers better complete this task.
I'm trying to create a default template for many similar applications where I need to share the same pvc with two or more pods and need to modify the diagram to create instead of pvc( if already exists).
This is the section I have in values.yml regarding volumes:
persistence: enabled: true volumemounts: - name: vol1 mountpath: /opt/vol1 - name: vol2 mountpath: /opt/vol2 volumes: - name: vol1 create: true claimname: claim-vol1 storageclassname: gp2 accessmodes: readwriteonce storage: 1gi - name: vol2 create: false claimname: claim-vol2 storageclassname: gp2 accessmodes: readwriteonce storage: 1gi
This is my pvclaim.yml:
{{- if .Values.persistence.enabled }} {{- if .Values.volumes.create }} {{- range .Values.volumes }} --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: {{ .claimName }} spec: storageClassName: {{ .storageClassName }} accessModes: - {{ .accessModes }} resources: requests: storage: {{ .storage }} {{- end }} {{- end }} {{- end }}
I think I should add the field create
to the scope of volumes
to manage the creation of pvc (assuming in this case pvc vol2
already exists in in other helm charts).
If possible, I would like helm to read the create
field within the range, so that I would get the error:
evaluate fields are created in type interface {}
If you have any other ideas, please feel free to submit them, thank you!
volumes
is an array and it has no create
field.
element has this field. So .values.volumes.create
doesn't make any sense. Within a range
you can use .create
to check the element's create
field, e.g.
{{- range .Values.volumes }} {{if .create}}do something here{{end}} {{- end}}
The above is the detailed content of How to evaluate a field within a scope?. For more information, please follow other related articles on the PHP Chinese website!