この記事は、連載「つきなみGo」の2回目の記事です。 CUEはデータの表現やスキーマ定義やバリデーションなどを行うことができる言語です。元々Google社内で、Borg(現在のKubernetesの前身となったGoogleの社内システム)の設定に使用するために開発された言語が前身となっており、現在はオープンソースとして開発が進んでいる言語です[1]。 CUEは現在まだv0.4.3とマイナーバージョンではありますが、すでにistioにおいてProtobufからOpenAPIを生成する部分で使用されていたり、CI/CDの構築に使用するDaggerというツールの設定ファイルとして採用されています。 弊社(メルカリ)でもCUEをKubernetesなどを含むインフラの抽象化に使用しています(紹介記事①、紹介記事②)。 また、CUEはGoと親和性が高く、GoからCUEへの変換や、CUEの定義をG
![CUEによるスキーマやバリデーションのポータビリティ | gihyo.jp](https://cdn-ak-scissors.b.st-hatena.com/image/square/16664b97fb150266dedc77369a46907da99b9385/height=288;version=1;width=512/https%3A%2F%2Fgihyo.jp%2Fassets%2Fimages%2FICON%2F2022%2F1936-go_2.png)