[英]How to reuse variables in a kubernetes yaml?
我的 kube.netes yaml 文件中有許多重復值,我想知道是否有一種方法可以將變量存儲在文件中的某個位置,最好是在頂部,以便我可以進一步重復使用
有點像
variables:
- appName: &appname myapp
- buildNumber: &buildno 1.0.23
我可以進一步重復使用
labels:
app: *appname
tags.datadoghq.com/version:*buildno
containers:
- name: *appname
...
image: 123456.com:*buildno
如果可能的話
我知道錨是 yaml 中的一件事我只是找不到關於設置變量的任何東西
您不能在 Kube.netes 清單中執行此操作,因為您需要一個處理器來操作 YAML 文件。 盡管您可以像這樣在同一個 YAML 清單中共享錨點:
---
apiVersion: v1
kind: ConfigMap
metadata:
name: &cmname myconfig
namespace: &namespace default
labels:
name: *cmname
deployedInNamespace: *namespace
data:
config.yaml: |
[myconfig]
example_field=1
這將導致:
apiVersion: v1
data:
config.yaml: |
[myconfig]
example_field=1
kind: ConfigMap
metadata:
creationTimestamp: "2023-01-25T10:06:27Z"
labels:
deployedInNamespace: default
name: myconfig
name: myconfig
namespace: default
resourceVersion: "147712"
uid: 4039cea4-1e64-4d1a-bdff-910d5ff2a485
如您所見,標簽名稱 && deployedInNamespace 具有錨點評估產生的值。
根據您的用例描述,您需要的是 Helm 圖表路徑和清單模板。 然后,您可以利用輔助函數並在需要這些字段時輕松自定義。 根據我的經驗,當您有這樣的用例時,Helm 是通往 go 的途徑,因為當您決定更改其他內容時,它會幫助您自定義清單中的所有內容。
我想有一個類似的問題和答案。 請檢查下面如何在 YAML 文件中重用環境變量?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.