HeadlinesBriefing favicon HeadlinesBriefing.com

YAML क्यों DevOps में सिरदर्द पैदा करता है

Hacker News •
×

एक व्यंग्यात्मक आलोचना DevOps कॉन्फ़िगरेशन मानक के रूप में YAML के खतरों को उजागर करती है।尽管行业采用了Kubernetes,YAML अपने विनिर्देश से परे कोई आधिकारिक दस्तावेज़ नहीं रखता है और विकास के दौरान कोई त्रुटि निपटान लागू नहीं करता है, जिससे रनटाइम विफलताएं होती हैं। मुख्य समस्याएं अस्पष्ट प्रकार पार्सिंग में शामिल हैं: ノルウェーの国コード `NO` はブーリアンのfalseとして解釈され、一方で8進数のように `0666` はYAML 1.1では自動変換されます(1.2では `0o666` に変更)。時間値のように `04:30` は、文字列として明示的に型付けされない限り秒(16200)にシリアルライズされます。バージョン番号 `1.7` と `1.70` は同じ浮動小数点数としてパースされ、セマンティックバージョニングを壊します。CIパイプラインは、8文字のGit SHA がすべて数字であるときに不安定になり、型付きパーサーがそれらを整数として誤解釈します。セキュリティリスクは、RubyPHPSwagger、および PyYAML の逆シリアル化の脆弱性を通じて存在します。著者はYAMLをJSONおよびINIと不利に比較し、その唯一の利点はコメントとわずかな可読性であると指摘しています。この記事は、Azure DevOpsCircleCI、および仮想の将来のシステム間でのCI構文の不一致の例で締めくくられ、断片化を強調しています。