タグ

2022年6月24日のブックマーク (2件)

  • CUE言語(cuelang)に入門しよう

    Abstruct 記事においては、The CUE Configuration Languageを用いて設定ファイルを記述することはどのようなメリットがあるのか。また、どのような使い方が想定されるのかについて議論する。 私は、実際の開発現場において、各マイクロサービスチームがKubernetesのManifestを生成するテンプレートとして活用している。 そのため、KubernetesのManifestをcuelangを用いて記述している。(この件に関する記事は現在執筆中だ。) その経験から、CUE言語がどのような言語であるかについてここで述べることにする。 Keyword: CUE, cuelang, configuration, 設定記述言語, JSON, YAML, Kubernetes, manifest Introduction あなたは普段どんな設定記述言語を利用しているだろう

    CUE言語(cuelang)に入門しよう
  • スレッドセーフなテスト用の時間を固定するライブラリを作った - tenntenn.dev

    はじめに time.Now関数を用いたコードをテストする場合、テスト対象のコードに次のような変更を加える必要があります。 引数に現在時刻を渡す パッケージ変数やフィールドなどに現在時刻を返す関数やインタフェースを設定する context.WithValue関数でコンテキストに現在時刻を設ける どの方法を用いてもプロジェクトの初期から考慮する必要があります。途中で変更するとなると修正が箇所を漏れなく探し出す必要があります。また、パッケージ変数に現在時刻を返す関数を設定した場合、テストを並列に実行することを諦める必要が出てくるでしょう。 このような課題を解決するために、testtimeというライブラリを作成しました。 テストの並列実行と時刻の固定 次のようにパッケージ変数を使ってtime.Now関数のラッパーの挙動を変えてテストする手法があります。 var nowFunc func() tim