脳みそスワップアウト

揮発性なもので。おもにPHPのこととか。

Chef更新とcygwinから使うメモ。

概要 Chefの新バージョンが出ていたので新しく入れることにした。 Windows7 64bit Cygwin 1.7.32 32bit Chef 11.16.0 Windows版 直接関係はないけどVagrant, VirtualBoxもWindows版

composer dumpautoload

autoload関連の定義ファイルを最新にする。 composer.jsonでautoload定義を更新した場合などに実行する必要がある。 名前から想像しづらくてすぐ忘れる。 composerのバージョンにもよるが、以下のようなautoload関連のファイルが対象。 vendor/autoload.php …

PHPでSoap Client

PHPで久しぶりにSOAP接続することになった。 たまにしか使わなくて忘れていたのでメモ。

DateTimeImmutableにハマる

PHP-5.5から使えるようになった DateTimeImmutable クラス。 DateTimeとの違いは値が不変であること。 DateTimeInterface というinterfaceも追加されていて、 これを使えば従来のDateTimeとも透過的に扱える。 とても素敵なクラスだと思う。 コード内の日付…

sshd on windows (cygwin)

Windowsでsshdを動かす。Win7Pro 64bit。 ここでは Cygwin の openssh を使う。

Vagrant+VirtualBox で CentOS-6.5 のBoxを作るメモ

Vagrant+VirtualBox で CentOS-6.5 のBoxを作るメモ CentOS-6.5のboxを作ることになったが、6.4のときのメモを参考にした。 6.6の時にもまた参考にするだろうから残しておく。 2014/05/30。

Cygwin on Vagrant + chef-solo + Berkshelf インストール編

Cygwinが絡むと毎回色々悩んでいるのでメモ。Windows7 64bit Cygwin 1.7.25 32bit Vagrant 1.6.2 Windows版 VirtualBox 4.3.12.r93733 Windows版 Chef 11.8.0 Windows版 Berkshelf 2.0.16 Windows版Chefは元々入っていたのを使うので少し古め。 Berkshelfは…

Windows + Cygwin SSHD の環境変数問題

