/ jenis bug
Saya pikir itu adalah bug
Apa yang terjadi :
kubectl berhasil memvalidasi file yaml yang berisi data tidak valid (lihat di bawah untuk konten file yaml):
$ kubectl --context=minikube create --dry-run --validate -f invalid.yml
deployment "test" created (dry run)
Namun saat mengeluarkan perintah tanpa validasi, gagal
$ kubectl --context=minikube apply -f invalid.yml
The Deployment "test" is invalid:
* metadata.labels: Invalid value: "£\"+=_+!¹²³€}{{@\"}{@~@:>?|\\|¬`}": a valid label must be an empty string or consist of alphanumeric characters, '-', '_' or '.', and must start and end with an alphanumeric character (e.g. 'MyValue', or 'my_value', or '12345', regex used for validation is '(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?')
* spec.replicas: Invalid value: -100: must be greater than or equal to 0
* spec.selector.matchLabels: Invalid value: "£\"+=_+!¹²³€}{{@\"}{@~@:>?|\\|¬`}": a valid label must be an empty string or consist of alphanumeric characters, '-', '_' or '.', and must start and end with an alphanumeric character (e.g. 'MyValue', or 'my_value', or '12345', regex used for validation is '(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?')
* spec.selector: Invalid value: v1.LabelSelector{MatchLabels:map[string]string{"app":"£\"+=_+!¹²³€}{{@\"}{@~@:>?|\\|¬`}"}, MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: invalid label selector.
Apa yang Anda harapkan terjadi :
kubectl create --dry-run --validate
harus melaporkan bahwa ada kesalahan dalam file yaml
Cara memperbanyaknya (seminimal dan setepat mungkin) :
Simpan yaml di bawah ini dalam file yaml dan terapkan sekali dengan
kubectl create --dry-run --validate -f file.yaml
dan kemudian lakukan dengan nyata
kubectl create -f file.yaml
Minikube bisa digunakan.
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: test
labels:
app: £"+=_+!¹²³€}{{@"}{@~@:>?|\|¬`}
namespace: default
spec:
replicas: -100
revisionHistoryLimit: 2
template:
metadata:
labels:
app: £"+=_+!¹²³€}{{@"}{@~@:>?|\|¬`}
spec:
containers:
- image: £"+=_+!¹²³€}{{@"}{@~@:>?|\|¬`}
name: £"+=_+!¹²³€}{{@"}{@~@:>?|\|¬`}
envFrom:
- secretRef:
name: £"+=_+!¹²³€}{{@"}{@~@:>?|\|¬`}
Ada hal lain yang perlu kami ketahui? :
Lingkungan :
kubectl version
):NAME="Linux Mint"
VERSION="18.3 (Sylvia)"
ID=linuxmint
ID_LIKE=ubuntu
PRETTY_NAME="Linux Mint 18.3"
VERSION_ID="18.3"
VERSION_CODENAME=sylvia
UBUNTU_CODENAME=xenial
Kernel (misalnya uname -a
):
Linux nb 4.13.0-43-generik # 48 ~ 16.04.1-Ubuntu SMP Kam 17 Mei 12:56:46 UTC 2018 x86_64 x86_64 x86_64 GNU / Linux
Instal alat:
/ sig cli
validasi sisi klien tidak lengkap. ini terutama memastikan nama dan jenis bidang di file yaml valid. validasi penuh selalu dilakukan oleh server, dan selalu dapat memberlakukan batasan / batasan tambahan atas validasi sisi klien.
/Menutup
Komentar yang paling membantu
validasi sisi klien tidak lengkap. ini terutama memastikan nama dan jenis bidang di file yaml valid. validasi penuh selalu dilakukan oleh server, dan selalu dapat memberlakukan batasan / batasan tambahan atas validasi sisi klien.