使用命令,我可以添加如下标签
PATCH /api/v1/namespaces/{namespace}/pods/{name}
我怎么能从kubernetes API那样做?
我猜它可以通过 PATCH /api/v1/namespaces/{namespace}/pods/{name}
这是pod.json
kubectl label pod POD_NAME KEY1=VALUE1
Run Code Online (Sandbox Code Playgroud)
我尝试了以下命令
{
"apiVersion": "v1",
"kind": "Pod",
"metadata": {
"labels": {
"key1": "value1"
}
}
}
Run Code Online (Sandbox Code Playgroud)
它回来了
KUBE_TOKEN=$(</var/run/secrets/kubernetes.io/serviceaccount/token)
curl --request PATCH --insecure \
--header "Authorization: Bearer $KUBE_TOKEN" \
--data "$(cat pod.json)" \
https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_PORT_443_TCP_PORT/api/v1/namespaces/$POD_NAMESPACE/pods/$POD_NAME
Run Code Online (Sandbox Code Playgroud)
将content-type设置为application/json-patch+json并以http://jsonpatch.org格式指定补丁.
$ cat > patch.json <<EOF
[
{
"op": "add", "path": "/metadata/labels/hello", "value": "world"
}
]
EOF
$ curl --request PATCH --data "$(cat patch.json)" -H "Content-Type:application/json-patch+json" https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_PORT_443_TCP_PORT/api/v1/namespaces/$POD_NAMESPACE/pods/$POD_NAME
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6255 次 |
| 最近记录: |