リモートにWindows + Cygwin SSHD環境がある。ここにssh接続して作業を行っているのだけど、 ssh経由でシェルを立ち上げると、Windowsの環境変数が一部しか引き継がれない。 これにより、一部ツールが動作しない事がある。(今回はBerkshelfで、NUMBER_OF_PRO…

ssh-agentとkeychain

手元のPC(cygwin)→リモート 手元のPCはどうせ電源を切るわけだし、ssh-agentが永遠に常駐してもいいと考えているので、 keychainを使っている。 keychain source ~/.keychain/$HOSTNAME-sh ssh-addこれでssh-agentが起動して鍵も読み込まれた状態になってい…

fuelphpをcomposerでインストール

fuelphpをcomposerでインストール業務で少し使っていたのだけれど、 近頃のコンポネント志向なframeworkなら、できることならライブラリ群をcomposerで管理したい。こちらの記事を参考に試してみたところ FuelPHP をもっと Composer で使う | chatii-log Web…

OCP(Open-Closed Principle)

the Open-Closed Principle.拡張については開かれている(open)が、 修正については閉じられている(close)、べきだという設計思想。既存のクラスを修正せずに拡張できるようにせよ。

その場限りのインスタンス

PHP-5.4から、こんな書き方ができるようになった。 インスタンスを変数に格納せずにメソッドを呼べる。 (new ClassName)->someMethod(); PHP-5.3以前はこのように一旦変数に格納する必要があり、面倒だった。 $obj = new ClassName(); $obj->someMethod(); …

PDTでよく使うショートカット

実行系 Alt+Shift+X H php実行 Alt+Shift+D H phpデバッグ Alt+Shift+X Q Ant実行 検索系 Ctrl+Shift+R クラス検索 Ctrl+J インクリメンタルサーチ Makegood Alt+M C コンテキストをテスト Alt+M F ファイルをテスト Alt+M R 直前のテストを再実行 エディタ …

命名メモ

英語の弱い自分のための命名に関するメモ decide(でぃさいど) 決心する。 複数の候補の中からひとつを選定する場合にいいかも。 candidate(きゃんでぃでいと) 候補 formula(ふぉーみゅら) 決まり文句。公式。 refine(りふぁいん) 洗練、改良。

エクスプローラの右クリックからcmd.exe/mintty起動

とあるディレクトリをshellで開きたいことがある。レジストリの以下のキーにREG_SZでコマンドを書けば、 エクスプローラ上でフォルダを右クリックして開くことができる。 HKEY_CLASSES_ROOT/folder/shell/任意の名前/command minttyの例 HKEY_CLASSES_ROOT/f…

64bit環境のWindows7でvimprocをビルド

Windows7 64bit cygwin 1.7.25 64bit GVim 7.4(kaoriya) 64bit vimproc 7.0 1. cygwinにmingwのgccを入れておく (mingw64-x86_64-gcc)2. make_mingw64.mak 内の gcc を mingwのgccに書き換える $ cd ~/.vim/bundle/vimproc $ diff -u0 make_mingw64.mak.org …

chef-solo 対象サーバの一時ファイル

$HOME/chef-solo/dna.json run_list /tmp/chef-scriptxxxxxxxx-xxxxx-xxxxxxx 実行中のbashやscriptリソース。 `ps -aux | grep chef` で出てくる。 /var/chef/cache/chef-stacktrace.out エラー発生時のStackTrace

cygwin + chef-solo のはまりどころ

SSH鍵のパスはWindows形式である必要がある。 knife solo prepare user@hostname -i "C:\cygwin\home\pen\.ssh\id_rsa" -Vknife solo cook user@hostname -i "C:\cygwin\home\pen\.ssh\id_rsa" \ -l debug nodes/phpci.jsonsudo設定で !requiretty がされて…

ExcelフレンドリなCSVをphpunit/dbunitで使う

phpunit/dbunitで、DBのテストデータをCSVで用意するのはよくやること。いまどきのアプリなら当然 UTF-8。 でも Excel は UTF-8 をまともに読み書きできない。Excel よりも UTF-8 に強いツールはある事はあるのだけども、 やっぱり操作感は Excel には敵わな…

EGitのリポジトリ情報

このファイルに保存される。 workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefsプロジェクト選択>Team>ShareProject>Git Use or create repository in parent folder of projectにチェックを入れて ./.git …

行列変換

SQL

諸々の事情でテーブルが微妙な正規化になっていることがある。 よく見かける例が、ユーザ情報のテーブルに、メアド1、メアド2…といったもの。繰り返し項目が列ベースになっている困ったテーブルとの相互変換のメモ。

履歴付きデータ

SQL

社員の部署移動や、市町村の統廃合など、 あるデータに変更があったが過去の情報も残しておきたい場合によく使うパターン。pkeyを開始日+xxの複合キーにする。 終了日をNOT NULLで定義、継続中のデータはカラムの最大値を設定する。 CREATE TABLE emp ( beg…

KISSの原則

Keep It Simpke, Stupid. (単純にしておけ。馬鹿が。)

Win7でtelnet

C:\Users\aiueo>telnet 192.168.1.203 'telnet' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 あれっ コンパネ>プログラムと機能>Windows機能の有効化または無効化>Telnetクライアント再…

自動起動の設定(chkconfigとsysv-rc-conf)

使い慣れたchkconfigがなにやら失敗する。 [19:32:00 pen@aka init.d]$ chkconfig --list wicd wicd 0:off 1:off 2:on 3:on 4:on 5:on 6:off [19:32:11 pen@aka init.d]$ sudo chkconfig wicd off /sbin/insserv: そのようなファイルやディレクトリはありま…

Xの再起動

firefoxでyoutubeの動画をフルスクリーンにしたら、 LXDEのパネルが消えて戻らなくなった。もうしない。で、Xだけ再起動する手順のメモ。 まず、作業中のファイルを全部保存する。Ctrl + Alt + F1~6 でttyをデスクトップ環境以外に切り替える。 FキーはRunL…

バッテリ情報を出力する

Let's note CF-R5 がWinXPだからそろそろアレで、 スペック的にWin7は厳しいしubuntu-12.04.1を入れてみたのだ。デフォルトのwmでは重くて全然だめだったけど、LXDEにしたらそこそこ動く。 ただ、バッテリの持ちが悪いねぇ。 それで、バッテリの情報はprocか…

bashスクリプトのログに日付をつける(プロセス置換機能)

参考 http://sechiro.hatenablog.com/entry/2013/08/15/bash%E3%81%AE%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E7%BD%AE%E6%8F%9B%E6%A9%9F%E8%83%BD%E3%82%92%E6%B4%BB%E7%94%A8%E3%81%97%E3%81%A6%E3%80%81%E3%82%B7%E3%82%A7%E3%83%AB%E4%BD%9C%E6%A5%AD%E3…

uid, gidをID順にソートして一覧する

サーバ間で uid や gid が揃っていない問題。 あってはいけないことだけど、そんな環境もあるよね。 ユーザID(uid) cat /etc/passwd | awk -F':' '{print $3 " " $1}' | sort -n グループID(gid) cat /etc/group| awk -F':' '{print $3 " " $1}' | sort -n

SendToはいずこへ

今さらながら WinXP から Win7 に乗り換えた。 そして早速こまったりして。 アイコンを右クリックして「送る」でアプリに食わせることのできる便利な機能。元々はEメールとかFAXとかFDに送るためのものだった気がするけど、 頻繁に使うエディタに送るのがも…