今回は「NO PHP DAY」ということで、最近自分が個人的に作っているサービス "opslet" の紹介をしてきました。
きしださんから聞いた「闇Java」は「闇PHP」の比ではなかったです。怖い。
opsletって何?
詳しくは資料を見てもらうとして、誤解を恐れずめちゃくちゃ適当にいうと"CUI版Evernote"です。
いつもサーバにsshでログインして作業していると、何かしらメモを取っておきたい情報ってあるじゃないですか?
そういったときにいつも「ターミナルの画面をマウスで選択してコピー」とかしていて、長い情報になった途端、1画面に収まりきらず「うがー!」となるという不毛なことが続いていました。
そして仕方なくscpを使うかーと思った時に限って、そのサーバがVPN経由だったり多段sshだったり「なんでちゃんと.ssh/configを設定しておかなかったんだ!」と「うががー!」となるという不毛なことが続いていたりしました。
そういったときに、「インターネット上に簡単にPOSTできる先があると便利だな」と、「それならcurlとかで気軽にどんどん飛ばすのに」と思っていて、作ったのがopsletです。
使い方
詳しくは拙い英語で書いたGetting Startedを見てもらうとして、簡単な例を書くと
サーバのネットワーク環境を見たいときってifconfig
を打つじゃないですか
$ ifconfig
その情報をopsletにスタックしたいときは、パイプでつないで
$ ifconfig | bash <(curl -L https://opslet.com/) -s [serverkey]
と実行するだけです。
php.iniとかファイルのスタックなんかは
$ bash <(curl -L https://opslet.com/) -s [serverkey] /etc/php.ini
と実行するだけです。
意外と便利フック機能
opsletはスタックするだけじゃなくて、少ないですがフック機能を持っています(基本的に自分のニーズベースで開発がすすんでいます)。
メールフック
まずはじめに作ったのが、任意のメールアドレスへの転送機能。
あるプロジェクトの報告資料をほぼ自動生成できるようにしたまでは良かったんですが、それがExcelファイルだったんですよね。 さらにVPNの先のさらに先の遠いサーバという。。。
それをopsletを使って、
$ bash <(curl -L https://opslet.com/) -s [serverkey] analyze.xls --to=k1low@101000lab.org
みたいにするだけで、添付ファイルとしてメールで送信ができるようになります。 あとは届いたメールを編集して、クライアントに送付、と。
便利ー
チャットフック
次に作ったのがチャットサービスへのフック機能。
最近弊社でもオンラインチャットサービスを選定しはじめています。
個人的にはIdobataが好きです。
選定中なのでプロジェクトごとにチャットサービスが違って混乱しています。
Skypeと違ってオンラインチャットサービスのいいところは、WebHookやAPIを通じていろいろなサービス通知を比較的簡単に設定できることですね。そういった意味ではSkypeは技術者寄りではないなーと思っています。
あ、そういえばChatWorkもAPIの提供を始めましたね。
弊社でもGitHubやSubversionやJenkinsやその他もろもろの通知連携をやってみたりしているのですが、やっぱり通知されるのは便利です。
で、さらに、そこにopsletを連携させることで、「このサーバのPHPのバージョンは4系だった」とか「設定ファイルはこんな感じ」というのを簡単に共有できます。
便利ー
というわけで
結構、「俺得」なサービスなんで、運用はしばらく続けていこうかなと思っています。
ただ、「preview beta」ですので、ご利用は計画的に。要望は @k1LoW に。