Chef SoloでPebble SDKをセットアップ

Pebble SDK 2.3が出ているのに気づき、Pebble SDKをセットアップする作業をChefで書いてみた。しかしローカルのMacにChef Soloで実行してみるとbashリソースでハマッた。

何故かbashリソースをユーザ権限で実行しようとするとPermission deniedになってしまう。ログをみるとどうもbashのリソースのcode/var/folders/にテンポラリファイルとして書き出してユーザ権限で実行するも、なぜか親ディレクトリがroot権限でしか参照できないディレクトリになっているためエラーになっているように見える。

いろいろ検索して探してみたけど原因も解決方法もわからず当方にくれた。そして僕は考えるのをやめた。bashリソースはrootで動かしてsu usernameしたり、実行したあとchownで所有者をユーザに戻したりすることにした。

結局、Pebble SDKをダウンロードするのにPebbleのサイトにログインしないといけないから完全な自動化するのも諦めた。Downloadsフォルダにファイルがある前提のレシピになっている。そんな中途半端なcookbookでよければ参考までにGitHubにて公開した、これからcookbookやrecipeを増やしていくかも。