{"title":"OSS \u7248 Spectacles \u3092\u4f7f\u3063\u3066\u3001LookML \u306e data tests \u3084 validation \u306a\u3069\u3092 GitHub Actions \u3067\u7d99\u7d9a\u7684\u306b\u5b9f\u884c\u3055\u305b\u3066\u307f\u305f","description":"\u3053\u3093\u306b\u3061\u306f\u3002\u81ea\u79f0 Looker \u30a8\u30d0\u30f3\u30b8\u30a7\u30ea\u30b9\u30c8\u306e id:masutaka26 \u3067\u3059\u3002 \u4eca\u65e5\u306f Spectacles \u3068\u3044\u3046\u30c4\u30fc\u30eb\u3092\u5c0e\u5165\u3057\u3066\u3001Looker \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u5065\u5168\u6027\u3092\u9ad8\u3081\u3089\u308c\u305f\u8a71\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002 Spectacles \u3068\u306f 4 \u7a2e\u985e\u306e\u30c6\u30b9\u30c8 \u57fa\u672c\u7684\u306a\u632f\u308b\u821e\u3044 \u3069\u306e\u30c6\u30b9\u30c8\u3092\u63a1\u7528\u3057\u3001\u3069\u306e\u3088\u3046\u306a\u8ab2\u984c\u3092\u89e3\u6c7a\u3057\u305f\u306e\u304b SQL validation Assert validation Content validation LookML validation \u3069\u306e\u3088\u3046\u306a GitHub Actions \u306b\u3057\u305f\u306e\u304b CI workflow Schedule workflow \u843d\u3061\u7a42\u62fe\u3044 \u4f5c\u696d\u30d6\u30e9\u30f3\u30c1\u306e\u2026","height":"190","provider_name":"Hatena Blog","image_url":"https://cdn-ak.f.st-hatena.com/images/fotolife/m/masutaka26/20220914/20220914170914.png","published":"2022-09-16 13:00:00","author_url":"https://blog.hatena.ne.jp/masutaka26/","categories":["Looker"],"author_name":"masutaka26","type":"rich","provider_url":"https://hatena.blog","blog_title":"Feedforce Developer Blog","url":"https://developer.feedforce.jp/entry/2022/09/16/130000","width":"100%","blog_url":"https://developer.feedforce.jp/","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fdeveloper.feedforce.jp%2Fentry%2F2022%2F09%2F16%2F130000\" title=\"OSS \u7248 Spectacles \u3092\u4f7f\u3063\u3066\u3001LookML \u306e data tests \u3084 validation \u306a\u3069\u3092 GitHub Actions \u3067\u7d99\u7d9a\u7684\u306b\u5b9f\u884c\u3055\u305b\u3066\u307f\u305f - Feedforce Developer Blog\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","version":"1.0"}