Cartonで詰んだっぽい?
- Cartonの仕様上、site_perlになにか入ってるとcpanfile.snapshotが壊れる可能性がある。
- Carton自体を入れるのにいくつかのモジュールがsite_perlに入る。
- それらのモジュールのいずれかがcpanfile.snapshotでrequirementsに入っていると、
carton check
がfail.
で、今回問題になったのがCPAN::Meta::Requirementsなんだけど、これcpanmやcarton経由で入るっぽいのでなんか詰んだっぽい。どうすりゃいいんだ。
carton check
使わない? それしかない気はするが……。
追記: いろいろ試してたらなんかまともに動いたりしてさらに謎。なんなんだ。
ansible_ssh_userはansible_connection=localのときは意味がない
まあ、よく考えるとわかることだけど、ansible_ssh_user
以外にユーザを指定する方法がなかったのでつい引っかかってしまった。
普通ならばansible_connection=local
で実行する場合は、ターミナルでコマンドを叩くので、叩いたユーザの権限で実行されるのは自然なので引っかかることはないだろう。
今回なぜ引っかかってしまったのか。
- Windows上のVagrantでAnsibleでprovision.
- 通常はVagrantのprovisionはansible provisionerがあるのでそれを使えばいいが、Windows上では動かない(らしい)ので、AnsibleをゲストOSに押し込んでVagrant環境構築する - Qiitaを参考に、shell provisionerで実行していた。
- shell provisionerはデフォルトではroot権限でシェルスクリプトを実行する。
- VagrantもAnsibleもログ出力が微妙で、誰で実行しているのかなどは出力してくれない。
- Ansibleは、inventoryの設定に問題があってもエラーにしない。
あたりが原因か。
今後同じようなはまり方をしないためにどうすればいいか。
- よく使われているソフトウェアといえど、特に一般的でない使い方をする場合は、一般的でない問題に引っかかる可能性が高いことを覚悟する。
- もっとログやエラーを出させる。とはいえ今回の場合はログもエラーも役には立たなかったが。
- もっと速い開発環境を! 再実行に時間がかかるのも、問題発見に時間がかかった原因。
難しいね。
追記。inventoryに限らないっぽい。
ちょっと気になったので、playbookやtaskごとでもuserやremote_userを書いて試してみたが、どうもまったく効かないようだ。
ansible_connection=local
自体基本的に使わないようにした方がいいかも。
Firefoxで、POODLE対策としてsecurity.ssl3.*をいじってるとちゃんとTLSに対応したサイトにもつながらなかったりする件
security.ssl3.*
という名前だけど、じっさいにはTLSの設定にも影響しているっぽい。
security.tls.version.min
を1
にすれなどすればPOODLEはとりあえず大丈夫と思われるのでそっちで対応する。というかFirefox 34あたりでそれがデフォルトになってるはず。
詳細はこの辺かな。 The POODLE Attack and the End of SSL 3.0 | Mozilla Security Blog
sedで置換ではなく検索でのデリミタを '/' (スラッシュ) 以外に変更する
置換の場合は、Perlでも受け継がれている、s
の次の文字がデリミタ、になるので、
sed -ne 's/pattern/replace/' file sed -ne 's#pattern#replace#' file
が等価になってまあ問題ないのだが、検索のパターンの場合がよくわからなかった。まさか
sed -ne '/pattern/p' file sed -ne '#pattern#p' file
とするわけにも行かないし。
ググってみたのだがなぜかcutの話が出たり、置換の方についてしか書かれてなかったりばっかりだったので、man sed
するも、ご存知の通りGNU sedのmanはかなり省略されているので参考にならない。
ってのも後から確認すると、「sed デリミタ」でググったトップ10に普通にちゃんと載ってるし、man sed
の方にも載ってたんだけど……。
まあとにかくinfo sed
に詳細があるってことでそっち見てみた。infoはEmacsだからかなり使えなくて困ったけどまあ該当の記述を発見。
sed -ne '\#pattern#p' file
な感じで\
を前置すれば行けるということだった。
何度も書くけどググってもman sed
でもちゃんと読めばまあ載ってるんだけどね。ブログに書くくらいしとけば二度と忘れずに済みそうなんで書いとく。
あと、infoがマジで使いづらくてつらいんで、その辺なんとかしたい。Emacs覚えた方がいいのかね。
Vimでcabbrev使って正規表現にエイリアスつけると便利。
abbrevとか日本人には関係ないよね、とか思ってたらぜんぜんそんなことなかった。
ちょっと面倒なのがabbrevの展開で、/
がiskeyword
に入っちゃってるような環境(helpとか)で、s/alias
とかが展開できない。alias
じゃなくてs/alias
という省略語扱いになっちゃう。
abbrevとして使う分には問題ないんだろうけど、エイリアスとして使うのにはちょっと不便。不便なだけじゃなく、知らないとなにが起こってるかかなりわかりづらい。
アイスクリームがおいしい季節になりました。
おいしいアイスクリームないですかねー。アイスミルクやラクトアイス、ましてや氷菓ではないのがいいです。
まあ、最終的にはおいしければなんでもいいけど。
以下各種アイスの感想。
- MOW
- イチオシ。バニラ、チーズは強烈。ただ、その他のフレーバーはいまいちなもの多し。
- 牧場しぼり
- MOWとは逆に、オーソドックスなものより変わり種の方がおいしい。ちょっと変わったフレーバーでも安定しておいしく仕上げてくる。
- 爽
- 「アイスクリーム」じゃない。すごく普通のバニラ味を、食感でおいしくする技術はすごいと思う。味に深みはなく飽きやすい。が、非常に暑く、アイスクリームを食べる気にならないときにも比較的食べやすい。濃厚系の味は外れないが、爽やか系の味、ヨーグルトやフルーツ系フレーバーは、爽やかさが食感と二重になってしまい、そんなにおいしくない。
- ハーゲンダッツ
- まず高い。おいしいのはおいしい。あまり食べてないからわからん。
- サーティワン
- さすがになかなかおいしいが、紅茶みたいな爽やか系フレーバーさえ無駄に濃厚に仕上げるので、かなり好みが分かれそう。